Kapitola 5 · 5.2
nginx s certifikátem od Let's Encrypt
Znáte už nginx, nebo používáte software, který obsahuje vlastní konfiguraci pro nginx? Pak použijte nginx s nástrojem certbot. certbot vyžádá certifikát, upraví Vaši konfiguraci a certifikát automaticky obnovuje.
nginx a web
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
Před opětovným načtením konfigurace vždy proveďte test pomocí nginx -t. Pokud je v konfiguraci chyba, nginx se už nespustí.
Vyžádání certifikátu
anna@web1:~$ sudo apt install certbot python3-certbot-nginx
anna@web1:~$ sudo certbot --nginx -d example.com -d www.example.com
Při prvním spuštění se certbot zeptá na Vaši e-mailovou adresu a na souhlas s podmínkami. Poté upraví Váš blok server pro https a přesměruje http na https.
Obnovení probíhá automaticky
Certifikáty od Let's Encrypt mají krátkou platnost a obnovují se automaticky. Ověřte, že to funguje:
anna@web1:~$ sudo certbot renew --dry-run
anna@web1:~$ systemctl list-timers | grep certbot
Let's Encrypt už neposílá upozornění e-mailem, když platnost certifikátu brzy vyprší. Nechte platnost hlídat nástrojem Uptime Kuma (viz Uptime Kuma: sledování Vašich webů a serveru).
Pozor: Let's Encrypt omezuje počet vydaných certifikátů. Pokud si to chcete nejdříve vyzkoušet, přidejte --test-cert: získáte testovací certifikát, kterému prohlížeče nedůvěřují, ale který se do limitu nezapočítává.
