Después de generar un nuevo certificado raíz firmado por VMCA, puede reemplazar todos los certificados SSL de máquina en el entorno.

Antes de empezar

Prepárese para detener todos los servicios e iniciar los servicios que controlan la propagación y el almacenamiento de certificados.

Por qué y cuándo se efectúa esta tarea

Cada máquina debe tener un certificado SSL de máquina para establecer una comunicación segura con otros servicios. En una implementación de varios nodos, debe ejecutar los comandos de generación de certificados SSL de máquina en cada nodo. Use el parámetro --server para apuntar a Platform Services Controller desde vCenter Server con Platform Services Controller externo.

Procedimiento

  1. Haga una copia de certool.cfg para cada máquina que necesite un certificado nuevo.

    Puede encontrar certool.cfg en las siguientes ubicaciones:

    Sistema operativo

    Ruta de acceso

    Windows

    C:\Archivos de programa\VMware\vCenter Server\vmcad

    Linux

    /usr/lib/vmware-vmca/share/config/

  2. Editar archivo de configuración personalizado de cada máquina a fin de incluir el FQDN de la máquina.

    Ejecute NSLookup sobre la dirección IP de la máquina a fin de ver el listado de DNS del nombre y usar ese nombre en el campo Nombre de host del archivo.

  3. Genere un par de archivos de clave pública/privada y un certificado para cada archivo pasando el archivo de configuración que acaba de personalizar.

    Por ejemplo:

    certool --genkey --privkey=machine1.priv --pubkey=machine1.pub
    certool --gencert --privkey=machine1.priv --cert machine1.crt --Name=Machine1_Cert --config machine1.cfg
  4. Detenga todos los servicios e inicie los servicios que se ocupan de la creación, de la propagación y del almacenamiento de certificados.

    Los nombres de servicios en Windows no son los mismos que en vCenter Server Appliance.

    Windows

    service-control --stop --all
    service-control --start VMWareAfdService
    service-control --start VMWareDirectoryService
    service-control --start VMWareCertificateService
    

    vCenter Server Appliance

    service-control --stop --all
    service-control --start vmafdd
    service-control --start vmdird
    service-control --start vmcad
    
  5. Agregue el certificado nuevo a VECS.

    Todas las máquinas necesitan el certificado nuevo en el almacén de certificados local para comunicarse mediante SSL. Primero debe eliminar la entrada existente y, a continuación, agregar la nueva.

    vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT  
    vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert machine1.cert
     --key machine1.priv
  6. Reinicie todos los servicios.
    service-control --start --all
    

Reemplazo de certificados de una máquina por certificados firmados por VMCA

  1. Cree un archivo de configuración para el certificado SSL y guárdelo como ssl-config.cfg en el directorio actual.

    Country = US
    Name = vmca-<PSC-FQDN-example>
    Organization = <my_company>
    OrgUnit = <my_company Engineering>
    State = <my_state> 
    Locality = <mytown>
    Hostname = <FQDN>
  2. Genere un par de claves para el certificado SSL de máquina. Ejecute este comando en cada nodo de administración y en el nodo de Platform Services Controller. No se requiere la opción --server.

    C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=ssl-key.priv --pubkey=ssl-key.pub
    

    Los archivos ssl-key.priv y ssl-key.pub se crean en el directorio actual.

  3. Genere el nuevo certificado SSL de máquina. Este certificado está firmado por VMCA. Si reemplazó el certificado raíz de VMCA por un certificado personalizado, VMCA firma todos los certificados con la cadena completa.

    • En una instalación integrada o un nodo de Platform Services Controller:

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vmca-ssl.crt --privkey=ssl-key.priv --config=ssl-config.cfg
    • En vCenter Server (instalación externa):

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vmca-ssl.crt --privkey=ssl-key.priv --config=ssl-config.cfg --server=<psc-ip-or-fqdn>

    El archivo new-vmca-ssl.crt se crea en el directorio actual.

  4. (Opcional) Enumere el contenido de VECS.

    "C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli store list
    • Establezca Platform Services Controller como salida:

      MACHINE_SSL_CERT
      TRUSTED_ROOTS
      TRUSTED_ROOT_CRLS
      machine
    • Establezca vCenter Server como salida:

      output (on vCenter):
      MACHINE_SSL_CERT
      TRUSTED_ROOTS
      TRUSTED_ROOT_CRLS
      machine
      vpxd
      vpxd-extension
      vsphere-webclient
      sms
  5. Reemplace el certificado SSL de máquina en VECS por el nuevo certificado SSL de máquina. Los valores --store y --alias tienen que coincidir exactamente con los nombres predeterminados.

    • En Platform Services Controller, ejecute el siguiente comando para actualizar el certificado SSL de máquina en el almacén MACHINE_SSL_CERT.

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert new-vmca-ssl.crt --key ssl-key.priv
      
    • En cada nodo de administración o en la implementación integrada, ejecute el siguiente comando para actualizar el certificado SSL de máquina en el almacén MACHINE_SSL_CERT. Debe actualizar el certificado para cada máquina por separado, ya que cada una de ellas tiene un FQDN diferente.

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert new-vmca-ssl.crt --key ssl-key.priv
      

Qué hacer a continuación

También puede reemplazar los certificados de sus hosts ESXi. Consulte la publicación Seguridad de vSphere.

Después de reemplazar el certificado raíz en una implementación de varios nodos, debe reiniciar los servicios en todas las instancias de vCenter Server con nodos de Platform Services Controller externo.