Introducción
Let's Encrypt es una autoridad de certificación (CA) que automatiza la creación, validación, emisión y renovación de certificados X.509 para el protocolo TLS /SSL de forma gratuita, permitiendo HTTPS cifrado en servidores web.
En este tutorial, usaremos Certbot para obtener un certificado SSL gratuito para Nginx en Fedora 26 y para configurar el certificado para la renovación automática.
Certbot es un cliente automatizado fácil de usar que recupera y distribuye certificados SSL /TLS para el servidor web.
Si su intención es instalar Certbot en un servidor Fedora de forma remota, siga leyendo, de lo contrario, si desea instalar Certbot en su computadora local, omita el primer párrafo "Conexión al servidor" y lea el siguiente.
Conexión al servidor
Para acceder al servidor, necesita conocer la dirección IP. También necesitará la contraseña para la autenticación.
Para conectarse al servidor como root, escriba este comando:
ssh root@IP_DEL_SERVER
A continuación, se le pedirá que ingrese la contraseña del usuario root.
Si no usa el usuario root, puede iniciar sesión con otro nombre de usuario usando el mismo comando, luego cambie el primer parámetro:
ssh VOSTRO_UTENTE@IP_DEL_SERVER
Luego se le pedirá que ingrese su contraseña de usuario.
Ahora está conectado a su servidor, está listo para comenzar a instalar Certbot.
Instalar Certbot
Certbot está presente en los repositorios oficiales de Fedora, por lo que puede instalarlo con el siguiente comando de terminal:
sudo dnf install certbot-nginx
Los complementos de DNS de Certbot también se pueden usar para automatizar la obtención de un certificado Wildcard del servidor ACMEv2 de Let's Encrypt para Fedora 26. Para usar estos complementos, debe configurar el DNS del dominio para el que desea obtener certificados. Para más información lea la documentación oficial.
Obtenga un certificado SSL
El primer paso para utilizar Let's Encrypt para obtener un certificado SSL es instalar el software Certbot en su servidor.
sudo certbot --nginx
De lo contrario, podría obtener el certificado y luego configurar manualmente Nginx con el siguiente comando:
sudo certbot --nginx certonly
Certbot ya está listo para usarse.
Si desea obtener un certificado Wildcard con Let's Encrypt, deberá usar uno de los complementos DNS de Certbot. Para hacer esto, asegúrese de que el complemento de su proveedor de DNS esté instalado siguiendo las instrucciones anteriores y ejecute el siguiente comando con su nombre de dominio:
sudo certbot -a dns-plugin -i nginx -d "*.esempio.it" -d esempio.it --server https://acme-v02.api.letsencrypt.org/directory
Para obtener más información sobre cómo utilizar Certbot, lea la documentación oficial de Certbot.
Renovación Automática
Los paquetes de Certbot vienen con un trabajo cron que renovará automáticamente sus certificados antes de que caduquen. Como los certificados Let's Encrypt duran 90 días, se recomienda encarecidamente aprovechar esta función. Puede verificar la renovación automática de certificados ejecutando este comando:
sudo certbot renew --dry-run
Si funciona bien, puede configurar la renovación automática agregando un trabajo cron o un temporizador systemd que ejecute este comando:
certbot renew
La instalación de Let's Encrypt for Nginx en Fedora 26 usando Certbot ha finalizado.