Network & Security


Secure VPS in Ubuntu 20.04: LetsEncrypt, Cloudflare and more

Learn to deploy, secure and maintain a VPS server, to publish all your projects securely and without restrictions

4.59 (26 reviews)



9 hours


Jan 2021

Last Update
Regular Price

What you will learn

Publish your projects and services in your own online space securely and autonomously.

Manage your VPS server efficiently and securely in an agile, easy, secure and economical way.

Handle correctly your www and non-www websites

Use the most recent and recommended techniques to manage your services and projects securely on your own VPS server.

Deploy projects online, with high security, quickly and very economically.

Secure connections to your systems and your products, through HTTPS completely free of charge with Let's Encrypt.

Master the best practices to ensure all your systems, such as Nginx, MySQL along with all your projects.

Feel complete confidence in managing your VPS server, without hesitation at any time about what you do.

Install and configure any package you need with the skills learned during the course.

Protect your websites and services with Cloudflare step by step

Establish secure connections to your Database from your local system, using SSH tunnels

Domain common tasks and commands to synchronize files and projects in your VPS


Create, configure, and secure your own Virtual Private Server (VPS) with a high-security rating while using the best services, security, and speed settings for all your projects.

In this course, you are going to create, configure, and deploy your VPS server from scratch, set it correctly, with high-security measures, and the most recommended mechanisms.

  • Always use secure protocols such as SSH to connect with your VPS and HTTPS to protect your websites and projects.

  • Forget the insecure passwords, so you can establish secure connections with your server with the SSH protocol, without problems and achieve anything you need.

  • Additionally, protect all your services and sites, setting them behind Cloudflare for high protection, speed, and security enhancements.

  • Deploy all your projects with your proper domain, with infinite possibilities, at no additional cost.

  • Keep your own space in the cloud for all your jobs, projects, and ideas,

  • Deploy all types of projects in the same instance, and with the number of domains and sub-domains that you want, without having additional costs.

Now, during the course is recommended to use DigitalOcean, but you are free to create your VPS with the provider you want or need. You can follow the course using any fresh instance of Ubuntu 20.04LTS in your selected VPS provider. Everything will be done from scratch and step by step, without relying on additional features from exclusive services.

Install and deploy a complete system with Linux/Ubuntu 20.04 LTS, Cloudflare, Let's Encrypt, Certbot, Nginx y MySQL; also as an additional bonus, there is additional content on how to deploy and publish popular projects such as WordPress, Laravel and more that will be added over time.

Why take this course?

  • Because it uses the latest Long Term Support (LTS) version of Ubuntu, which is Ubuntu 20.04LTS. You won't have to worry about switching to another version for at least two long years.

  • Because there is no other online course that explains with this level of detail each step to be taken, because Let's Encrypt is a novelty, along with the use of Cloudflare as a protection service, and you will not find content that teaches you to use it in the way that It is done in this course (the correct and simple way).

  • Because you will learn the best standards to obtain the highest security rating (A+) in the sites that you secure while following the course.

  • Because, nowadays the main browsers are demanding secure HTTPS connections in any online site or service, and by following the course, you will be able to secure all your systems for free through Nginx, Let's Encrypt, Certbot and Cloudflare.

  • Because you will have the flexibility to deploy any kind of project, and the course already includes specific steps to deploy popular PHP projects like WordPress and Laravel (and more to come).

What will you learn and obtain by following and finishing the course?
At the end of this course, you will be able to deploy your own VPS server and your own services on it, shortly and eadily. All under the best security measures and with the protection of Cloudflare to increase the security and speed of your sites.

You will have your own projects online without additional costs because, no matter how many domains, sub-domains or projects you put in your VPS, the cost will remain the same.

At the end of all the classes, you will have all your projects under a completely secure server, with HTTPS/TLS connections completely free through Letsencrypt and with an A+ rating on the secured sites.

