Sí, puedes usar **Let's Encrypt** para generar certificados SSL gratuitos y configurarlos en **HAProxy** para tus distintos sitios. Aquí tienes un resumen de cómo hacerlo: --- ### 1️⃣ **Instalar Certbot en tu Servidor** Certbot es la herramienta oficial de Let's Encrypt para generar certificados. ```bash sudo apt update && sudo apt upgrade -y sudo apt install certbot -y ``` Si HAProxy está en la misma máquina donde se servirán los sitios, puedes usar **Certbot en modo standalone**. --- ### 2️⃣ **Generar Certificados para cada Dominio** Ejecuta el siguiente comando para generar un certificado para tu dominio: ```bash sudo certbot certonly --standalone -d ejemplo.com -d www.ejemplo.com # Ejemplo: sudo certbot certonly --standalone -d ai-reports.1.temporal.work -d www.ai-reports.1.temporal.work ``` Si tienes varios dominios en tu HAProxy, repite el comando para cada uno. Esto generará los certificados en: ``` /etc/letsencrypt/live/ejemplo.com/fullchain.pem /etc/letsencrypt/live/ejemplo.com/privkey.pem ``` --- ### 3️⃣ **Combinar los Certificados para HAProxy** HAProxy requiere que el certificado y la clave privada estén en un solo archivo. Usa este comando para combinarlos: ```bash cat /etc/letsencrypt/live/ejemplo.com/fullchain.pem \ /etc/letsencrypt/live/ejemplo.com/privkey.pem > \ /etc/haproxy/certs/ejemplo.com.pem ``` Repite esto para cada dominio y asegúrate de que HAProxy pueda leer los archivos: ```bash sudo chmod 600 /etc/haproxy/certs/*.pem ``` --- ### 4️⃣ **Configurar HAProxy para HTTPS** Edita el archivo de configuración de HAProxy (generalmente en `/etc/haproxy/haproxy.cfg`) y agrega la configuración SSL para cada dominio: ```haproxy frontend https_front bind *:443 ssl crt /etc/haproxy/certs/ejemplo.com.pem crt /etc/haproxy/certs/ mode http use_backend backend_ejemplo if { hdr(host) -i ejemplo.com } backend backend_ejemplo server srv1 192.168.1.100:80 check ``` Esto permite que HAProxy seleccione el certificado correcto según el **hostname** de la solicitud. --- ### 5️⃣ **Renovación Automática** Let's Encrypt requiere renovar los certificados cada 90 días. Configura una tarea en **cron** para renovar y actualizar los archivos automáticamente: Edita el crontab: ```bash sudo crontab -e ``` Añade esta línea: ```bash 0 3 * * * certbot renew --quiet && systemctl reload haproxy ``` Esto intentará renovar los certificados diariamente a las **3 AM** y recargará HAProxy si hay cambios. --- ### ✅ **Conclusión** Con esto, HAProxy gestionará múltiples sitios con SSL gratuito de Let's Encrypt. Cada dominio tendrá su propio certificado y la renovación será automática. 🚀 Si necesitas ayuda con algún paso, dime cómo tienes configurado tu HAProxy y lo ajustamos. 😃