Llegó la hora de renovar por primera vez el certificado SSL provisto por Let's Encrypt para el blog. Recordemos que los certificados SSL que otorga Let's Encrypt (de forma gratuita) tienen una validez de sólo tres meses, por seguridad, claro está. Este breve artículo explica cómo funciona el proceso de renovación.



ACTUALIZACIÓN (14/3/2017): letsencrypt-auto es ahora certbot-auto. Por favor remitirse al artículo Cómo generar un certificado SSL/TLS gratis con certbot.

De acuerdo a la guía rápida de Let's Encrypt, renovar un certificado es tan simple como ejecutar:

./letsencrypt renew

Este comando renueva de forma automática todos los certificados instalados en el servidor que están a punto de expirar (usualmente menos de 30 días de validez).

Sin embargo, este comando no funciona para aquellos certificados generados con el método manual (certonly -a manual). Por ende, para renovar estos certificados, se debe repetir el proceso de generación (el mismo explica el artículo Cómo obtener un certificado SSL gratis de Let's Encrypt):

# ./letsencrypt-auto certonly -a manual -d linuxito.com -d www.linuxito.com --server https://acme-v01.api.letsencrypt.org/directory --agree-dev-preview

Esto significa que se repite el proceso de validación de los dominios involucrados. Revisar el artículo Cómo obtener un certificado SSL gratis de Let's Encrypt para repasar el proceso de validación sobre servidores Nginx y Apache.

Al final el proceso de validación y creación del nuevo certificado se generan nuevos archivos para la clave privada, el certificado y la cadena (dentro del directorio "archive"):

root@linuxito:/etc/letsencrypt# ls -lth archive/www.linuxito.com/
total 48K
-rw-r--r-- 1 root root 1.8K Feb 29 06:23 cert3.pem
-rw-r--r-- 1 root root 1.7K Feb 29 06:23 chain3.pem
-rw-r--r-- 1 root root 3.5K Feb 29 06:23 fullchain3.pem
-rw-r--r-- 1 root root 1.7K Feb 29 06:23 privkey3.pem
-rw-r--r-- 1 root root 1.7K Dec 16 10:54 chain2.pem
-rw-r--r-- 1 root root 3.5K Dec 16 10:54 fullchain2.pem
-rw-r--r-- 1 root root 1.8K Dec 16 10:54 cert2.pem
-rw-r--r-- 1 root root 1.7K Dec 16 10:54 privkey2.pem
-rw-r--r-- 1 root root 3.4K Dec 14 08:31 fullchain1.pem
-rw-r--r-- 1 root root 1.7K Dec 14 08:31 chain1.pem
-rw-r--r-- 1 root root 1.7K Dec 14 08:31 privkey1.pem
-rw-r--r-- 1 root root 1.8K Dec 14 08:31 cert1.pem

Aunque, dentro del directorio "live", los enlaces simbólicos apuntan a los archivos pertenecientes al nuevo certificado:

root@linuxito:/etc/letsencrypt# ll live/www.linuxito.com/
total 0
lrwxrwxrwx 1 root root 40 Feb 29 06:23 cert.pem -> ../../archive/www.linuxito.com/cert3.pem
lrwxrwxrwx 1 root root 41 Feb 29 06:23 chain.pem -> ../../archive/www.linuxito.com/chain3.pem
lrwxrwxrwx 1 root root 45 Feb 29 06:23 fullchain.pem -> ../../archive/www.linuxito.com/fullchain3.pem
lrwxrwxrwx 1 root root 43 Feb 29 06:23 privkey.pem -> ../../archive/www.linuxito.com/privkey3.pem

Si se ha configurado el servidor Web para que tome el certificado y clave privada desde estos enlaces simbólicos, no será necesario realizar cambios en la configuración. Sólo basta con reiniciar el servicio (Nginx o Apache) para que lea los nuevos archivos:

# service nginx restart

Para verificar el cambio de certificado simplemente se puede utilizar un navegador Web:


Tal vez pueda interesarte


Compartí este artículo