GENERAR CERTIFICADOS DE HOST O WILDCARD CON CERTBOT ( LET’S ENCRYPT )
By: Date: julio 6, 2020 Categories: Consultoria y Manuales

¿ que es LET’S ENCRYPT ?

Es una autoridad certificadora que puede darte certificados SSL para tu dominio sin costo alguno para ti.

En el 2014 en este mismo blog hice una critica a Google pues fue el año en el se impuso que las paginas http fueran consideradas inseguras, y solo se recomendarían las seguras. Al final de este articulo CHROMIUM QUIERE MOSTRAR HTTP COMO INSEGURO, LA PARANOIA DE LA SEGURIDAD SE SALE DE CONTROL
hice una crítica a Google que debía convertirse en una autoridad certificadora y dar los certificados de forma gratuita, bueno. Google no lo hizo, pero let’s encript si, esto es bueno pues yo veía hasta antes de Let’s Encript como un impuesto la decisión de Google, pues en el 2014 las autoridades certificadoras comerciales cobraban y aun cobran una cantidad de dinero excesiva por cada año de la valides del certificado, una de las mas baratas. Goddady actualmente cobra

Esto en dólares es un aproximado de 60 USD anuales por año, que se suma al costo del registrar del dominio y los costos de mantenimiento de los servicios de webhosting. Afortunadamente Let’s encrypt llega a a salvar el día y ahora todos pueden asegurar sus sitios con certificados libre de costo

¿ Que es Cerbot ?

Esa un script de línea de comandos que te permite generar un certificado para tu dominio por default en maquinas con GNU/Linux, aunque al estar escrito en Python podría hacerlo en prácticamente cualquier sistema operativo.

Generar certificados

Certificado por host

Es la forma mas facil de generar el certificado, debes estar en la misma maquina con la página ya configurada en http, solo debes proporcionar el dominio y host así como el directorio donde están los archivos del sitio web. La verificación es muy simple, el script escribe unos archivos en el directorio del sitio web que deben quedar públicos en internet, luego let’script revisa que esos archivos existen y se ven desde el internet y confirma que tu eres el dueño del sitio web demostrando que puedes escribir archivos en el simplemente porque tu eres el webmaster, inmediatamente se genera la llave privada, el archivo de cadena y el certificado. Aunque hay opciones para que certbot los configure automáticamente por ti, yo prefiero hacerlo a la vieja escuela, todo manual los archivos del certificado estarán en letsencrypt

Comando.

certbot certonly –webroot -w /www/html -d www.lastdragon.net –register-unsafely-without-email

Desventaja

Si necesita un certificado para chat,mail o cualquier otro host, tendrá que configurar un sitio web para cada uno y lanzar el comando para cada host. Este comando solo esta pensado para quienes quieren tener un certificado de su sitio web y nada mas.

Una forma de subsanar esto es usar mas de un parámetro -d por ejemplo -d www.lastdragon.net -d chat.latdragon.net -d mail.lastdragon.net

Aun así se generarán certificados independientes por cada host

Certificado por Wildcard

Un certificado wildcard es un poco mas complicado de obtener por que no hay que demonstrar que se controla un sitio web, sino que se controla el dominio y con esto demostrar que uno es el dueño o al menos el sysadmin técnico del dominio, la ventaja es que se obtiene un único certificado que ampara todos los hosts en el dominio por lo tanto puede usarse el mismo certificado para www, mail, chat, etc.

Comando

certbot certonly –manual -d *.lastdragon.net –register-unsafely-without-email –preferred-challenges dns –agree-tos

Se obtiene una salida similar a:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator manual, Installer None
Starting new HTTPS connection (1): acme-v02.api.letsencrypt.org
Obtaining a new certificate
Performing the following challenges:
dns-01 challenge for lastdragon.net

NOTE: The IP of this machine will be publicly logged as having requested this
certificate. If you’re running certbot in manual mode on a machine that is not
your server, please ensure you’re okay with that.

Are you OK with your IP being logged?

(Y)es/(N)o: Y

Please deploy a DNS TXT record under the name
_acme-challenge.lastdragon.net with the following value:

atGrplklRdPq6pQQJmsmwGaFhMMLSl99xafhntxf9Lk

Before continuing, verify the record is deployed.

Press Enter to Continue

En este momento el certbot estará en pausa esperando que se cree un registro TXT en el dominio con un código para este caso el registro debe ser _acme-challenge.lastdragon.net y el valor atGrplklRdPq6pQQJmsmwGaFhMMLSl99xafhntxf9Lk

Ejemplo de registro en bind9

_acme-challenge.lastdragon.net. 60 IN TXT “atGrplklRdPq6pQQJmsmwGaFhMMLSl99xafhntxf9Lk”

Una vez activado los cambios en el servidor de DNS se le da enter en el script de certbot, quien pedirá a las apis de let’s encrypt que revisen que se cumplió con el reto de DNS, si el reto de crear un registro TXT con el valor es exitoso, entonces se genera el certificado wildcard

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *