Después de reemplazar los certificados SSL de máquina, puede reemplazar todos los certificados de usuarios de solución. Los certificados de usuario de solución deben ser válidos, es decir, que no estén caducados, pero la infraestructura de certificados no utiliza ninguna otra información del certificado.

Muchos clientes de VMware no reemplazan los certificados de usuario de las soluciones. Reemplazan solo los certificados SSL de los equipos con certificados personalizados. Este enfoque híbrido satisface los requisitos de sus equipos de seguridad.
  • Los certificados se sientan detrás de un proxy, o bien son certificados personalizados.
  • No se utilizan CA intermedias.

Debe reemplazar el certificado de usuario de solución de la máquina en cada nodo de administración y en cada nodo de Platform Services Controller. Debe reemplazar los certificados de usuarios de solución solo en cada nodo de administración. Utilice el parámetro --server para apuntar a Platform Services Controller cuando ejecute comandos en un nodo de administración con una instancia externa de Platform Services Controller.

Nota: Cuando se enumeran certificados de usuario de solución en implementaciones de gran tamaño, el resultado de dir-cli list incluye todos los usuarios de solución de todos los nodos. Ejecute vmafd-cli get-machine-id --server-name localhost para encontrar el identificador de máquina local para cada host. El nombre del usuario de solución incluye el identificador de máquina.

Requisitos previos

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

Procedimiento

  1. Haga una copia de certool.cfg, quite los campos Nombre, Dirección IP, Correo electrónico y Nombre DNS, y cambie el nombre del archivo: por ejemplo, a sol_usr.cfg.
    Se pueden nombrar los certificados desde la línea de comandos como parte de la generación. La otra información no es necesaria para los usuarios de solución. Si se deja la información predeterminada, los certificados generados podrían resultar confusos.
  2. Genere un par de archivos de clave pública/privada y un certificado para cada usuario de solución y pase el archivo de configuración que recién personalizó.
    Por ejemplo:
    certool --genkey --privkey=vpxd.priv --pubkey=vpxd.pub 
    certool --gencert --privkey=vpxd.priv --cert vpxd.crt --Name=VPXD_1 --config sol_usr.cfg
  3. Busque el nombre de cada usuario de solución.
    dir-cli service list 
    
    Puede usar el identificador único que se devuelve al reemplazar los certificados. La entrada y la salida deben verse de la siguiente manera.
    C:\Program Files\VMware\vCenter Server\vmafdd>dir-cli service list
    Enter password for [email protected]:
    1. machine-1d364500-4b45-11e4-96c2-020011c98db3
    2. vpxd-1d364500-4b45-11e4-96c2-020011c98db3
    3. vpxd-extension-1d364500-4b45-11e4-96c2-020011c98db3
    4. vsphere-webclient-1d364500-4b45-11e4-96c2-020011c98db3
    Cuando enumera certificados de usuario de solución en implementaciones de varios nodos, el resultado de la lista de dir-cli incluye todos los usuarios de solución de todos los nodos. Ejecute vmafd-cli get-machine-id --server-name localhost para encontrar el identificador de máquina local para cada host. El nombre del usuario de solución incluye el identificador de máquina.
  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.
    Nota: Si el entorno utiliza una instancia externa de Platform Services Controller, no es necesario detener e iniciar VMware Directory Service (vmdird) ni VMware Certificate Authority (vmcad) en el nodo de vCenter Server. Estos servicios se ejecutan en Platform Services Controller.
    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. En cada usuario de solución, reemplace el certificado actual en vmdir y, a continuación, en VECS.
    El siguiente ejemplo muestra cómo reemplazar los certificados del servicio vpxd.
    dir-cli service update --name <vpxd-xxxx-xxx-7c7b769cd9f4> --cert ./vpxd.crt
    vecs-cli entry delete --store vpxd --alias vpxd
    vecs-cli entry create --store vpxd --alias vpxd --cert vpxd.crt --key vpxd.priv
    
    
    Nota: Los usuarios de solución no podrán autenticarse en vCenter Single Sign-On si no se reemplaza el certificado en vmdir.
  6. Reinicie todos los servicios.
    service-control --start --all
    

