A partir de vSphere 8.0, el servidor Auto Deploy se puede configurar para aprovisionar los hosts ESXi con certificados personalizados que estén firmados por una entidad de certificación (CA) externa o por su propia entidad de certificación interna. De manera predeterminada, el servidor Auto Deploy aprovisiona los hosts ESXi con certificados firmados por VMware Certificate Authority (VMCA).

Antes de vSphere 8.0, las opciones para administrar certificados con Auto Deploy incluyen:

  • Usar vCenter Server y la autoridad de certificación VMware Certificate Authority integrada (la opción predeterminada).
  • Convertir a Auto Deploy en una entidad de certificación subordinada de una CA externa. En este caso, la clave SSL de Auto Deploy firma los certificados.

A partir de vSphere 8.0, puede cargar certificados personalizados en Auto Deploy que estén firmados por una entidad de certificación externa o por su propia entidad de certificación interna. Auto Deploy asocia el certificado personalizado con la dirección MAC o el UUID del BIOS del host ESXi. Cada vez que se inicia un host de Auto Deploy, Auto Deploy comprueba si hay un certificado personalizado. Si Auto Deploy encuentra un certificado personalizado, lo utiliza en lugar de generar uno a través de VMCA.

Los pasos de alto nivel de esta tarea incluyen:

  1. Generar la solicitud de certificado personalizada para una entidad de certificación externa o para su propia entidad de certificación interna.
  2. Obtener el certificado personalizado firmado (clave y certificado) y almacenarlo en local.
  3. Si utiliza una entidad de certificación externa y, si no lo hizo antes, asegurarse de que el certificado raíz de su CA esté cargado en el almacén TRUSTED_ROOTS de la instancia de vCenter Server.
  4. Cargar el certificado personalizado en Auto Deploy y asociar el certificado con la dirección MAC o el UUID del BIOS de un host ESXi.
  5. Iniciar el host ESXi.

Cuando se asigna un certificado personalizado a un host ESXi, Auto Deploy inserta el certificado en el host en el siguiente inicio que se haga desde Auto Deploy.

Tenga en cuenta las siguientes consideraciones al utilizar certificados personalizados y Auto Deploy.

  • Debe usar los cmdlets Add-CustomCertificate, Remove-CustomCertificate y List-CustomCertificate de PowerCLI para administrar los certificados personalizados que se utilizan con Auto Deploy. La capacidad para administrar certificados personalizados no está disponible en vSphere Client.
  • Para actualizar un certificado personalizado que se utiliza para Auto Deploy, debe volver a ejecutar el cmdlet Add-CustomCertificate.
  • Asegúrese de examinar el certificado personalizado en busca de posibles errores. Auto Deploy solo comprueba que el certificado personalizado cumpla con los estándares del certificado X.509 y que el umbral de caducidad del certificado esté configurado en al menos 240 días. Auto Deploy no realiza ninguna otra validación o comprobación de certificados. Para cambiar el umbral del certificado, puede ejecutar el cmdlet Set-DeployOption -Key certificate-refresh-threshold.
  • Si posteriormente elimina un certificado personalizado de un host ESXi mediante el cmdlet Remove-CustomCertificate, debe reiniciar el host para que el cambio surta efecto.

Para obtener más información sobre certificados personalizados y Auto Deploy, consulte la documentación de Instalar y configurar VMware ESXi.

Requisitos previos

Compruebe que dispone de lo siguiente:
  • Solicite un certificado a la entidad de certificación. El certificado debe cumplir con estos requisitos.
    • Tamaño de clave: de 2.048 bits (mínimo) a 16.384 bits (máximo) (formato codificado PEM)
    • Formato PEM. VMware admite PKCS8 y PKCS1 (claves RSA). Cuando se agregan claves a VECS, se convierten en PKCS8.
    • x509 versión 3
    • Formato CRT
    • Extensión de CA establecida en true
    • Uso de claves de firma de certificado
    • Hora de inicio de un día anterior a la hora actual
  • Dirección MAC del host ESXi o UUID del BIOS. Evalúe qué enfoque es el más adecuado para su entorno. El UUID del BIOS es más estable y está sujeto a menos cambios que la dirección MAC. Si cambia los adaptadores de red en un host ESXi, cambia la dirección MAC. Sin embargo, es posible que conozca mejor la dirección MAC para trabajar con ella y que sea más fácil de obtener que el UUID del BIOS.
  • Al menos la versión 12.6.0 de PowerCLI. Para obtener más información sobre los cmdlets de Auto Deploy PowerCLI, consulte el tema "Descripción general de cmdlets de vSphere Auto Deploy PowerCLI" en la documentación de Instalar y configurar VMware ESXi.

Asegúrese de disponer de los siguientes privilegios:

  • Agregar certificado personalizado: Auto Deploy.Regla.Crear
  • Obtener información del certificado personalizado: Sistema.Lectura

