We may earn an affiliate commission when you visit our partners.
Course image
Manuel Soukup

Updatelog: v1.1 - 05/2023 - see below

In this course you will learn how to build your Nextcloud Server, step by step.

Nextcloud is a private cloud Data Storage solution where you can work simultaneously on your documents, share files, read and write emails, just like dropbox or Google Drive and it is the successor of ownCloud.

Read more

Updatelog: v1.1 - 05/2023 - see below

In this course you will learn how to build your Nextcloud Server, step by step.

Nextcloud is a private cloud Data Storage solution where you can work simultaneously on your documents, share files, read and write emails, just like dropbox or Google Drive and it is the successor of ownCloud.

You can also start video calls and conference meetings and organise your appointment's with calendar and contacts. You can use Kaban style project management and create surveys and much more.  There are plugins available to customize the cloud to your liking and massively increase its features.

The best part: Its completly free of charge.

This course is for beginners in Linux and is very step by step. For every part there is a video and you can check the cheetsheet for reference as well that you can download.

While we set up your cloud, we will touch a lot of topics and you will learn them by just following along.

Get your feet wet in Cloud computing, with your own Suse Linux Server hosting your Nextcloud provisioned on a backbone on the Internet.

You will learn how to choose a good Virtual Private Cloud Server provider. We will look into some examples of providers like DigitalOcean and some Domain Name providers.

If you need more Storage for your data, we will cover Storage Servers and SSD high perfromance Data Storage in the form of Volumes.

We will learn about Server Infrastructure, Virtualization and how to create a Virtual Private Server (VPS) with an Infrastuctre as a Service provider.

You will also learn how to install the LAMP Stack with an Apache Web Server. We will secure the HTTP Connection with Let's Encrypt and your own SSL/TLS Certificate. We will install and utilize the Google Brotli compression.

You will learn how to harden your Apache Server so you learn a few basics of Web Security.

Cloud security is important as well so you will get your fair share of knowledge in Server Security and we will also do some Backup and Recovery of your Data.

We will tune the Nextcloud performance and install Plugins and Apps.

Also we will look into installing of the Nextcloud Clients to sync your data everywhere.

Take back control of your data and your privacy. Selfhost your private cloud on a server you control today.

I will guide you step by step to your own server with your own cloud. If you have questions just use the forum section below the videos. I want everyone of my students to succeed in this course.

Let's learn something new today.

Updatelog:

v1.1 - 05/2023

- Wrote an announcement of the state in regards to PHP8 support in OpenSuse 15.3

- It also includes and upgrade guide that can be followed if you want to try out PHP8. It should be in your inbox.

v1.1 - 06/2022

- Simplified Server install / Updated to work with Suse 15.3

- Nextcloud 24+ support

- Cleard up CheetSheet

- Minor fixes

Enroll now

What's inside

Learning objectives

  • How to create a webserver with paas/iaas technology, that you control with a hands on step by step guide.
  • How to install your own netxcloud server
  • Harden your server against attacks
  • To register and link your own domain to the webserver
  • Secure your server with let's encrypt certificate.
  • Pass the nextcloud security checks with flying colors.
  • Sync your cloud data to any device, anywhere
  • Install add-ons inside nextcloud
  • You are able to deploy a safe and fast private cloud-solution for your friends and family
  • Backup and restore files from a cloud backup
  • How to tune an apache2 server
  • Show more
  • Show less

Syllabus

You will see what you have accomplished after you have taken the course. Also you will learn important bits about the course.

See in action what you can get out of the course and how the self hosted cloud will feel. For a more in depth look check out the video "Nextcloud - what can you do with it?"

Read more

Get an overview of the major learning objectives in this course.

See what functions Nextcloud offers and how to use them.

Get to know your instructor and help to make the course better.

My tips on getting the most out of this course.

Download the important commands we will use throughout the course.

We will talk about the performance your server should have for a performant Nextcloud installation.

What are the important points in choosing a server ? Test your knowledge.

Learn about some good cloud server providers

A feature and price comparison of some cloud storage providers out there.

Are you unsure which cloud provider you should choose ?

TLD providers and what they offer

Some facts and consideration about DynDNS providers

Review of Top Level Domain providers.

Some famous DynDNS providers.

I show you how to buy a server at Hetzner.

I explain how to buy a domain.

Lets get ready to roll! :-)

How to create a IaaS server in the Hetzner control pannel.

A quick overview in the Hetzner control panel-

How to mount a ISO in the Hetzner pannel.

Where to get the SuSE ISO image if your cloud provider does not provide you with a install option.

Choose the correct Role for your server.

Setup the standard partition sheme of your server.

Set the correct time zone for your server.

