Select Page

Instalamos Openssl

sudo apt-get install openssl libssl1.0.0 -y

or

 sudo yum install openssl libssl1.0.0 -y

Generamos el file configuracion openssl.cnf (reemplazo openssl por el nombre de mi domain) # example.cnf (reemplazar example por por eg: tn – tambien dentro del archivo)

[req]
 distinguished_name = req_distinguished_name
 x509_extensions = v3_req
 prompt = no
 req_extensions = v3_req
 [req_distinguished_name]
 C = AR
 ST = CABA
 L = CABA
 O = Artear
 OU = DevOps
 CN = *.example.com
 [ v3_ca ]
 subjectKeyIdentifier=hash
 authorityKeyIdentifier=keyid:always,issuer
 basicConstraints = critical, CA:TRUE, pathlen:3
 keyUsage = critical, cRLSign, keyCertSign
 nsCertType = sslCA, emailCA
 [v3_req]
 basicConstraints = CA:FALSE
 keyUsage = nonRepudiation, digitalSignature, keyEncipherment
 extendedKeyUsage=serverAuth
 subjectAltName = @alt_names
 [alt_names]
 DNS.1 = *.example.com
 DNS.2 = example.com
 DNS.3 = cdn.example.com

Ahora vamos a ejecutar lo siguiente y cuando nos pida la clave, tenemos que poner una que recordemos porque la vamos a utilizar para firmar nuestros proximos ssl.

export prefix="example"
openssl genrsa -aes256 -out ca.key.pem 2048
chmod 400 ca.key.pem
openssl req -new -x509 -subj "/CN=myca" -extensions v3_ca -days 3650 -key ca.key.pem -sha256 -out ca.pem -config $prefix.cnf
openssl x509 -in ca.pem -text -noout

Verificamos que los datos de nuestra CA correctamente de esta manera.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ahora vamos a proceeder a generar el certificado ssl y al final lo vamos a verificar.

openssl genrsa -out $prefix.key.pem 2048
openssl req -subj "/CN=$prefix" -extensions v3_req -sha256 -new -key
$prefix.key.pem -out $prefix.csr
openssl x509 -req -extensions v3_req -days 3650 -sha256 -in $prefix.csr -CA
ca.pem -CAkey ca.key.pem -CAcreateserial -out $prefix.crt -extfile
$prefix.cnf
openssl x509 -in $prefix.crt -text -noout

Al final nos vamos a quedar con estos certificados en el directorio ,luego vamos a copiar los ssl generados y configurarlos en nuestro traefik.

Levantamos nuestro docker con traefik y cuando entremos a la url vamos a ver este error. Pero nos mantenemos tranquilos!!!

Ahora vamos a copiar el archivo de nuestra CA a un directorio de nuestra maquina para poder abrirlo de chrome.

Ingresamos en las settings de chrome y vamos a opciones avanzadas tenemos que ingresar en manage certificates.

Dentro de Manage certificates vamos a “AUTHORITIES” y ejecutamos el ca.pem seleccionamos todo y importamos! Si todo salio bien cuando ingresemos a nuestro sitio estara el certificado correcto y firmado por nuestra CA.