Demo

Cambio de certificados digitales VMware Cloud Director 10.1

Hola, en este post vamos a realizar el cambio de los certificados digitales en la células de vCD. Para este caso en particular, los certificados que usaremos son del tipo Wildcard y fueron generados previamente usando un archivo de petición de certificado o CSR y una llave privada (archivos que podemos generar con OpenSSL por ejemplo); por lo tanto como prerequisitos es necesario tener los archivos PEM/CER/CRT *.domain.com que se adquiere enviado el CSR a la entidad autenticadora o CA para que los firme, los archivos de root o intermediate de la Autoridad Certificadora y el archivo de llave privada KEY.

Primero, debemos realizar un snapshot, se recomienda realizar el snapshot sin habilitar la opción de capturar memoria de la VM para evitarnos problemas con la memoria que usa la BDD vPostgres embebida.

Importación de certificados Wildcard

Para importar los certificados que hemos obtenido de la CA, debemos seguir los siguientes pasos:

Usando OpenSSL podemos convertir los certificados en cadenas PFX o en PKCS12 que son formatos estándar.

openssl pkcs12 -export -in certificado_wildcard.crt -inkey llave_privada.key -CAfile certificados_CA.crt -name http -passout pass:'password' -out http.pfx -chain

y

openssl pkcs12 -export -in certificado_wildcard.crt -inkey llave_privada.key -CAfile certificados_CA.crt -name consoleproxy -passout pass:'password' -out consoleproxy.pfx -chain

Porque no olvidemos que tenemos dos servicios dentro de vCD el servicio de HTTPS y el servicio CONSOLEPROXY para que funcionen las consolas de las VMs.

Las cadenas han sido creadas, el siguiente paso es importar las cadenas al contenedor JAVA que usa vCD en este caso certificates.ks

EL comando que se debe usar es KEYTOOL previamente JAVA debe estar instalado en el servidor que estamos usando, generalmente se corren los comandos en las células de vCD.

$VCLOUD_HOME/jre/bin/keytool -importkeystore -deststorepass 'password' -destkeystore /opt/vmware/vcloud-director/certificates.ks -deststoretype JCEKS -srckeystore http.pfx -srcstoretype PKCS12 -srcstorepass 'password'

para el servicio HTTP

$VCLOUD_HOME/jre/bin/keytool -importkeystore -deststorepass 'password' -destkeystore /opt/vmware/vcloud-director/certificates.ks -deststoretype JCEKS -srckeystore consoleproxy.pfx -srcstoretype PKCS12 -srcstorepass 'password'

para el servicio de CONSOLEPROXY

donde; 

importkeystore = sentencia para importar la cadena de certificados en el contenedor KS

destkeystore = ubicación del contenedor JAVA de los certificados que posterior se usaran para el reemplazo

deststoretype = formato de archivo contenedor que vCD soporta JCEKS/PKCS12, recomendado usar PKCS12

srckeystore = archivo que contiene la cadena de certificados, por lo general tiene formato PFX

Luego de realizar estos pasos tendremos un archivo certificates.ks con contraseña password

Configurar certificados en servicios de vCloud Director

Debemos asegurarnos que el archivo certificates.ks tenga como propietario al usuario vcloud usando chown vcloud.vcloud certificates.ks 

Y para evitar que clientes estén realizando trabajos debemos colocar las células en modo mantenimiento corriendo el siguiente comando:

$VCLOUD_HOME/bin/cell-management-tool -u administrator cell --quiesce true

Luego usando cell-management-tool cambiamos los certificados que esta usando el vCD por los nuevos

$VCLOUD_HOME/bin/cell-management-tool certificates -j -p -k certificates.ks -w 'password'

donde;

certificates = opción para manipular certificados

j = opción para manipular certificados de HTTP

p = opción para manipular certificados de CONSOLEPROXY

k = opción para usar el contenedor en nuestro ejemplo certificates.ks

w = opción para colocar la contraseña del contenedor que en nuestro caso es "password"

Al finalizar, se debe realizar un reinicio de los servicios de vCD

service vmware-vcd restart

Importante,  si tenemos un ambiente con HA de vPostgres y varios vCD app, debemos realizar los cambios en la célula primaria, luego ir cambiando en cada una de las células secundarias o de aplicación. 

Tags: Cloud, Appliance, VMwareCloudDirector, vCD10.2, certificados , CloudDirector, wildcard

Escribir un comentario


Código de seguridad
Refescar

Este Blog usa cookies propias y de terceros para optimizar la navegación y que puedas ver correctamente su contenido. Si permaneces en el sitio asumiremos que estas de acuerdo .