Nginx absichern: Let’s Encrypt auf Ubuntu 22.04 einrichten
Mit Let’s Encrypt schützen Sie Ihre Website schnell und kostenlos per SSL/TLS. In dieser Anleitung sichern wir Nginx auf Ubuntu 22.04 in fünf klaren Schritten – inklusive Automatisierung der Erneuerung.
Hinweis: Möchten Sie Apache mit Let’s Encrypt absichern? Lesen Sie den Guide Apache mit Let’s Encrypt auf Ubuntu 22.04 konfigurieren.
Schritt 1: System vorbereiten
Aktualisieren Sie das System und installieren Sie Nginx (falls noch nicht vorhanden):
sudo apt update
sudo apt upgrade
sudo apt install nginx
Schritt 2: Certbot für Nginx installieren
Certbot richtet Zertifikate automatisch in Nginx ein:
sudo apt install certbot python3-certbot-nginx
Schritt 3: Zertifikat anfordern & Nginx konfigurieren
Ersetzen Sie example.com durch Ihre Domain(s):
sudo certbot --nginx -d example.com -d www.example.com
Folgen Sie dem Assistenten. Wählen Sie Weiterleitung auf HTTPS, damit HTTP->HTTPS automatisch erzwungen wird.
Schritt 4: Erneuerung automatisieren
Certbot richtet i. d. R. automatisch einen Timer ein. Prüfen Sie die Erneuerung per Dry-Run:
sudo certbot renew --dry-run
Alternativ per Cron (alle 12 Stunden):
sudo crontab -e
0 */12 * * * /usr/bin/certbot renew --quiet
Schritt 5: Firewall & Konfiguration prüfen
UFW für HTTPS freigeben (falls aktiv), Konfiguration testen und neu laden:
sudo ufw allow 'Nginx Full'
sudo ufw delete allow 'Nginx HTTP' # optional, wenn nur HTTPS genutzt wird
sudo nginx -t
sudo systemctl reload nginx
Best Practices: Security-Header & HSTS (optional)
Erhöhen Sie die Sicherheit Ihrer Site mit Security-Headern (in Ihrem Server-Block):
# /etc/nginx/sites-available/your-site (innerhalb von server { })
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "geolocation=(), microphone=()" always;
# HSTS nur aktivieren, wenn HTTPS überall erzwungen wird:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
Danach neu laden:
sudo nginx -t && sudo systemctl reload nginx
Fertig!
Ihre Nginx-Instanz auf Ubuntu 22.04 ist jetzt per Let’s Encrypt abgesichert. Passen Sie die Konfiguration nach Bedarf an und behalten Sie die Erneuerung im Blick.