Why you have to choose a strong root password.

Finish up the installation and deactivate the firewall.

How to boot your encrypted server up.

Learn what happens if you leave our server unsecured on the Internet.

How other people or bots see and find your server.

Overview of SSH and connection methods to our server.

Learn how to use putty.ext in Windows to connect to your server with SSH.

Learn how to use a terminal in Linux or Mac OS to connect to your server with SSH.

Install some basic tools for quality of life

Change the root password to something secure so it cant be hacked!

Change your hostname of your server.

Install Fail2ban to secure your SSH connections against brute force login attempts.

Learn how to generate and use SSH keys so your server is more secure

Learn how to generate and use SSH keys so your server is more secure.

Deactivate password based login to make it very hard to hack your server.

Modify Fail2ban to work with your new SSH port.

Install and setup a firewall for your server

Introduction to knockd

Explanation of the knockd config

Setup firewall for knockd and connect to your server

Write a simple knocking script for Linux and mac.

Setup and connect with knockd on Windows.

Some tipps on how to debug knockd

How to include a bigger secondary volume in your installation and prepare for use with Nextcloud.

Install dependency packages for Nextcloud

Setup a MySQL database for Nextcloud.

Install Nextcloud on your server.

Setup your domain resolution to your server.

Setup the trusted domain in nextcloud config

Configure your apache2 server.

Setup PHP for the use with nextcloud.

Set the default phone region in nextcloud config

Learn how to enable php mem cache.

Setup TLS/SSL encryption for your server.

Setup fail2ban ou your server.

Tune mysql.

Change from Ajax to crontab jobs

Use PHP FPM forts to speed up php loading times

Setup redis cache server for faster file and picture loading.

Setup brotli compression from google.

Learn how to update your Linux server.

Learn how to update your nextcloud.

Here are my solutions for the most common errors you could encounter with your nextcloud installation.

General settings to configure your Nextcloud.

How to create users and groups in nextcloud

How to install more apps in your cloud and increase functionality

Learn how to do a backup of the cloud and transfer it off server.

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Provides a step-by-step guide to building a Nextcloud server, making it accessible for those new to Linux and server administration, while also teaching about cloud computing
Covers essential aspects of server security, including firewalls, SSH hardening, and Fail2ban, which are crucial for protecting self-hosted Nextcloud instances from potential threats
Explores topics like domain registration, SSL/TLS certificate setup with Let's Encrypt, and DNS configuration, which are necessary for making a Nextcloud server accessible and secure over the internet
Uses Suse Linux, which may require learners to familiarize themselves with a specific Linux distribution, potentially posing a barrier for those with experience in other distributions
Teaches LAMP stack installation and configuration, which is a foundational skill for web server management and provides a solid base for further learning in web development and server administration
Features updates for Nextcloud 24+ and OpenSuse 15.3, but learners should be aware that newer versions of both Nextcloud and OpenSuse are available, potentially requiring adjustments to the instructions

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Easy step-by-step guide to self-hosted nextcloud

According to learners, this course provides a highly detailed and easy-to-follow guide for setting up a self-hosted Nextcloud server. Students widely praise the step-by-step instruction, finding it perfect for beginners in Linux and server hosting. Reviewers report the course is comprehensive, covering not just installation but also essential security measures, performance tuning, and backup/recovery. The practical, hands-on nature means learners end up with a working private cloud. The instructor receives high marks for being responsive and providing excellent support in the Q&A, which helps students navigate technical challenges.
Uses OpenSuse Linux distribution.
"The course focuses on OpenSuse Linux, which is a specific choice for this guide."
"Learned a lot about OpenSuse during the setup process following the steps."
"If you're using a different Linux distribution, some commands may vary slightly."
Potential challenges, but support helps.
"I had some minor issues with my setup, but the instructor helped me solve them quickly."
"While the guide is excellent, some sections related to specific distributions or versions might require minor adjustments depending on your environment."
"Setting up a server can be complex, but the instructor's guidance made it manageable."
Build a working Nextcloud server.
"Great course that helps you from scratch build your own nextcloud server."
"The course is very practical and you will have a working Nextcloud server at the end."
"By the end, you will have a functional self-hosted cloud."
Covers security, tuning, backup, and more.
"Also covers security and optimizing."
"The instructor guides you step by step from the basic configuration to more complex topics like security and optimization."
"The course is very well structured, comprehensive, and goes into great detail."
"Covers all necessary steps including domain, SSL, security, and backup."
Q&A is helpful and instructor is active.
"the instructor replies to questions very fast and provides detailed answers."
"The instructor is also very active in the Q&A and provides excellent support."
"I had some minor issues with my setup, but the instructor helped me solve them quickly."
"Instructor is extremely helpful and responds promptly to questions via Q&A."
Easy to follow guide, ideal for beginners.
"very detailed and easy to follow, the instructor explains everything in great detail, perfect for beginners like myself"
"Very detailed explanation, very step-by-step. Good for beginners like me."
"Great course... The lessons are easy to follow and well structured."
"Perfect for beginners in Linux and server hosting. Step by step guide and clear explanations make it easy to follow."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Selfhosted Nextcloud - easy step by step guide with these activities:
Review Linux Command Line Basics
Strengthen your understanding of fundamental Linux commands. This will make server setup and configuration much smoother.
Browse courses on Linux Command Line
Show steps
  • Complete an online tutorial covering basic Linux commands.
  • Practice using these commands in a virtual machine.
  • Review common file system navigation commands.
