Deploying a Secure Virtual Private Server with Ubuntu 20.04
What you'll learn
- Deploy a secure Virtual Private Server on a provider like Linode, Digital Ocean, or Vultr
- Best practices to secure the VPS
- Install most commonly used software (web server, PHP, databases, etc)
- Learn how ufw, the "Uncomplicated Firewall" works
- Connect to the VPS using SSH (secure shell) and Kes (public and private SSH keys)
Requirements
- A functional Windows, Macintosh, or Linux computer & an Internet connection
- Some experience with Linux is helpful, but not essential. We'll go over the basics
Description
Many developers have been turning to Virtual Private Servers to host their projects, and with good reason: unlike in a shared hosting environment, you are not running the risk of someone else's badly written code resulting in poor performance or (worse yet) your site being compromised because of someone else's insecure programming.
With a Virtual Private Server, you have complete control over the software that is available to you, and you can fine tune the server to meet your exact needs. But setting up a secure VPS takes a bit of work, and requires a bit of learning.
This course will take you through the basics of setting up a fast, secure VPS on Linode, DigitalOcean, AWS Lightsail, Vultr or any other provider that offers VPS Linux hosting. We'll set up an Ubuntu 20.04 server with the most commonly needed software, and ensure that it is locked down as securely as possible. We will also go through best practices for adding users, software, and services, and ensure that we choose the right kind of server for a particular project. We will learn how to implement public and private keys for secure access using SSH, how to edit files on the remote server through the command line using vi or nano/pico, how to use the most common and useful Linux command line programs, and how to configure the most popular and useful server software.
Who this course is for:
- Developers who want to host their own web applications
- People who are interested in acquiring "DevOps" skills for future employment
- People who are interested in best practices for securing a Linux based server
Instructor
I have twenty years of experience in professional software development, and twenty years of experience as a University professor.
As an entrepreneur, I have worked with a broad range of clients, including Thomson Nelson, Hewlett Packard, the Royal Bank of Canada, Keybank, Sprint, and many, many others. I also have extensive management and project management experience. I have led teams of fifty developers and artists on multi-million dollar projects, and much smaller teams on much smaller projects.
As a professor, I have taught in a wide variety of course areas, including Computer Science, English, Irish, and American literature, and a number of "crossover" courses that bridge the liberal arts and technological fields.
I have won regional, national, and international awards for my work in the IT field, and have also won awards for my teaching and research as a University professor.