In the world of website development and app development we are the midst of a transition from conventional hosting to cloud hosting as the new norm.
If you manage a cloud server, or own a cloud server you must be certain that you are setting them up to be secure, lest you set yourself or your clients up for nasty data breaches and site hacks.
So, how do you ensure a certain level of security on your servers?
There are many things that can and should be done on your cloud servers, but I’ll focus on one in this post. Setting an SSL Certificate.
What is an SSL Certificate?
In short, an SSL certificate is an authentication method that encrypts the connection between your server and the user’s web browser. And for simplicity, think of it as communicating using a secret code. A code that only the server and the browser can decode using their secret decoder rings. (Yep, I grew up in the 80’s! The era of Cracker Jack toys and Cap’n Crunch wistles)
So when sending data back and forth from server to web browser, only the server and the browser can make sense of the data that get’s transmitted. You can probably already understand the necessity for such an encryption to take place since today we send credit card information, social security numbers, bank information, and more to web servers in order to make online purchase.
So I won’t continue emphasize the importance of SSL because you are a smart person and don’t need a lecture from me. Instead, let’s get straight to how it’s done.
How to install an SSL Certificate on AWS Bitnami server
Today, I’m taking about how to do this on AWS (Amazon Web Services) but this technique can apply to almost any cloud hosting server. If you prefer Digital Ocean hosting, you can reference this article: https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-16-04
Let’s get started!
The process is actually pretty easy, but I make the assumption in this article that you already know how to ssh into your server. If you don’t know how to SSH into your server you can find great resources on Bitnami’s website: https://docs.bitnami.com/aws/faq/get-started/connect-ssh/
Once you are connected, here’s how it’s done. Make sure to replace **domain.com** with your actual domain!
- Install Certbot: https://certbot.eff.org/
- Download LetsEncrypt Certificate for your domains:
sudo certbot certonly --webroot -w /opt/bitnami/apps/wordpress/htdocs/ -d **domain.com** -d **www.domain.com** --post-hook="/opt/bitnami/ctlscript.sh restart apache"
sudo nano /opt/bitnami/apache2/conf/bitnami/bitnami.conf
SSLCertificateFileto point to
SSLCertificateKeyFileto point to
- Restart apache:
/opt/bitnami/ctlscript.sh restart apache
And that’s all it takes to get the server running with a free SSL Certificate from Let’s Encrypt!
If you haven’t started using cloud hosting for your websites, I would strongly suggest looking into it. If you are a fellow developer and would like to get started with a cloud hosting company, I enjoy using Digital Ocean cloud hosting services and I think this would be a great place to start. Click here to get $10 of free hosting with Digital Ocean on us.
Co-written by Spencer Heywood – You can find more from him on our blog and here: https://www.the-empire.systems