Certificado gratuito con Let’s Encrypt e ispconfig
1. Descargar cliente Let’s Encrypt
3.1. Guardar certificado en ISPConfig
1. Descargar cliente Let’s Encrypt
git clone https://github.com/Certbot/Certbot
2. Crear certificado
cd Certbot/ ./certbot-auto certonly -w /var/www/MI_RUTA_WEB/web -d midominio.es -d www.midominio.es --apache --rsa-key-size 4096 --email micorreo@midominio.es
Si todo acaba bien veremos un mensaje parecido a este:
- Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/midominio.es/fullchain.pem. Your cert will expire on 2017-06-20. To obtain a new or tweaked version of this certificate in the future, simply run certbot-auto again. To non-interactively renew *all* of your certificates, run "certbot-auto renew" ...
3. Configuración Apache
A continuación se muestran las opciones de configuración de apache para ISPConfig o directamente sobre el virtualhost de apache.
3.1. Guardar certificado en ISPConfig
Hay que copiar el contenido de los siguientes archivos en la configuración SSL del website:
SSL Key: /etc/letsencrypt/live/midominio.es/privkey.pem SSL Certificate: /etc/letsencrypt/live/midominio.es/cert.pem SSL Bundle: /etc/letsencrypt/live/midominio.es/chain.pem
A continuación seleccionamos «Guardar certificado» en las acciones y le damos a guardar.
Con esto ya estaría configurado el certificado.
Vamos a la pestaña «Opciones» del website y en el campo para «Apache Directives» ponemos:
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Con esto desviaremos el tráfico HTTP a HTTPS.
3.2. Configuración manual del virtualhost de apache
Si lo queremos configurar directamente sobre apache, además del resto de configuraciones del virtualhost para el puerto 443, tendremos que configurar la ruta a los certificados como sigue:
SSLCertificateFile /etc/letsencrypt/live/midominio.es/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/midominio.es/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/midominio.es/chain.pem
4. Renovación automática
Por defecto, el tiempo de caducidad del certificado es de 3 meses, por suerte, con el cliente Certbot, podemos automatizar el proceso de renovación muy facilmente. Para esto crearemos una nueva tarea en el CRON que se ejecute todos los lunes a la una de la madrugada:
crontab -e
00 01 * * 1 /ruta/a/Certbot/certbot-auto renew >> /var/log/certbot-renew.log