Kapitel 5 · 5.2
nginx mit einem Zertifikat von Let's Encrypt
Kennen Sie nginx bereits, oder verwenden Sie Software, die eine nginx-Konfiguration mitliefert? Dann nutzen Sie nginx mit certbot. certbot beantragt das Zertifikat, passt Ihre Konfiguration an und erneuert das Zertifikat automatisch.
nginx und eine Website
anna@web1:~$ sudo apt install nginx
anna@web1:~$ sudo mkdir -p /srv/www/example.com
anna@web1:~$ sudo nano /etc/nginx/sites-available/example.com
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com;
root /srv/www/example.com;
index index.html;
}
anna@web1:~$ sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
anna@web1:~$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
anna@web1:~$ sudo systemctl reload nginx
Testen Sie immer mit nginx -t, bevor Sie neu laden. Mit einem Fehler in der Konfiguration startet nginx nicht mehr.
Das Zertifikat beantragen
anna@web1:~$ sudo apt install certbot python3-certbot-nginx
anna@web1:~$ sudo certbot --nginx -d example.com -d www.example.com
certbot fragt beim ersten Mal nach Ihrer E-Mail-Adresse und ob Sie den Bedingungen zustimmen. Danach passt er Ihren server-Block für https an und leitet http auf https weiter.
Die Erneuerung erfolgt automatisch
Die Zertifikate von Let's Encrypt sind nur kurz gültig und werden automatisch erneuert. Prüfen Sie, ob das funktioniert:
anna@web1:~$ sudo certbot renew --dry-run
anna@web1:~$ systemctl list-timers | grep certbot
Let's Encrypt verschickt keine Erinnerungs-E-Mails mehr, wenn ein Zertifikat bald abläuft. Lassen Sie Uptime Kuma die Gültigkeit überwachen (siehe Uptime Kuma: Ihre Websites und Ihren Server überwachen).
Hinweis: Let's Encrypt begrenzt die Anzahl der Zertifikate. Möchten Sie zuerst üben, fügen Sie --test-cert hinzu: Dann erhalten Sie ein Testzertifikat, dem Browser nicht vertrauen, das aber nicht mitgezählt wird.
