You have two options for getting SSL Certificates: (1) You can either pay 9 USD per year for a personal SSL certificate. (2) Get free SSL Certificate for your website. The only caveat? Renew every 90 days. Is that a lot of work? Yes but you can only use the cheap SSL certificate for a single domain. You will not be able to use it on even a sub-domain. I believe the best use of free SSL is for freelancers. It will be good for your staging work. It will also tell your clients that you take security seriously. Consequently, you will get more work.
Free SSL Certificates are being issued by the folks at https://www.letsencrypt.org/, an open certificate authority brought to you by the non-profit Internet Security Research Group (ISRG). Let’s Encrypt uses the ACME protocol to verify that you are the rightful owner of a given domain name. If you happen to be one of the lucky ones, your hosting provider is already working with Let’s Encrypt to streamline and automate the process of acquiring free SSL certificate for your website, check Let’s Encrypt’s Supported Hosts to find out if your hosting provider is listed or not.
If your hosting provider does not support Let’s Encrypt then you’ll need to choose one of the ACME protocol softwares/methods mentioned on their website. EFF’s Certbot is the best method to go with, although you’ll need root access for that, which most shared hosting providers don’t offer. Other options like acme.sh and letsencrypt-nosudo are good automated methods available but they’ll need at least SSH access, it could also have one issue or another like I did while trying it out on Namecheap’s shared hosting (yes, they do offer SSH -without root access- for their shared hosting, you just have to open a support ticket or ask in Live Chat and they’ll enable it for you) so I decided to go the easy-way of generating the free SSL Certificate i.e. via Browser. The following are listed on Let’s Encrypt website, please use only the trusted sources for free SSL Certificate generation:
Follow the steps below to generate and use the free SSL Certificate using SSL for Free:
1. First of all, go to SSL for Free website.
2. Enter the domain name, you can enter multiple domain names, make sure there’s a space between each domain name and click “Create Free SSL Certificate”.
3. It will ask you to verify that you are indeed owner of the domain names. There are three methods, I chose “Manual Verification”, where it asks you to upload a verification file in a unique folder for each domain/sub-domain. Once you upload verification files, make sure you click the links they give to verify that you uploaded files correctly and then click “Download SSL Certificate”.
4. Certificate files will appear as text to you and a download link for ZIP file, containing CA_bundle.crt, Certificate.crt and Private.key, will be available for download too. Keep them safe.
5. Lastly you should login to your Hosting Control panel, in my case, I logged into Cpanel given by Namecheap for my hosting and brought the SSL configuration page where I was able to setup the SSL certificate.
Follow the steps above to renew free SSL Certificate within 90 days.
Ask away in comments if you have any questions or contact me by clicking here.