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 CentOS 8 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.
Instalar Certbot
CentOS no tiene actualmente su propia versión de Certbot en el repositorio, por lo que debe usar el script certbot-auto.
Si wget no está instalado:
sudo dnf install wget
Descarga el guión:
wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
Certbot-auto instala automáticamente todas las dependencias y actualiza el código del cliente.
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-auto --nginx
De lo contrario, podría obtener el certificado y luego configurar manualmente Nginx con el siguiente comando:
sudo./certbot-auto --nginx certonly
Certbot ya está listo para usarse.
Para obtener más información sobre cómo utilizar Certbot, lea la documentación oficial de Certbot.
Configurar el firewall
Si tiene el cortafuegos activo, siga leyendo, de lo contrario vaya al siguiente párrafo.
El puerto 443 (HTTPS) en el servidor debe abrirse usando Firewalld para que los clientes puedan conectarse. Actualice las reglas de la siguiente manera:
sudo firewall-cmd --add-service=https
sudo firewall-cmd --runtime-to-permanent
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-auto 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-auto renew
Conclusión
La instalación de Let's Encrypt usando Certbot en CentOS 8 ha finalizado.