HTTPS ist heute Standard. Ein gültiges SSL-Zertifikat schützt nicht nur die Kommunikation zwischen Browser und Server, sondern steigert auch das Vertrauen deiner Besucher – und verbessert das Google-Ranking.
Die einfachste Möglichkeit, kostenlos ein solches Zertifikat zu bekommen, bietet Let's Encrypt – und das passende Tool dazu heißt Certbot.
In diesem Artikel lernst du:
- wie du Certbot unter Debian 12 installierst,
- wie du Nginx für HTTPS konfigurierst,
- und wie du deine Zertifikate automatisch erneuern lässt.
Voraussetzungen
- Ein Server mit Debian 12 (Bookworm)
- Nginx ist installiert und läuft (
sudo systemctl status nginx) - Eine registrierte Domain, die auf deinen Server zeigt (A-/AAAA-Record)
- Root-Zugriff oder
sudo-Rechte
1. Certbot und das Nginx-Plugin installieren
Schritt 1: Paketquellen aktualisieren
``bash sudo apt update ``
Schritt 2: Certbot für Nginx installieren
``bash sudo apt install certbot python3-certbot-nginx -y ``
Diese Pakete beinhalten:
certbot: Das Hauptprogrammpython3-certbot-nginx: Plugin zur Automatisierung für Nginx
2. Zertifikat mit Certbot einrichten
Vorbereitung
Stelle sicher, dass in deiner Nginx-Konfiguration ein funktionierender HTTP-Server für deine Domain existiert:
```nginx server { listen 80; server_name deine-domain.de www.deine-domain.de;
location / { proxy_pass http://localhost:3001; ... } } ```
Speichern, dann Konfiguration prüfen und neu laden:
``bash sudo nginx -t sudo systemctl reload nginx ``
Schritt 3: Zertifikat anfordern und HTTPS automatisch konfigurieren
``bash sudo certbot --nginx -d deine-domain.de -d www.deine-domain.de ``
Certbot prüft deine Konfiguration und richtet HTTPS automatisch ein – inklusive Redirect von HTTP auf HTTPS, wenn du zustimmst.
Du wirst gefragt:
- ob du HTTP zu HTTPS umleiten willst (empfohlen)
- eine E-Mail-Adresse für wichtige Benachrichtigungen
Nach erfolgreicher Einrichtung:
Deine Website ist nun per HTTPS erreichbar!
3. Zertifikate automatisch erneuern
Let's Encrypt-Zertifikate sind 90 Tage gültig, sollten aber spätestens nach 60 Tagen erneuert werden. Certbot bringt einen Timer mit:
Status prüfen:
``bash sudo systemctl status certbot.timer ``
Falls noch nicht aktiviert:
``bash sudo systemctl enable --now certbot.timer ``
Manuelle Erneuerung testen (optional):
``bash sudo certbot renew --dry-run ``
4. Zertifikatsspeicherorte (zur Info)
- Zertifikat:
/etc/letsencrypt/live/deine-domain.de/fullchain.pem - Schlüssel:
/etc/letsencrypt/live/deine-domain.de/privkey.pem
Diese werden automatisch von Certbot verwaltet – nicht selbst ändern.
Fehlerbehebung
Fehler: Failed to restart nginx.service: Access denied
Das tritt auf, wenn du keinen Root-Zugriff hast. Verwende in diesem Fall:
``bash sudo certbot ... ``
Oder prüfe, ob du in einer eingeschränkten Umgebung (z. B. chroot oder Webhosting-Panel) arbeitest.
Fazit
Mit Certbot und Let's Encrypt stattest du deinen Nginx-Webserver auf Debian 12 in wenigen Minuten mit einem gültigen SSL-Zertifikat aus. Die Einrichtung ist einfach, kostenlos und sicher – und mit dem certbot.timer sogar wartungsfrei.
Wenn deine Website grün verschlüsselt im Browser erscheint, hast du alles richtig gemacht.