Install Certbot ​
Instructions for installing Certbot for Apache2 and Nginx on a root server.
With Certbot you can set up free TLS/SSL certificates from Let's Encrypt.
Certbot via Snap (recommended) ​
- Update system
First update the system of your root server. Open the console and enter the following command:
apt update && apt upgrade -y
apt update && apt upgrade -y
- Install Snap
Install Snap by entering the following commands in the console:
sudo apt install snapd
sudo snap install core
sudo snap refresh core
sudo apt install snapd
sudo snap install core
sudo snap refresh core
- install Certbot
sudo snap install --classic certbot
sudo snap install --classic certbot
- make Certbot command available
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
- use Certbot
- For Apache2:
sudo certbot --apache
sudo certbot --apache
- For Nginx:
sudo certbot --nginx
sudo certbot --nginx
- Check certificates
- You can find certificates under:
/etc/letsencrypt/live/<your-domain>/
/etc/letsencrypt/live/<your-domain>/
- Show status:
sudo certbot certificates
sudo certbot certificates
- Check automatic renewal
Certbot automatically creates a cronjob. You can use the following command to test whether the automatic renewal works correctly:
sudo certbot renew --dry-run
sudo certbot renew --dry-run
Certbot via APT ​
⚠️ Note
This method often installs outdated versions. Only use it if snap is not possible.
- Update system
First update the system of your root server. Open the console and enter the following command:
apt update && apt upgrade -y
apt update && apt upgrade -y
- install Certbot
- For Apache2:
sudo apt install certbot python3-certbot-apache
sudo apt install certbot python3-certbot-apache
- For Nginx:
sudo apt install certbot python3-certbot-nginx
sudo apt install certbot python3-certbot-nginx
- use Certbot
- For Apache2:
sudo certbot --apache
sudo certbot --apache
- For Nginx:
sudo certbot --nginx
sudo certbot --nginx
- Check certificates
- You can find certificates under:
/etc/letsencrypt/live/<your-domain>/
/etc/letsencrypt/live/<your-domain>/
- Show status:
sudo certbot certificates
sudo certbot certificates
- Check automatic renewal
Certbot automatically creates a cronjob. You can use the following command to test whether the automatic renewal works correctly:
sudo certbot renew --dry-run
sudo certbot renew --dry-run
ℹ️ Important
The domain must point to the server (A or AAAA entry), and port 80 (HTTP challenge) must be accessible - otherwise the validation will fail.