HTTPS mit Let's Encrypt
Kostenlose HTTPS-Zertifikate für alle selbst gehosteten Dienste: Certbot macht die Einrichtung zur Routineaufgabe und erneuert Zertifikate automatisch.
Hier richtest du HTTPS mit Let’s Encrypt ein, damit eigene Dienste verschlüsselt erreichbar sind. Ohne HTTPS überträgt dein Browser alle Daten unverschlüsselt. Passworteingaben, Inhalte, Sitzungscookies, alles im Klartext. Das war früher akzeptabel wenn eine Domain teuer und die Einrichtung aufwändig war. Heute gibt es keinen Grund mehr darauf zu verzichten.
Let's Encrypt ist eine gemeinnützige Zertifizierungsstelle die seit 2016 kostenlose SSL-Zertifikate ausstellt. Certbot ist das offizielle Werkzeug dafür. Die Einrichtung dauert wenige Minuten, die Erneuerung läuft automatisch.
Voraussetzungen
Damit Let's Encrypt funktioniert braucht deine Domain einen DNS-Eintrag der auf die Server-IP zeigt, und Port 80 muss von außen erreichbar sein. Let's Encrypt prüft beim Ausstellen eines Zertifikats ob du die Domain wirklich kontrollierst, indem es eine Datei auf deinem Server abruft.
Let's Encrypt funktioniert nur für Server mit einer echten Domain die über das Internet erreichbar ist. Für lokale Dienste im Heimnetz ohne feste Domain ist ein selbstsigniertes Zertifikat die Alternative, das allerdings Browser-Warnungen erzeugt.
Certbot installieren
Das Nginx-Plugin für Certbot ist wichtig: es liest die bestehende Nginx-Konfiguration, holt das Zertifikat und passt die Konfiguration automatisch für HTTPS an.
Zertifikat ausstellen
Für eine Domain mit bestehender Nginx-Konfiguration reicht ein einziger Befehl:
Certbot fragt nach einer E-Mail-Adresse für Ablaufbenachrichtigungen und ob du der Weiterleitungsregel von HTTP zu HTTPS zustimmst. Beides mit Ja beantworten. Danach ist die Domain über HTTPS erreichbar.
Für mehrere Domains auf einmal:
Was Certbot in der Nginx-Konfiguration ändert
Certbot ergänzt die bestehende Konfigurationsdatei automatisch. Aus dem einfachen HTTP-Block wird eine vollständige HTTPS-Konfiguration mit Zertifikatspfaden und einer Weiterleitung von Port 80 auf 443:
Automatische Erneuerung
Let's Encrypt Zertifikate laufen nach 90 Tagen ab. Certbot richtet beim Installieren automatisch einen Systemd-Timer ein der zweimal täglich prüft ob Zertifikate erneuert werden müssen. Du musst nichts weiter tun.
Den Status des Timers prüfst du mit:
Einen manuellen Erneuerungstest (ohne echte Erneuerung) machst du mit:
Wenn der Test ohne Fehler durchläuft, ist alles korrekt eingerichtet.
Richte die E-Mail-Benachrichtigungen von Certbot ein, auch wenn die automatische Erneuerung läuft. Wenn ein Zertifikat trotzdem mal nicht erneuert wird, z.B. weil der Server vorübergehend offline war, bekommst du rechtzeitig eine Warnung bevor es abläuft.
Häufige Fragen
Warum brauche ich HTTPS?
HTTPS verschlüsselt Daten zwischen Browser und Dienst und ist für Logins, Tokens und Formulare Pflicht.
Was macht Let’s Encrypt?
Let’s Encrypt stellt kostenlose TLS-Zertifikate aus, die automatisch erneuert werden können.
Was passiert bei abgelaufenem Zertifikat?
Browser warnen vor der Seite oder blockieren Zugriffe. Automatische Erneuerung und Monitoring sind deshalb wichtig.