Cómo renovar un certificado Puppet CA expirado

El tiempo no pasa en balde para nadie, ni siquiera para los servidores de Puppet. De hecho, el otro día expiró un certificado de CA de uno servidor Puppet, integrado en uno de los servidores de Foreman con los que trabajo.  Por lo que os voy a explicar como renovar un certificado Puppet CA expirado. Esto también va para mis apuntes.

Cómo renovar un certificado Puppet CA expirado

En mi caso el certificado se creó en el 2017, y justo ahora, a fecha de este artículo, había expirado, un lustro después, esto es, cinco años.

Antes de nada indicar que en este caso ser trata de un servidor con Puppet 6 instalado sobre un RHEL 7.

Siempre es recomendable hacer un backup previo de la máquina virtual, como es mi caso, vía instantánea.

En el lado del servidor

Primero de todo vamos a parar puppet y eliminar todos los certificados. Es es crítico, recordar que después tenéis que volver a conectar todos los agentes.

service puppet stop
for i in `puppetserver ca list --all | tail -1 | awk '{print $1}'`; \
do puppetserver ca clean --certname $i; done

A continuación paramos el servicicio «puppetserver» y eliminamos los certificado SSL

service puppetserver stop
rm -rf /etc/puppetlabs/puppet/ssl/*

Una vez hecho esto volvemos a generar la CA

puppetserver ca setup

Ahora ya podemos a levantar los servicios:

service puppetserver start
service puppet start

En el lado del cliente

Eliminamos los certificados SSL

rm -rf /etc/puppetlabs/puppet/ssl/*

Reiniciamos el agente de puppet.

systemctl restart puppet

Ahora volvemos a pedir la conexión con el servidor de Puppet.

puppet agent -tv

Para más info:

Cómo instalar Puppet en Ubuntu 20.04

Creación de módulos de Puppet

Trabajando con Puppet

Fuentes consultadas

redhat.com – How to regenerate the Puppet CA and Puppet Client certificates for Red Hat Satellite?