Brush Up on Networking Fundamentals
Revisit key networking concepts. This will help you understand server configuration, domain linking, and security aspects.
Browse courses on Networking Fundamentals
Show steps
  • Review the OSI model and TCP/IP stack.
  • Study common network ports and their uses.
  • Understand the basics of DNS and domain name resolution.
The Linux Command Line
Deepen your understanding of the Linux command line. This book provides a solid foundation for server administration.
Show steps
  • Read the first few chapters covering basic commands.
  • Practice the commands in a terminal.
  • Refer to the book when configuring the server.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Follow Nextcloud Installation Tutorials
Reinforce your learning by following along with other Nextcloud installation guides. This will expose you to different approaches and troubleshooting tips.
Show steps
  • Find at least two different Nextcloud installation tutorials online.
  • Follow each tutorial step-by-step, comparing it to the course material.
  • Note any differences or alternative methods presented.
Set Up a Test Nextcloud Instance
Solidify your knowledge by setting up a test Nextcloud instance on a virtual machine. This allows you to experiment without affecting your main server.
Show steps
  • Install a virtual machine environment like VirtualBox.
  • Create a new virtual machine with a Linux distribution.
  • Follow the course instructions to install Nextcloud on the VM.
  • Experiment with different configurations and settings.
Contribute to the Nextcloud Documentation
Deepen your understanding by contributing to the Nextcloud open-source project. This will expose you to the inner workings of the platform.
Show steps
  • Explore the Nextcloud documentation repository on GitHub.
  • Identify areas where the documentation could be improved.
  • Submit a pull request with your proposed changes.
Write a Blog Post on Securing Nextcloud
Reinforce your learning by writing a blog post about securing a Nextcloud instance. This will help you organize your knowledge and share it with others.
Show steps
  • Research best practices for securing Nextcloud.
  • Outline the key steps involved in securing a Nextcloud server.
  • Write a clear and concise blog post explaining these steps.
  • Publish the blog post on a personal blog or online platform.

Career center

