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.

Nginx sicher machen: Let's Encrypt auf Ubuntu 22.04 einrichten

Kostenlosen Account erstellen

Registrieren Sie sich jetzt und erhalten Sie Zugang zu unseren Cloud Produkten.