Configurando LetsEncrypt con Nginx en Ubuntu
En primer lugar, deberíamos preguntarnos para que sirve LetsEncrypt y nada mejor que citarlos para entender:
Let’s Encrypt is a free, automated, and open Certificate Authority.
En resumen, con LetsEncrypt obtenemos un certificado de dominio seguro, el famoso SSL para nuestro sitio y de forma gratuita. Todo esto gracias a la Linux Foundation.
Hecha ya la introducción, pasemos a lo que nos interesa que es como lo configuramos en un servidor linux con Nginx
Instalamos certbot en el servidor:
sudo add-apt-repository ppa:certbot/certbot sudo apt-get update sudo apt-get install python-certbot-nginx
Configuramos el archivo de Nginx: (En este caso como ejemplo usamos el archivo default)
sudo nano /etc/nginx/sites-available/default
Buscamos la linea que contiene `server_name` y la reemplazamos por:
server_name dominio.com www.dominio.com;
Verificamos que la configuración de nginx sea correcta con:
sudo nginx -t
Reiniciamos Nginx:
sudo systemctl reload nginx
Instalando el certificado:
sudo certbot --nginx -d dominio.com -d www.dominio.com sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048 sudo nano /etc/nginx/sites-available/default
Agregamos dentro del bloque server:
ssl_dhparam /etc/ssl/certs/dhparam.pem;
Volvemos a verificar que nos haya quedado bien:
sudo nginx -t
Reiniciamos Nginx nuevamente:
sudo systemctl reload nginx
Configuramos la renovación automática del certificado:
sudo crontab -e
En nuestro archivo agregamos:
15 3 \* \* \* /usr/bin/certbot renew –quiet
De esta forma nos aseguramos que se renueve de forma automática nuestro certificado, dado que caduca cada 90 días.
Listo. Ya tenemos nuestro SSL configurado y funcionando.
Por último, si queremos verificar el estado de nuestros certificados con certbot para verificar la fecha de expiración o por ejemplo los dominios que tenemos registrados en nuestro servidor con LetsEncrypt, debemos ejecutar lo siguiente:
certbot certificates
Cualquier duda o consulta no duden en dejar sus comentarios o bien me pueden consultar vía Twitter.
¡Saludos!