
Let's Encrypt automatisieren
Let's Encrypt stellt kostenlose, allgemein anerkannte SSL-Zertifikate aus — Certbot automatisiert Beantragung, Einrichtung im Webserver und die alle 90 Tage nötige Erneuerung.
- Betriebssystem
- Ubuntu / Debian
- Schwierigkeit
- Einsteiger
- Dauer
- ~15 Minuten
Voraussetzungen
Diese Anleitung setzt einen bereits laufenden Nginx voraus (siehe unseren separaten Nginx-Reverse-Proxy-Artikel) sowie eine Domain, deren DNS-A-Eintrag bereits auf die öffentliche IP des Servers zeigt — ohne funktionierende Domain kann Let's Encrypt den Server nicht verifizieren.
Voraussetzungen
- Laufender Nginx mit konfiguriertem server_name
- Domain, deren DNS bereits auf den Server zeigt
- Port 80 und 443 in der Firewall offen
Certbot installieren
sudo apt update
sudo apt install -y certbot python3-certbot-nginxZertifikat beantragen und einrichten
Das Nginx-Plugin erkennt automatisch die passende server-Konfiguration, beantragt das Zertifikat und trägt es direkt in die Nginx-Konfiguration ein:
sudo certbot --nginx -d beispiel-domain.de -d Certbot fragt nach einer E-Mail-Adresse (für Ablauf-Warnungen) und ob HTTP-Aufrufe automatisch auf HTTPS umgeleitet werden sollen — in der Regel sinnvoll, mit Ja bestätigen.
Let's Encrypt hat striktere Rate-Limits (z. B. maximal 5 fehlgeschlagene Validierungen pro Stunde pro Domain). Beim Testen den --dry-run-Modus verwenden, um nicht versehentlich das echte Limit zu erreichen.
sudo certbot --nginx -d beispiel-domain.de --dry-runAutomatische Erneuerung
Zertifikate von Let's Encrypt sind nur 90 Tage gültig. Das certbot-Paket richtet auf Ubuntu/Debian automatisch einen systemd-Timer ein, der die Erneuerung übernimmt — meist ist nichts weiter zu tun. Prüfen lässt sich das so:
sudo systemctl status certbot.timerOb die Erneuerung im Ernstfall tatsächlich funktionieren würde, lässt sich simulieren, ohne ein echtes Zertifikat zu verbrauchen:
sudo certbot renew --dry-runNützliche Befehle
Certbot-Referenz
sudo certbot certificatessudo certbot renew --dry-runsudo certbot renewsudo certbot delete --cert-name <domain>HTTPS ist eingerichtet
Die Domain läuft jetzt über ein gültiges, kostenloses Zertifikat mit automatischer Erneuerung. Ein SSL-Test (z. B. bei ssllabs.com) zeigt, ob auch die Nginx-eigene TLS-Konfiguration modernen Standards entspricht.