Ejemplo: Usar los certificados de usuarios de solución firmados por VMCA

  1. Genere un par de claves pública/privada para cada usuario de solución. Esto incluye un par para el usuario de solución de la máquina en cada instancia de Platform Services Controller y en cada nodo de administración, y un par para cada usuario de solución adicional (vpxd, vpxd-extension, vsphere-webclient) en cada nodo de administración.
    1. Genere un par de claves para el usuario de solución de la máquina de una implementación integrada o para el usuario de solución de la máquina de Platform Services Controller.
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=machine-key.priv --pubkey=machine-key.pub
      
    2. (Opcional) Para implementaciones con una instancia de Platform Services Controller externa, genere un par de claves para el usuario de solución de la máquina en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=machine-key.priv --pubkey=machine-key.pub
    3. Genere un par de claves para el usuario de solución vpxd en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=vpxd-key.priv --pubkey=vpxd-key.pub
    4. Genere un par de claves para el usuario de solución vpxd-extension en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=vpxd-extension-key.priv --pubkey=vpxd-extension-key.pub
    5. Genere un par de claves para el usuario de solución vsphere-webclient en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=vsphere-webclient-key.priv --pubkey=vsphere-webclient-key.pub
  2. Genere certificados de usuarios de solución que estén firmados con el nuevo certificado raíz de VMCA para el usuario de solución de la máquina en cada instancia de Platform Services Controller y en cada nodo de administración, así como para cada usuario de solución adicional (vpxd, vpxd-extension, vsphere-webclient) en cada nodo de administración.
    Nota: El parámetro --Name tiene que ser único. Al incluir el nombre del almacén del usuario de solución, resulta más fácil ver qué certificado se asigna a cada usuario de solución. El ejemplo incluye el nombre, por ejemplo, vpxd o vpxd-extension en cada caso.
    1. Ejecute el siguiente comando en el nodo de Platform Services Controller a fin de generar un certificado de usuario de solución de la máquina en ese nodo.
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-machine.crt --privkey=machine-key.priv --Name=machine 
      
    2. Genere un certificado para el usuario de solución de la máquina en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-machine.crt --privkey=machine-key.priv --Name=machine --server=<psc-ip-or-fqdn>
      
    3. Genere un certificado para el usuario de solución vpxd en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vpxd.crt --privkey=vpxd-key.priv --Name=vpxd --server=<psc-ip-or-fqdn>
      
    4. Genere un certificado para el usuario de solución vpxd-extensions en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vpxd-extension.crt --privkey=vpxd-extension-key.priv --Name=vpxd-extension --server=<psc-ip-or-fqdn>
      
    5. Ejecute el siguiente comando para generar un certificado para el usuario de solución vsphere-webclient en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vsphere-webclient.crt --privkey=vsphere-webclient-key.priv --Name=vsphere-webclient --server=<psc-ip-or-fqdn>
  3. Reemplace los certificados de usuario de solución en VECS por los nuevos certificados de usuario de solución.
    Nota: Los parámetros --store y --alias tienen que coincidir exactamente con los nombres predeterminados de los servicios.
    1. En el nodo de Platform Services Controller, ejecute el siguiente comando para reemplazar el certificado de usuario de solución de la máquina.
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store machine --alias machine
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store machine --alias machine --cert new-machine.crt --key machine-key.priv
      
    2. Reemplace el certificado de usuario de solución de la máquina en cada nodo de administración:
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store machine --alias machine
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store machine --alias machine --cert new-machine-vc.crt --key machine-vc-key.priv
      
    3. Reemplace el certificado de usuario de solución vpxd en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store vpxd --alias vpxd
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store vpxd --alias vpxd --cert new-vpxd.crt --key vpxd-key.priv
      
    4. Reemplace el certificado de usuario de solución vpxd-extension en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store vpxd-extension --alias vpxd-extension
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store vpxd-extension --alias vpxd-extension --cert new-vpxd-extension.crt --key vpxd-extension-key.priv
      
    5. Reemplace el certificado de usuario de solución vsphere-webclient en cada nodo de administración.
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store vsphere-webclient --alias vsphere-webclient
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store vsphere-webclient --alias vsphere-webclient --cert new-vsphere-webclient.crt --key vsphere-webclient-key.priv
      
  4. Actualice VMware Directory Service (vmdir) con los nuevos certificados de usuarios de solución. Se solicita una contraseña de administrador de vCenter Single Sign-On.
    1. Ejecute dir-cli service list para obtener el sufijo de identificador único de servicio para cada usuario de solución. Puede ejecutar este comando en un sistema Platform Services Controller o vCenter Server.
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli>dir-cli service list
      output:
      1. machine-29a45d00-60a7-11e4-96ff-00505689639a
      2. machine-6fd7f140-60a9-11e4-9e28-005056895a69
      3. vpxd-6fd7f140-60a9-11e4-9e28-005056895a69
      4. vpxd-extension-6fd7f140-60a9-11e4-9e28-005056895a69
      5. vsphere-webclient-6fd7f140-60a9-11e4-9e28-005056895a69
      Nota: Cuando se enumeran certificados de usuario de solución en implementaciones de gran tamaño, el resultado de dir-cli list incluye todos los usuarios de solución de todos los nodos. Ejecute vmafd-cli get-machine-id --server-name localhost para encontrar el identificador de máquina local para cada host. El nombre del usuario de solución incluye el identificador de máquina.
    2. Reemplace el certificado de máquina en vmdir de Platform Services Controller. Por ejemplo, si machine-29a45d00-60a7-11e4-96ff-00505689639a es el usuario de solución de la máquina en Platform Services Controller, ejecute este comando:
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli service update --name machine-29a45d00-60a7-11e4-96ff-00505689639a --cert new-machine-1.crt
    3. Reemplace el certificado de la máquina en vmdir en cada nodo de administración. Por ejemplo, si machine-6fd7f140-60a9-11e4-9e28-005056895a69 es el usuario de solución de la máquina en vCenter Server, ejecute este comando:
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli service update --name machine-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-machine-2.crt
    4. Reemplace el certificado de usuario de solución vpxd en vmdir en cada nodo de administración. Por ejemplo, si vpxd-6fd7f140-60a9-11e4-9e28-005056895a69 es el identificador de usuario de solución vpxd, ejecute este comando:
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli service update --name vpxd-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vpxd.crt
    5. Reemplace el certificado de usuario de solución vpxd-extension en vmdir en cada nodo de administración. Por ejemplo, si vpxd-extension-6fd7f140-60a9-11e4-9e28-005056895a69 es el identificador de usuario de solución vpxd-extension, ejecute este comando:
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli service update --name vpxd-extension-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vpxd-extension.crt
      
    6. Reemplace el certificado de usuario de solución vsphere-webclient en cada nodo de administración. Por ejemplo, si vsphere-webclient-6fd7f140-60a9-11e4-9e28-005056895a69 es el identificador de usuario de solución vsphere-webclient, ejecute este comando:
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli service update --name vsphere-webclient-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vsphere-webclient.crt
      

Qué hacer a continuación

Reinicie todos los servicios de cada nodo de Platform Services Controller y cada nodo de administración.