Ga naar inhoud

Let's Encrypt (Certbot)

In deze handleiding leer je hoe je Let's Encrypt certificaten kunt installeren en beheren met Certbot op een Linux-systeem.
We gebruiken hier Debian/Ubuntu als voorbeeld, maar de stappen zijn grotendeels gelijk op CentOS/RHEL/Fedora en openSUSE.

Wat is Let's Encrypt?

  • Let's Encrypt is een gratis, geautomatiseerde en open Certificate Authority (CA).
  • Het levert SSL/TLS-certificaten waarmee je websites kunt beveiligen met HTTPS.
  • Het beheer verloopt meestal via de tool Certbot.
  • Certificaten zijn 90 dagen geldig en worden automatisch vernieuwd.

1. Controleren of Certbot aanwezig is

certbot --version

Voorbeeld output:

certbot 1.30.0

2. Installatie

sudo apt update
sudo apt install -y certbot python3-certbot-nginx
Voorbeeld output
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  certbot python3-certbot-nginx
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Setting up certbot ...
Setting up python3-certbot-nginx ...
sudo dnf install -y certbot python3-certbot-nginx
sudo zypper install certbot python3-certbot-nginx

3. SSL-certificaat aanvragen

sudo certbot --nginx -d voorbeeld.nl -d www.voorbeeld.nl
  • Past automatisch Nginx-configuratie aan.
  • Activeert HTTPS en voegt certificaat toe.
Voorbeeld output
Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/voorbeeld.nl/fullchain.pem
Key is saved at:         /etc/letsencrypt/live/voorbeeld.nl/privkey.pem
sudo certbot --apache -d voorbeeld.nl -d www.voorbeeld.nl
sudo certbot certonly --standalone -d voorbeeld.nl -d www.voorbeeld.nl

4. Automatische vernieuwing

Let's Encrypt certificaten zijn 90 dagen geldig. Certbot regelt de vernieuwing automatisch via systemd timer of cronjob.

Controleer de automatische taak:

systemctl list-timers | grep certbot

Test handmatig een vernieuwing:

sudo certbot renew --dry-run
Voorbeeld output
Congratulations, all renewals succeeded. The following certs have been renewed:
  /etc/letsencrypt/live/voorbeeld.nl/fullchain.pem (success)

5. Certificaatbestanden

De certificaten worden opgeslagen in:

/etc/letsencrypt/live/voorbeeld.nl/

Belangrijke bestanden: - fullchain.pem β†’ Volledig certificaat incl. CA-chain - privkey.pem β†’ Private key - cert.pem β†’ Alleen het domeincertificaat


6. Certificaat verwijderen (indien nodig)

sudo certbot delete
Voorbeeld output
Which certificate(s) would you like to delete?
1: voorbeeld.nl

Conclusie

Met deze stappen heb je een Let's Encrypt SSL-certificaat geΓ―nstalleerd en geautomatiseerd vernieuwd via Certbot.
Je website is nu beveiligd met HTTPS!