Capítulo 5 · 5.2
nginx com um certificado da Let's Encrypt
Já conhece o nginx ou utiliza software que inclui uma configuração nginx? Nesse caso, utilize o nginx com o certbot. O certbot pede o certificado, ajusta a sua configuração e renova o certificado automaticamente.
nginx e um site
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
Teste sempre com nginx -t antes de recarregar. Com um erro na configuração, o nginx deixa de arrancar.
Pedir o certificado
anna@web1:~$ sudo apt install certbot python3-certbot-nginx
anna@web1:~$ sudo certbot --nginx -d example.com -d www.example.com
Na primeira vez, o certbot pede o seu endereço de e-mail e se aceita os termos e condições. Em seguida, ajusta o seu bloco server para https e redireciona o http para https.
A renovação é automática
Os certificados da Let's Encrypt têm uma validade curta e são renovados automaticamente. Verifique se isso funciona:
anna@web1:~$ sudo certbot renew --dry-run
anna@web1:~$ systemctl list-timers | grep certbot
A Let's Encrypt já não envia e-mails de aviso quando um certificado está prestes a expirar. Deixe o Uptime Kuma vigiar a validade (consulte Uptime Kuma: monitorizar os seus sites e o seu servidor).
Atenção: a Let's Encrypt impõe limites ao número de certificados. Se quiser praticar primeiro, acrescente --test-cert: assim recebe um certificado de teste em que os browsers não confiam, mas que não conta para os limites.
