The Perfect Nginx Server - Ubuntu Edition
4.7 (258 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,763 students enrolled

The Perfect Nginx Server - Ubuntu Edition

The Absolute Beginners Course to Setting Up Multiple Blazingly Fast WordPress Sites Using Nginx
Bestseller
4.7 (258 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,763 students enrolled
Created by Andrew Eaton
Last updated 7/2020
English
English [Auto]
Current price: $69.99 Original price: $99.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 9 hours on-demand video
  • 1 article
  • 38 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Setup, from scratch, a secured, hardened and optimized Virtual Private Server
  • Configure a secure and optimized server and host multiple WordPress sites using nginx
  • Add a valuable new skill to your resume
  • Add a new income stream by offering new, in demand, services to clients
Course content
Expand all 96 lectures 09:04:52
+ Course Introduction
4 lectures 25:34

Welcome to my course, The Perfect NGINX Server - Ubuntu Edition

Preview 05:49

In this lecture we are going to look at the software required to complete the course successfully. All the software required is FREE and / or open source. No software purchase is required. No commercial theme and/or plugin purchase is required.

2019 Update includes a new section for Windows users, CMDER. CMDER is my favorite terminal emulator for Windows and I highly recommend it over Putty.

Preview 11:18

There are many web hosts around, in this lecture we are going to look at my recommended web hosts and server specifications for both a development server and a production server. We are also going to look at LTS Ubuntu releases.

2019 Update: Web Hosts and The Server Operating System
08:26

Ubuntu 20.04 was released 23 April 2020

Ubuntu 20.04
00:01
+ Linux Essential Skills
13 lectures 01:03:38

If you have never used Linux or the command line before, I created this section just for you. This section will teach you the essential skills needed to complete this course successfully.

After completing this section, you will have learned the skills needed to complete the rest of the course successfully.

Introduction
02:51

In this lecture we look at the different types of users on a linux server

Users
04:55

Using terminal is easy, this lecture will show you how…

Terminal
04:08

Have you never typed a command using a terminal emulator before?  It’s easy, this lecture will explain all…

Typing a Command
05:15

The list command is one of the most frequently used commands in Linux. Learn how to use the ls command with various options.

The ls Command
03:47

It’s important to understand the file system layout on a Linux system, let’s have a look…

File System Layout and Directories
05:29

Navigating from directory to directory is one of the fundamental skills required when working on a server. This lecture will show you how…

Changing Directories
06:08

In this lecture we are going to look at Nano. Nano is the editor we will be using throughout the course to edit various configuration files.

Nano Crash Course
03:50

Ownership and permissions are two of the most frequently misunderstood topics in Linux. Over the next few lectures I'm going to demystify this topic for you. You will understand what is meant by ownership and permissions and the relationship between the two. Most importantly you will learn how ownership and permissions relate to WordPress security.

Ownership and Permissions - Introduction
02:56

In this lecture we are going to look at file and directory ownership.   

Ownership and Permissions - Ownership
02:30

In this lecture we are going to look at file and directory permissions

Ownership and Permissions - Permissions - Part 1
06:01

In this lecture we are going to conclude our look at file and directory permissions

Ownership and Permissions - Permissions - Part 2
09:10

We are going to be using the Advanced Package Manager ( apt ) throughout the course for updates and installing software. This lecture gives you an introduction to apt.

Packages and APT
06:38
+ Initial Server Configuration and Security
5 lectures 42:26

After receiving your ip address and root password from your web host, there are a few steps that need to be performed, as the administrative - root user.

First Login ROOT User
14:34

Logging in as the non-root user we created, you need to take additional steps in further securing your server.

First Login NON ROOT User
05:10

Using a user / password combination to login to your server is almost like having no security at all. Its like saying, "I wont give you the correct key, but here's a bunch, try them all until you find the correct one".

We will not allow logging in using a user / password, only SSH key authentication will be allowed.

SSH Key Authentication
13:27

Using a config file will speed up access to your server. A config file allows you to login to your server using an alias rather than the long and tedious ssh command.

Config Files
03:28

A firewall is one of the most important aspects of server security. Unfortunately it's also one of the most problematic. Firewall rules are long and complex to type. One incorrectly type character can lock you out of your server.

Thanks to Uncomplicated Firewall, its very easy. There is no need to type complex iptable rules, UFW makes configuring a firewall an extremely easy task. What took hours is now done in minutes using UFW.

The Firewall
05:47
+ Fail2Ban
1 lecture 13:44

You secure a server in layers, fail2ban is another layer of security you are adding to your server.

You have taken another step in securing your server by providing additional protection to ssh access.

Fail2Ban
13:44
+ The LEMP STACK
3 lectures 20:59

In this lecture we are going to install NGINX and MariaDB. After installing MariaDB we need to secure some of the dangerous defaults.

Ubuntu 16.04: Install NGINX, Install and Secure MariaDB
04:47

After installing php, we need to secure some of the configuration settings and optimize the php opcache.

Ubuntu 16.04: Install, Secure and Optimize PHP 7.0
08:09

This lecture is for Ubuntu 18.04 users, it follows the steps above.

Ubuntu 18.04: Install NGINX, MARIADB and Install, Secure and Optimize PHP 7.2
08:03
+ Initial NGINX Configuration
6 lectures 29:40

In this lecture we are going to look at what lies ahead in your NGINX journey.   

Overview of the NGINX Configuration to follow in the Course
03:39

You need to point your domain names to your server, this lecture covers that aspect.

DNS and Domain Names
03:20

In this lecture we are going to look at contexts and directives in relation to NGINX. These are two important definitions that I will be referring to frequently from this point forward.

Contexts and Directives
04:31

The main NGINX configuration file allows us to secure and optimize NGINX. This lecture is split into 3 parts to ensure we cover all the details.   

Securing and Optimizing NGINX - Part 1 - The Main Nginx Configuration File
08:16

The main NGINX configuration file allows us to secure and optimize NGINX. This lecture is split into 3 parts to ensure we cover all the details.   

Securing and Optimizing NGINX - Part 2 - The Main Nginx Configuration File
05:24

The main NGINX configuration file allows us to secure and optimize NGINX. This lecture is split into 3 parts to ensure we cover all the details.   

Securing and Optimizing NGINX - Part 3 - Buffers, Timesouts and the File Handle
04:30
+ Directory Structure
1 lecture 04:53

In this lecture we are going to create the directory structure for your WordPress site.

After completing this lecture you will have the knowledge to create the directory structure, on the server’s ssd/hdd, for a WordPress site.

Creating the WordPress Directories to Store Your Site
04:53
+ NGINX Server Blocks
3 lectures 19:02

Part 1:

In this lecture, we are going to configure the NGINX server blocks that are responsible for displaying your site(s).

At this stage of the course, you are well on your way to using NGINX as a web server.

PDF Updated July 2020

Configuring NGINX Server Blocks to Display Your WordPress Site - Part 1
05:01

Part 2:

In this lecture, we are going to configure the NGINX server blocks that are responsible for displaying your site(s).

At this stage of the course, you are well on your way to using NGINX as a web server.

Configuring NGINX Server Blocks to Display Your WordPress Site - Part 2
04:47

Part 3:

In this lecture, we are going to configure the NGINX server blocks that are responsible for displaying your site(s).

At this stage of the course, you are well on your way to using NGINX as a web server.

Configuring NGINX Server Blocks to Display Your WordPress Site - Part 3
09:14
+ MariaDB
2 lectures 10:21

In this lecture we are going to use MariaDB to create the databases that your WordPress site is going to use. Creating your sites database is an easy process.

Creating Your WordPress Database Using MariaDB - Part 1
05:02

In this lecture we are going to continue to create the databases that your WordPress site is going to use. Creating your sites database is an easy process.

Creating Your WordPress Database Using MariaDB - Part 2
05:19
+ Make WP Site Administration Easy, with WPCLI
1 lecture 04:39

The WordPress Command Line Inferface, WPCLI, makes WordPress site administration so easy. In this lecture you are going to install WPCLI on your server.

Installing WPCLI On Your Server
04:39
Requirements
  • Students should be familiar using WordPress
  • No knowledge of Linux, nginx or server administration is required
  • No knowledge of the command line is required, I will teach you everything from scratch
Description

This is a beginners course that assumes you have no knowledge configuring a Linux server or NGINX.

Update:  23 April 2020

Ubuntu 20.04 was release today. Most of the better web hosts have a 20.04 server distribution available for you to install as a server operating system. The configuration differences between 16.04, 18.04 and 20.04 are minimal. Instructions have been added to the course on how to configure the latest Ubuntu release. Apart from minor differences, this course is compatible with Ubuntu 20.04.

NGINX is a high performance web server that is responsible for serving almost all of the most popular sites in the world.

We start with a blank slate and layer by layer configure the perfect nginx server.  I will teach you, step by step, to a point where you will have the skill, knowledge and confidence to host multiple secure WordPress sites, on an unmanaged Virtual Private Server, using nginx. You will need no support from your host. You will be your own system administrator.

This course covers the entire spectrum of configuring an Ubuntu based NGINX server. We will cover everything from initial server configuration to installing NGINX, MariaDB and php7.x. Once installed, we will configure, secure and optimize nginx, MariaDB and php7.x.  The WordPress sites we create also need to be installed, secured and optimized. Then we move on to installing SSL certificates and plugin free backups.

The most important aspect of any server is security. I don't just glance over this aspect, every configuration step you will take is geared towards security. Some of the security aspects included in the course are: SSH Keys, the firewall, fail2ban, changing "dangerous" default settings and NGINX "deny" directives. These are just some of the steps we are going to use in securing your server and your sites. Installing a WordPress "security plugin" does not secure your server or your WordPress site. Some "security plugins" are a source of vulnerabilities themselves.

After security we need to look at optimization. Speed is everything and NGINX delivers WordPress sites at blazingly fast speeds. We will use a varied approach to optimization - command lines tools, nginx "caching" directives - you can be assured - your page speed scores will sky rocket...

By the end of this course, you will be ready to reap the benefits.

Add a new revenue stream and start earning additional income hosting your own sites using NGINX. There will be numerous new services you will be adding to your resume as a web developer. You will be able to charge for numerous new services -  site hosting, site optimization, Let's Encrypt SSL certificate installation and renewal, backups and even a monthly maintenance fee.

All that's left is for you to sign up for this course and start your wonderful journey as your very own system administrator running multiple WordPress sites on a NGINX server.

Update(s): Updates added to the course relate to performance and security - some of the updates include:

Performance: Redis Object Caching, FastCGI Caching, W3 Total Cache and how to correctly enable Cloudflare on your VPS. Run multiple versions of PHP on the same server: PHP 7.2, 7.3 and 7.4 can be used.

Security: stop xmlrpc.php and the seemingly never ending wp-login.php attacks using Nginx Rate Limiting. Make use of nginx directives to block certain user agents, spam bots and common exploits. Nginx directives also aid in stopping certain sql and file injection attacks. Further protect your site by restricting from where assets can be fetched by the clients browser using a Content Security Policy.

Who this course is for:
  • Anyone who wants to host blazingly fast WordPress sites using nginx
  • Any WordPress site owner who wants to move from shared hosting to self managed hosting
  • Site owners who are tired of slow and oversubscribed shared web hosting servers
  • Anyone who is frustrated with shared web hosts support, learn to do it yourself with this course, become your own sys admin, its easy!!!
  • Web Developers, add a new revenue stream by offering additional services, you can boost your income drastically