
Certificado caducado en vCenter no visible en Certificate Management
Imagina que recibes esta alerta en vCenter y el certificado no aparece por ningún lado:
Certificate “OU=mID-…, CN=data-encipherment” from “data-encipherment” expires on 2023-09-22 Pero no es visible en Certificate Management y todo allí aparece como válido
Ese detalle es una pista clara. Con casi total certeza no se trata de uno de los certificados estándar de Machine SSL o Solution User que gestionas desde la interfaz. Es un certificado interno de cifrado de datos de VMware almacenado en VECS (VMware Endpoint Certificate Store).
Por eso no lo ves en ninguno de estos apartados, ya que reside en otra ubicación:
- Administración → Certificate Management
- Machine SSL
- Solution Users
Qué significa habitualmente "data-encipherment"
En vCenter, ese CN se asocia típicamente a uno de estos elementos:
- Cifrado de máquinas virtuales en vSphere
- Cifrado de vSAN
- Integración con KMS
- Servicios internos de cifrado
- Componentes internos de confianza de vCenter
Estos certificados suelen generarse de forma automática, no están orientados al usuario y se guardan en almacenes de VECS como DATA_ENCIPHERMENT. A veces caducan y se sustituyen, pero la entrada antigua permanece y activa alarmas, un comportamiento clásico en vCenter.
Paso 1: Conectarse por SSH al VCSA
ssh root@your-vcenter
Luego habilita Bash:
shell
Paso 2: Listar todos los almacenes de VECS
/usr/lib/vmware-vmafd/bin/vecs-cli store list
En la salida de la consola, busca nombres de almacenes parecidos a estos:
- MACHINE_SSL_CERT
- TRUSTED_ROOTS
- data-encipherment
- DATA_ENCIPHERMENT
Si encuentras un almacén denominado data-encipherment o similar, ese es tu objetivo.
Paso 3: Listar los certificados del almacén
Por ejemplo, este comando lista cada entrada de ese almacén con su información detallada:
/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store DATA_ENCIPHERMENT --text
Eso debería mostrar el alias, la fecha de caducidad (Not After) y el asunto de cada entrada. Localiza la que haya caducado y coincida con:
CN=data-encipherment
Paso 4: Eliminar el certificado caducado
Si está claramente caducado y no es el elemento activo:
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store DATA_ENCIPHERMENT --alias <alias_name>
Ten cuidado en este punto. NO elimines el certificado válido actual; borra únicamente el duplicado caducado.
Paso 5: Reiniciar los servicios de certificados
Tras la limpieza, reinicia los servicios de certificados:
service-control --restart vmcad
service-control --restart vpxd
O, si lo prefieres, reinicia todos los servicios al mismo tiempo:
service-control --stop --all
service-control --start --all
Por qué no se muestra en la interfaz
La interfaz de Certificate Management solo muestra Machine SSL, Solution Users y Trusted Roots. NO expone almacenes de cifrado internos, ciertos almacenes heredados ni entradas específicas de VECS. Por eso el certificado parece invisible.
Importante: antes de eliminar
Si utilizas cifrado de VM en vSphere, cifrado de vSAN o un KMS externo, compruébalo dos veces con:
/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store DATA_ENCIPHERMENT --text
Asegúrate de que haya un certificado nuevo y válido presente, y de que no estás borrando el único certificado de ese almacén. Si únicamente ves un certificado caducado sin ningún sustituto, quizá necesites regenerarlo en lugar de eliminarlo.
Si quieres mayor seguridad
Haz una copia de seguridad previa de VECS para guardar un registro del almacén:
mkdir /root/vecs_backup
/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store DATA_ENCIPHERMENT --text > /root/vecs_backup/data_enc.txt
Incluso puedes crear un snapshot del VCSA antes de aplicar cualquiera de estos cambios.
El escenario probable en el 90% de los casos
Esto es lo que suele ocurrir:
- vCenter renovó automáticamente el certificado de cifrado
- El certificado antiguo caducó
- La entrada caducada no se limpió de forma automática
- La alarma quedó bloqueada en el sistema
Eliminar la entrada caducada del almacén limpia la alerta en vCenter.