Procedimiento

  1. Genere la solicitud de certificado.
    1. Con los requisitos enumerados anteriormente para la solicitud del certificado, cree un archivo de configuración (.cfg).
    2. Para generar un archivo CSR y un archivo de clave, ejecute el comando openssl req, pasando el archivo de configuración (.cfg).
      Por ejemplo:
      openssl req -new -config custom_cert.cfg -days 4200 -sha256 -keyout rui.key -out rui.csr

      En este comando:

      • -new genera una nueva solicitud de certificado.
      • -config custom_cert.cfg especifica el archivo .cfg personalizado.
      • -days 4200 especifica 4200 días durante los cuales se puede certificar el certificado.
      • -sha256 especifica el resumen del mensaje con el que firmar la solicitud.
      • -keyout rui.key especifica el archivo en el que se debe escribir la clave privada recién creada.
      • -out rui.csr especifica el archivo de salida en el que se va a escribir.
  2. Envíe la solicitud de certificado a la entidad de certificación externa o, si firma sus propios certificados, ejecute el comando openssl x509 -req para generar el certificado personalizado a partir del archivo rui.csr.
    Por ejemplo:
    openssl x509 -req -in rui.csr -CA "/etc/vmware-rbd/ssl/rbd-ca.crt" -CAkey \
    "/etc/vmware-rbd/ssl/rbd-ca.key" -extfile \
    openssl.cfg -extensions x509 -CAserial "/etc/vmware-rbd/ssl/rbd-ca.srl" -days \
    4200 -sha256 -out signed_rui.crt
    

    En este comando:

    • -in rui.csr especifica el archivo de entrada.
    • -CA "/etc/vmware-rbd/ssl/rbd-ca.crt" especifica el directorio que se utilizará para la verificación del certificado del servidor.
    • -CAkey "/etc/vmware-rbd/ssl/rbd-ca.key" establece la clave privada de la entidad de certificación con la que se va a firmar un certificado.
    • -extfile openssl.cfg especifica un archivo de configuración opcional adicional en el que se van a leer las extensiones de certificado.
    • -extensions x509 especifica que se deben usar extensiones de certificado x509.
    • -CAserial "/etc/vmware-rbd/ssl/rbd-ca.srl" utiliza el número de serie de rbd-ca.srl para firmar un certificado.
    • -days 4200 especifica 4200 días durante los cuales se puede certificar el certificado.
    • -sha256 especifica el resumen del mensaje con el que firmar la solicitud.
    • -out signed_rui.crt especifica el archivo de salida en el que se va a escribir.
  3. (opcional) Si no cargó previamente el certificado de su entidad de certificación de firma en el almacén TRUSTED_ROOTS dentro de VMware Endpoint Certificate Store (VECS), realice los siguientes pasos en la instancia de vCenter Server donde se ejecuta el servicio de Auto Deploy.
    1. Con una herramienta como WinSCP, copie el certificado en la instancia de vCenter Server.
    2. Inicie sesión en la instancia de vCenter Server mediante SSH y ejecute el siguiente comando.
      /usr/lib/vmware-vmafd/bin/dir-cli trustedcert publish --cert path_to_ca_certificate
  4. Obtenga la dirección MAC del host ESXi o el UUID del BIOS.
  5. Realice los siguientes pasos para agregar el certificado personalizado a Auto Deploy.
    1. Para conectarse a vCenter Server, ejecute el cmdlet Connect-VIServer.
      Connect-VIServer -server VC_ip_address -User administrator_user -Password 'password'
    2. (opcional) Para ver los certificados personalizados existentes, ejecute el cmdlet Get-CustomCertificates.
      La primera vez que agregue certificados personalizados, no verá ningún certificado devuelto mediante este cmdlet.
    3. Para asociar el certificado personalizado al host ESXi, ejecute el cmdlet Add-CustomCertificate.
      Add-CustomCertificate -HostID [MAC_Address | BIOS_UUID] -Certificate "path_to_custom_cert" -Key "path_to_custom_cert_key"
      Puede especificar la dirección MAC o el UUID del BIOS del host. Auto Deploy carga el certificado personalizado en el host.
    4. Para comprobar que se cargó el certificado, ejecute el cmdlet Get-CustomCertificates.
      Verá resultados similares al siguiente:
      Name:     CustomHostCert-1
      CertificateId:      1
      HostId:             02:08:b0:8e:18:a2
      ExpirationTime: 1   2/28/2033 10:45:50 AM
      TimeCreated:        9/29/2022 7:40:28 AM
      LastModified:       9/29/2022 7:40:28 AM
      AssociatedHostName: 
      AssociatedHostName está en blanco por ahora. Después de iniciar el host, el resultado reflejará el nombre del host ESXi asociado al certificado personalizado.
  6. Inicie el host ESXi.
  7. Para comprobar que el certificado personalizado esté asociado a la instancia de vCenter Server, vuelva a ejecutar el cmdlet Get-CustomCertificates.
    Verá un resultado similar al siguiente.
    Name:     CustomHostCert-1
    CertificateId:      1
    HostId:             02:08:b0:8e:18:a2
    ExpirationTime: 1   2/28/2033 10:45:50 AM
    TimeCreated:        9/29/2022 7:40:28 AM
    LastModified:       9/29/2022 7:40:28 AM
    AssociatedHostName: host1.example.com
    Ahora AssociatedHostName contiene el nombre del host ESXi.