This video is a tutorial on how to install an SSL certificate (HTTPS) on a website using Certbot, specifically for servers from Hostinger or Digital Ocean [00:10]. The process involves several steps, including installing the SSL certificate on the domain [01:19], configuring DNS settings [02:11], and running commands on your Virtual Private Server (VPS) to install necessary packages and configure the SSL certificate [05:56]. The video emphasizes following the steps carefully to ensure a successful installation, which will result in a secure website accessible via HTTPS [07:39]. All the commands and steps are mentioned to be available in the video description [03:38].
URL : https://support.hostinger.com/en/arti...
How to Install SSL on VPS Using Certbot
Installing an SSL certificate on your VPS with Certbot using Python
Updated over 2 years ago
If your VPS operating system does not have a control panel or it does not integrate a free SSL option, you can generate and install a free Let’s Encrypt SSL with Certbot. Just follow these steps:
Step 1 - Prepare the VPS
Before installing the SSL, make sure that your VPS:
Has a web server running (eg. Apache, NGINX, etc.)
The website hosted on your VPS is set up to be opened by entering the domain name on the address bar – not the IP
The domain is fully propagated and pointing to your VPS child nameservers. Installing an SSL with Certbot while the domain is still propagating will create a self-signed certificate, which may cause errors when accessing your website
Step 2 - Install Dependencies
Certbot recommends using snapd for installation. Since snapd is not supported on Hostinger Linux-based VPS, you can use Python by installing it first on your server.
To start the process, connect to your VPS using SSH. Next, install the required dependencies (Python 3.6+, venv and Augeas) according to your OS:
For APT-based distributions (such as Debian or Ubuntu), run the following:
sudo apt update
sudo apt install python3 python3-venv libaugeas0
For RPM-based distributions (Fedora, CentOS), use this command:
sudo dnf install python3 augeas-libs
NOTES:
For older distributions that do not support dnf, use yum instead
Some RHEL-based distributions use python3x instead of python3 (eg. python38). Please refer to the documentation of your Linux distribution 🙂
If you have issues installing cryptography, you may need to install additional dependencies. Check this article for more information: Building Cryptography on Linux
Step 3 - Install Certbot
To prevent any conflicts with previous versions, remove any Certbot packages already installed before installing the newest version. You can use your package manager (apt, dnf, yum, etc.) for this.
Once it's ready, run the following to set up a Python virtual environment:
sudo python3 -m venv /opt/certbot/
sudo /opt/certbot/bin/pip install --upgrade pip
To install Certbot, run this on Apache:
sudo /opt/certbot/bin/pip install certbot certbot-apache
Or this for NGINX:
sudo /opt/certbot/bin/pip install certbot certbot-nginx
Next, create a symbolic link so that Certbot can be executed from any path:
sudo ln -s /opt/certbot/bin/certbot /usr/bin/certbot
Install and activate SSL for your websites and have Certbot do all the configurations by executing the following command for Apache:
sudo certbot --apache
For NGINX:
sudo certbot --nginx
NOTE:
To obtain only the certificates and configure the SSL manually, append certonly after certbot and before --apache or --nginx.
Since the SSL is active for 90 days, it is recommended to set up automatic renewal. You can do so by running the following:
echo "0 0,12 * * * root /opt/certbot/bin/python -c 'import random; import time; time.sleep(random.random() * 3600)' && sudo certbot renew -q" | sudo tee -a /etc/crontab (remove this and add greater than symbl here) /dev/null
That’s it, you can now visit your website on an incognito window to verify that SSL is properly installed and working 😊