Wildcard con Cerbot y Let's Encrypt

De enunpimpam
Saltar a: navegación, buscar


La verdad que la automatización de Cerbot para generar certificados para todos los dominios que están alojados en un servidor es increíble, solo tienes que tener configurado los VirtualHost para cada dominio.

Y que los dominios estén apuntado a la ip de tu servidor en el gestor de hosting, ejecutas Cerbot el se ocupa de todo hasta de redireccionarte htpp a https.

Pero si te interesa tener varios dominios o Subdominio con el mismo certificado lo interesante seria aplicar Wildcard en los certificado, lo que viene siendo un comodín.

Los pasos son sencillos, pero requieren un cierto proceso.

Primero entramos al servidor donde estarán alojados los dominios, no es necesario configurar los VirtualHost ya que realizaremos la petición para generar los siguientes archivos.


privkey.pem la llave privada para el certificado.

fullchain.pem el certificado que se usara en el servidor web

chain.pem OCSP para Nginx

cert.pem Según Cerbot no usar, ver documentación.


Para Apache2 y ESXi solo necesito los dos primeros.

Vamos a crear un certificado para eldominio.com y Wildcard para el subdominio aqui.eldominio.com así que cualquier nombre dentro del subdominio *.aqui.eldominio.com podrá usar el mismo certificado.


certbot certonly --manual --preferred-challenges dns --server https://acme-v02.api.letsencrypt.org/directory --manual-public-ip-logging-ok -d *.aqui.eldominio.com -d eldominio.com


Cerbot procesa nuestra petición y se mantiene a la espera a que realicemos una nueva zona con el nombre _acme-challenge.aqui.eldominio.com en nuestro gestor de hosting y le asignemos el Tipo TXT(Text) con la cadena Brlks-BmN0Y7TZo2jBcd7Z7UZalqRvgHA8bokUVX1dY.

Obtaining a new certificate
Performing the following challenges:
dns-01 challenge for '''aqui.eldominio.com'''
dns-01 challenge for '''eldominio.com'''

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please deploy a DNS TXT record under the name
'''_acme-challenge.aqui.eldominio.com''' with the following value:

'''Brlks-BmN0Y7TZo2jBcd7Z7UZalqRvgHA8bokUVX1dY'''

Before continuing, verify the record is deployed.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Press Enter to Continue

Dependiendo del Hosting eso puede tardar un pelin, un pelin mucho, pero lo normal que que sea rápido, si tenemos que registrar muchos dominio o subdominio, seria conveniente comprobar que los record de los dns esta creados y propagados, podemos buscar cualquier servicio de lookup dns record mxtoolbox. Tenemos que introducir _acme-challenge.aqui.eldominio.com seleccionar el timpo TXT Lookup, si devuelve la cadena de texto, es que ya esta podemos pulsar enter.


Congratulations! Your certificate and chain have been saved at:
   '''/etc/letsencrypt/live/aqui.eldominio.com/fullchain.pem'''
   Your key file has been saved at:
   '''/etc/letsencrypt/live/aqui.eldominio.com/privkey.pem'''
   Your cert will expire on 2020-08-06. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot
   again. To non-interactively renew *all* of your certificates, run
   "certbot renew"
 - If you like Certbot, please consider supporting our work by:

Comprobación

Podemos comprobar que los certificados están funcionando sin la necesidad de instalarlos, simplemente debemos crear el subdominio en el gestor de hosting asignarle la IP de nuestro servidor.

openssl s_server -accept 8888 -WWW -cert /etc/letsencrypt/live/host1.aqui.eldominio.com/fullchain.pem -key /etc/letsencrypt/live/host1.aqui.eldominio.com/privkey.pem

Ahora abrimos un navegador...

https://host1.aqui.eldominio.com:8888

El candado esta, y podemos comprobar que el certificado esta funcionado.

Petición manual para validad certificado

sudo certbot certonly --manual --manual-auth-hook /etc/letsencrypt/acme-dns-auth.py --preferred-challenges dns --debug-challenges -d \*.your-domain -d your-domain