Learners who complete Selfhosted Nextcloud - easy step by step guide will develop knowledge and skills that may be useful to these careers:
Linux System Administrator
A Linux System Administrator manages and maintains Linux-based servers and systems. This course provides hands-on experience with setting up and configuring a Linux server using Suse, which aligns perfectly with the responsibilities of a Linux System Administrator. The course guides the administrator in how to install a LAMP stack, secure the server, manage data storage, and perform server maintenance, all essential for this role. The course's use of a step-by-step approach gives the learner a foundational knowledge of their field.
Web Server Administrator
A Web Server Administrator is responsible for maintaining and managing web servers to ensure optimal performance and availability of websites. This course provides practical experience in configuring and securing web servers using Apache, which is directly relevant to this role. The course also addresses critical tasks like setting up SSL/TLS certificates, implementing Google Brotli compression, and tuning Apache server performance, giving aspiring Web Server Administrators crucial skills. A web server administrator will find this course an excellent practical introduction to the field.
Cloud Engineer
A Cloud Engineer designs, implements, and manages cloud computing systems. This course is beneficial for aspiring Cloud Engineers since it delves into the practical aspects of cloud infrastructure by guiding learners through setting up their own private cloud using Nextcloud. A Cloud Engineer will find the course's modules on choosing cloud providers, managing storage, and securing cloud environments particularly relevant. The course’s hands-on approach and detailed coverage of server virtualization and Infrastructure as a Service will allow the cloud engineer to build skills relevant to their career.
Systems Administrator
A Systems Administrator is responsible for the upkeep, configuration, and reliable operation of computer systems, especially servers. This course directly helps someone become a Systems Administrator by teaching how to set up a server, install a LAMP stack, configure web servers, and secure systems with firewalls and SSL/TLS certificates. The course provides hands-on experience in managing server infrastructure, understanding virtualization, and creating a Virtual Private Server, which are all essential tasks for a Systems Administrator.
DevOps Engineer
DevOps Engineers combine software development and IT operations. This course helps build a foundation for a career as a DevOps Engineer, especially with the focus on server setup, automation and security, which are key DevOps practices. The course's content on setting up a LAMP stack with an Apache web server and applying security measures is foundational for this role. The course will aid greatly in understanding how to make software and infrastructure work in harmony, an invaluable skill for a DevOps Engineer.
Information Security Analyst
An Information Security Analyst is responsible for protecting an organization's computer systems and networks from cybersecurity threats. The course addresses many aspects of server and cloud security, including hardening Apache servers, securing HTTP connections with SSL/TLS, and setting up firewalls. This practical knowledge of how to protect a server from potential attacks builds a valuable foundation for an Information Security Analyst. A focus on securing systems is core to the role of an information security analyst.
Freelance Cloud Consultant
A Freelance Cloud Consultant offers cloud computing expertise to various clients. This course is very useful for those wishing to become a Freelance Cloud Consultant as it covers all the core competencies that would be expected of a consultant in this role. The course covers setting up cloud servers, choosing between providers, implementing security and managing data storage. After completing this course, the student will have a good understanding of how to offer their cloud related services to clients.
Network Engineer
A Network Engineer plans, implements, and maintains the network infrastructure for an organization. While this course primarily focuses on cloud and server management, the network engineer may find the networking knowledge within, particularly in the areas of domain registration, DNS, and securing server connections, useful. The course's details on configuring firewalls, understanding network protocols, and securing server access using SSH keys and Fail2ban can help build a strong understanding of network security, also within their role.
IT Support Specialist
An IT Support Specialist provides technical assistance to users. This course may be useful for an IT Support Specialist interested in expanding their skillset to include server and cloud technologies. The course's step-by-step guide to setting up a Nextcloud server and the topics on server security, and data backup can help the IT support specialist to better understand how to troubleshoot user issues related to these systems. By understanding the ins and outs of server management, an IT support specialist can enhance their ability to assist users.
Software Developer
A software developer creates and maintains software applications. While this course doesn't focus on the software development lifecycle, it does provide a useful understanding of the infrastructure that software runs on which may be valuable to the developer. A software developer who gains this knowledge from this course will learn how their code is supported by secure, hardened servers along with an understanding of the cloud environments their code may run in. This understanding may give them an edge in developing efficient code.
Database Administrator
A Database Administrator is responsible for the performance, integrity and security of databases. This course covers the setup of MySQL databases for use with Nextcloud. Although it does not go into the depth of advanced database administration, it does provide a good introduction to setting up a database that would be valuable for those wanting to learn more. A database administrator could use this course to learn how their work fits in with the larger picture of cloud and server infrastucture.
Technical Project Manager
A Technical Project Manager oversees technology projects, ensuring they are completed on time and within budget. This course may be useful for a Technical Project Manager who needs to gain a broader understanding of the technical infrastructure, including server setup, cloud services, and security implementations. Gaining this knowledge will help a Technical Project Manager better understand the processes and challenges involved in deploying and managing cloud-based projects. This would help to more efficiently manage projects.
Solutions Architect
A Solutions Architect designs and plans technology solutions for businesses and organizations. This course, while not directly aimed at architecture, provides an excellent introduction to the practical implementation of cloud solutions and the architecture of web servers. The course's focus on setting up a server, implementing security measures, and managing data storage provides a foundation for a career as a Solutions Architect. The solutions architect needs to have a broad understanding of all aspects of a project to best serve their role.
Technical Trainer
A Technical Trainer develops and delivers training programs on technical topics. This course may be helpful for a Technical Trainer who wants to provide training on cloud computing, Linux server management, or web server administration. The course's step-by-step approach and focus on practical skills provide a strong foundation for creating training materials and teaching others. The instructor may also be able to use the structure of the course as a framework for their own courses.
IT Consultant
An IT Consultant provides expert advice on technology solutions. This course may be useful for a career as an IT Consultant by providing practical knowledge in setting up and managing cloud and server infrastructure. The course's hands-on approach, and its focus on how to secure and maintain a web server, may help a consultant recommend effective solutions to clients. An understanding of these systems will help the IT consultant to fully understand the technology they may be advising on.

Reading list

We've selected one books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Selfhosted Nextcloud - easy step by step guide.
Provides a comprehensive guide to using the Linux command line. It covers everything from basic navigation to advanced scripting. It is particularly useful for understanding the commands used to configure and manage the Nextcloud server. This book is commonly used as a reference by both beginners and experienced Linux users.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser