Install, Configure, and Secure NGINX & Apache on an Ubuntu Server using Digital Ocean & Let’s Encrypt SSL

What you will learn

Deploying a virtual server on Digital Ocean

Working with dynamic, static and floating IPs

Using Terminal for remote authentication

Installing and configuring LAMP Stack on Ubuntu 18.04

Testing PHP

Hosting Multiple Domains on one Apache Virtual Server

Configuring Virtual Host Files and Directives

DNS Zone File Configuration

Understanding the difference between Apache & NGINX

Installing NGINX on a Digital Ocean Droplet or any Virtual Server of your choice

Modifying the NGINX Block Configuration file for hosting Websites

Installing essential components on NGINX such as MySQL, PHP & PhpMyAdmin

Securing PhpMyAdmin using symbolic links and NGINX’s built in authentication gateway

Securing your hosted websites with free SSL using Certbot & Let’s Encrypt

Installing and Configuring WordPress on your NGINX Server

Types of SSL Certificates

How SSL Certificates Work

SSL Certificate Status Reports

Redirect all Domain Variations to HTTPS

Description

Welcome to our latest course, which will guide you through the process of installing, securing, and configuring NGINX or Apache on an Ubuntu web server. You will also learn to encrypt all web traffic, using a Free SSL certificate from Let’s Encrypt.

APACHE Section:

This course begins with exploring the most widely used web server technology available, Apache. Statistics show that Apache is used to run over 65% of all web servers around the world. Understanding how to work with Apache, is an instrumental part of the web development process. Students will learn the following key concepts:

  • Deploying a virtual server on Digital Ocean
  • Working with dynamic, static and floating IPs
  • Using Terminal for remote authentication
  • Installing and configuring LAMP Stack on Ubuntu 18.04
  • Testing PHP
  • Hosting Multiple Domains on one Apache Virtual Server
  • Configuring Virtual Host Files and Directives
  • DNS Zone File Configuration

NGINX Section:

NGINX is now considered the most powerful, efficient, and secure web server technology used to host web applications of all sizes and complexity. The software is open-source, and is designed for maximum performance and stability. It also aims to correct many of the short-falls of Apache, when it comes to delivering content to your end user. NGINX can be used for web serving, reverse proxying, caching, load balancing, media streaming, and much more.

The NGINX Section of this course will help you understand the following key concepts:

  • Understanding the difference between Apache & NGINX
  • Installing NGINX on a Digital Ocean Droplet or any Virtual Server of your choice.
  • Modifying the NGINX Block Configuration file for hosting Websites
  • Installing essential components on NGINX such as MySQL, PHP & PhpMyAdmin
  • Securing PhpMyAdmin using symbolic links and NGINX’s built in authentication gateway.
  • Securing your hosted websites with free SSL using Certbot & Let’s Encrypt
  • Installing and Configuring WordPress on your NGINX Server

SSL Certificates – Let’s Encrypt

This section of the course offers an in-depth look into the role of SSL certificates when it comes to server security and web traffic encryption. We start with a thorough introduction which includes exploring different types of certificates and how they work. From there, students create a droplet on Digital Ocean and configure their own free SSL certificate using Let’s Encrypt Certificate Authority. This section of the course combines theoretical and hands-on training. Students have the opportunity to practice some of the concepts explored in the previous two sections, while also learning about free SSL Certificates, such as Let’s Encrypt.

English

Language

Content

Apache Web Server Configuration

Deploying a Virtual Server on Digital Ocean

Creating and Attaching a Floating IP

Intro to Terminal and Root User Authentication

Apache Installation and Testing

Installing MySQL Database Management System

Installing and Testing PHP

Installing PhpMyAdmin for Database Administration

Introduction to Virtual Hosts

Directory Structure, Permissions and Test Files

Configuring Virtual Host Files and Directives

Name Server Configuration

DNS Zone File Configuration and Testing

Installing SSL for each Domain using Lets Encrypt

Summary and Next Steps

NGINX Web Server Configuration

Apache vs NGINX


Get Instant Notification of New Courses on our Telegram channel.


History of Apache

Advantages of NGINX

Deploying a Droplet on Digital Ocean

Attaching a Floating IP

Connecting to your Virtual Server

Install and Configure NGINX

Install and Configure MySQL on NGINX

Install and Configure PHP on NGINX

Creating a PHP Test File

Modifying Domain Name Servers

Configuring DNS Zone Files

Updating the NGINX Block File Configuration

Installing Lets Encrypt SSL on NGINX

Installing PhpMyAdmin

Securing PhpMyAdmin with Symbolic Links

Securing PhpMyAdmin with Authentication Gateways

Enabling Authentication Gateways

Introduction to WordPress

Creating a Database for WordPress

Installing PHP Extensions for WordPress

NGINX Block Configuration for WordPress

Downloading WordPress

WordPress Configuration

WordPress Setup

Bonus: SSL Certificates Explored + Practice Project

Introduction to SSL Certificates

Traditional vs. Digital Certificate

Types of SSL Certificates

How SSL Certificates Work

Obtaining an SSL Certificate

Introduction to Lets Encrypt

Server Preparation

Domain Name Server Administration

Introduction to Digital Ocean

Droplet Configurations

Creating a Droplet

Install PuTTY-Terminal and Connect

Install LAMP Stack – Apache, MySQL, PHP

Configure DNS on Digital Ocean

Droplet Basic Configurations

Installing Lets Encrypt

SSL Certificate Status Reports

Redirect all Domain Variations to HTTPS

Auto Renewal with cron jobs