But... What exactly will you learn?
Here you have everything you can get from this course:

  • Create your own VPS server with DigitalOcean or any provider you choose

  • Have a safe and friendly system with Linux/Ubuntu using its most recent LTS version (Ubuntu 20.04)

  • Deploy an Nginx web server in a few minutes and with the best security settings

  • Deploy a MySQL database server completely secure

  • Establish secure remote connections to your database with SSH tunnels

  • Easily configure and use Git to deploy the different projects on your VPS via SSH

  • Learn alternative tools such as SCP and WGet to synchronize content with your VPS

  • Obtain external packages and install them globally (Composer, Certbot, WP-CLI)

  • Create and configure your domain and all sub-domains, without having to pay extra

  • Point your domain to your VPS server by configuring the DNS entries

  • Secure your services and projects with the DDoS protection along with security and speed enhancements from Cloudflare

  • Connect to your VPS remotely, quickly and securely using SSH keys

  • Manage user accounts and prevent automated and external systems from accessing privileges (root)

  • Learn to use the essential commands (cd, systemctl, cp, sudo, mv, rm, mkdir, reboot, and many more)

  • Learn how to manage VPS packages with apt easily

  • Assign permissions on folders and files in the correct way

  • Configure secure and mandatory non-password connections with SSH

  • Forget about insecure passwords for all the users and use SSH keys (more secure and fast)

  • Create and handle users correctly with administrative permissions (sudo)

  • Deploy any kind of projects (not only PHP) in secured and protected domains and connections

  • If you use PHP, deploy different PHP projects like WordPress and Laravel on their own independent sites

  • It won't be PHP only, use and deploy any type of project you require (more will come later)

  • Understand and take advantage of the use of SSH to connect to your VPS or external services

  • Connect with third party service through SSH keys correctly

  • Easily configure a firewall (UFW) and dramatically increase the security of your VPS

  • Configure your services (Nginx, PHP, MySQL, and anything you need) to make them more secure

  • Mitigate DoS and DDoS attacks configuring Nginx along with Cloudflare as a protection service

  • Prevent automated systems from trying to access your VPS, using Fail2Ban

  • Enable the Gzip compression system on your web server

  • Avoid CSS/XSS attacks with Nginx

  • Get security certificates for HTTPS connections for your projects with Let's Encrypt and Certbot

  • Install the security certificates in Nginx correctly, to obtain an A+ security rating

  • Use Certbot to obtain and install the Let's Encrypt security certificates automatically

  • Create, use, and secure all the domains and sub-domains that you require for any project

  • Easily deploy any kind of project on your VPS, applying everything you learned

  • Learn to deploy and synchronize projects with your VPS in the correct and efficient way

And it does not end there! You will have lifetime access to all classes, which includes new upcoming classes and upgrades. You will also have first-hand access to the system of questions, messages, and answers. I will answer all your questions and comments (I always reply). I will be pleased to help with any problem and doubt you have during the course.

Do not wait anymore. Learn all these skills now. Click on "Register" and start feeling the freedom of having your own VPS.

See you in classes :)


Secure VPS in Ubuntu 20.04: LetsEncrypt, Cloudflare and more
Secure VPS in Ubuntu 20.04: LetsEncrypt, Cloudflare and more
Secure VPS in Ubuntu 20.04: LetsEncrypt, Cloudflare and more
Secure VPS in Ubuntu 20.04: LetsEncrypt, Cloudflare and more



About the instructor

What you will do and what will you learn

Why a VPS

Recommended Tools

Check everything before you start

Preparing your system and tools

Creating an account at a VPS provider

Make sure you can use SSH on your system

Generating SSH keys to access the VPS safely

Creation and preparation of the Virtual Private Server (VPS)

Creating your VPS with Ubuntu 20.04 LTS

Connecting to the VPS via SSH

Improving the SSH connection flow to the VPS

Keeping the connection active with the VPS server

Resolving an existing domain to the VPS server

Using and understanding some essential commands and tasks on a VPS

How to explore and navigate paths in the VPS

File management (create, delete, move, copy and read)

Directory management (create, delete, move, copy and read)

Tricks to be agile on the command line with your VPS

Use apt to manage and upgrade the VPS packages

VPS services management with the systemctl command

How to restart the VPS server when required

How to establish SSH connections from the VPS

Execute recurring tasks on the VPS using Cronjobs

Assigning an additional user account to ensure proper use of the VPS

How to manage user accounts in Ubuntu (create and delete)

How to log into the VPS with the new user

Assigning and using administrative permissions in Ubuntu

Establishing a security layer on the VPS server

Preventing the use of passwords and root to log in to the VPS

Setting up and using the UFW firewall in Ubuntu

Assigning permissions correctly in Ubuntu

Using Fail2Ban to prevent intruders on the VPS

Installing and configuring the Nginx web server on the VPS

Installing the Nginx web server on the VPS

Where is Nginx and its configuration located in the VPS

How Nginx manages to respond to requests

Establishing the first site in Nginx

Setting up a subdomain on the VPS with Nginx

Installing and configuring MySQL

Installing and securing the MySQL server on the VPS

How to interact with MySQL from the VPS console

Using SSH tunnels to interact with MySQL from your system

Conclusions and recommendations

Remember to keep your VPS updated

Apply what you have learned to anything you need in your VPS

Bonus lecture


Ismail20 January 2021

Amazing course! The instructor explains everything clearly and the content of the course is very valuable!

Ivan24 December 2020

En general buen curso, te guía paso a paso para tener tu VPS configurado y listo para desplegar tus proyectos, si buscas una guía practica que te ayude con lo básico te lo recomiendo al 100%.

Gonçalo19 September 2020

I highly recommend this course. I gave me a good understanding of the workings of a VPN that allowed me to have my own secure webserver for development and production.

Warren3 September 2020

Normally I do not review courses until the end however with Juan’s courses I have to make an exception(I have all his courses) with what I have reviewed in this course so far you can expect a very well thought-out course that is easy to follow


Udemy ID


Course created date


Course Indexed date
Course Submitted by

Android PlayStore
Apple Appstore