Recently, I found out about a non-profit organization called Let’s Encrypt, which came into existence earlier this year. Let’s Encrypt is a publicly trusted certificate authority that issues FREE SSL certificates. The SSL Certificates are fully functional and extremely easy to request and install. In fact, using Let’s Encrypt, it only takes about a minute to request and install an SSL certificate on Apache via the Linux command line, using a few simple commands. If you have a Linux server(s) running any sort of public facing web server, there is no reason not to do this right now. Here’s how to do it on Ubuntu 16.04 (although it should be the same process on any version of Ubuntu)!
To install an SSL certificate from Let’s encrypt using this guide, you will need a couple things.
- A server running Ubuntu 16.04 (although this should work on any version of Ubuntu)
- Apache installed with a domain name(s) that is resolvable to the IP of the server.
- If you are hosting multiple domains, you will need to be sure you have Virtual Hosts configured that properly specify the ServerName variable.
Install the Let’s Encrypt Client
To make things easy, there is a client available, based on python, that will do all of the hard work for you. The package is called python-letsencrypt-apache. Let’s use Aptitude to install it.
# sudo apt-get update # sudo apt-get install python-letsencrypt-apache
The client is now installed and we can move on to setting up the SSL certificate.