No vSphere 8.0 e posterior, você pode configurar o servidor Auto Deploy para provisionar hosts do ESXi com certificados personalizados assinados por uma autoridade de certificação (CA) de terceiros ou sua própria CA interna. Por padrão, o servidor do Auto Deploy provisiona hosts ESXi com certificados assinados pelo VMware Certificate Authority (VMCA).

Antes do vSphere 8.0, suas opções para gerenciar certificados com o Auto Deploy incluem:

  • Usando vCenter Server e o VMware Certificate Authority integrado (o padrão).
  • Implementação automática de uma autoridade de certificação subordinada de uma autoridade de certificação de terceiros. Nesse caso, a chave SSL de Implantação automática assina os certificados.

No vSphere 8.0 e posterior, você pode carregar certificados personalizados para o Auto Deploy que são assinados por uma autoridade de certificação de terceiros ou sua própria autoridade de certificação interna. A implantação automática associa o certificado personalizado ao endereço MAC ou ao UUID do BIOS do host ESXi. Sempre que um host do Auto Deploy é iniciado, o Auto Deploy verifica se há um certificado personalizado. Se a Implantação automática encontrar um certificado personalizado, ela usará esse certificado em vez de gerar um por meio da VMCA.

As etapas de alto nível para esta tarefa incluem:

  1. Gerando a solicitação de certificado personalizado para uma autoridade de certificação de terceiros ou para sua própria autoridade de certificação interna.
  2. Obter o certificado personalizado assinado (chave e certificado) e armazená-lo localmente.
  3. Se você estiver usando uma CA de terceiros e, se não tiver feito isso anteriormente, certifique-se de que o certificado raiz da sua CA seja carregado no repositório TRUSTED_ROOTS no vCenter Server.
  4. Carregando o certificado personalizado no Auto Deploy e associando o certificado ao endereço MAC ou ao UUID do BIOS de um host ESXi.
  5. Inicializando o host ESXi.

Quando você atribui um certificado personalizado a um host ESXi, o Auto Deploy envia o certificado para o host na próxima inicialização do Auto Deploy.

Esteja ciente das seguintes considerações ao usar certificados personalizados e a implantação automática.

  • Você deve usar os cmdlets PowerCLI Add-CustomCertificate, Remove-CustomCertificate e List-CustomCertificate para gerenciar certificados personalizados usados com a Implantação automática. A capacidade de gerenciar certificados personalizados não está disponível no vSphere Client.
  • Para atualizar um certificado personalizado usado para implantação automática, você deve executar o cmdlet Add-CustomCertificate novamente.
  • Certifique-se de examinar seu certificado personalizado em busca de possíveis erros. A implantação automática verifica apenas se o certificado personalizado está em conformidade com os padrões de certificado X.509 e se o limite de expiração do certificado está definido como pelo menos 240 dias. A Implantação Automática não realiza nenhuma outra validação ou verificação de certificado. Para alterar o limite do certificado, você pode executar o cmdlet Set-DeployOption -Key certificate-refresh-threshold.
  • Se posteriormente você remover um certificado personalizado de um host ESXi usando o cmdlet Remove-CustomCertificate, deverá reiniciar o host para que a alteração tenha efeito.

Para obter mais informações sobre certificados personalizados e implantação automática, consulte a documentação VMware ESXi Instalação e configuração.

Pré-requisitos

Verifique se você tem o seguinte:
  • Solicite um certificado da sua autoridade de certificação. O certificado deve atender a esses requisitos.
    • Tamanho da chave: 2.048 bits (mínimo) a 16.384 bits (máximo) (codificado por PEM)
    • Formato PEM. VMware é compatível com PKCS8 e PKCS1 (chaves RSA). Quando chaves são adicionadas ao VECS, elas são convertidas em PKCS8.
    • x509 versão 3
    • Formato CRT
    • Extensão de CA definida como verdadeira
    • Uso da chave da assinatura de certificado
    • Hora de início de um dia antes da hora atual
    Observação: O certificado FIPS de vSphere só valida os tamanhos de chave RSA de 2048 e 3072. Consulte Considerações ao usar o FIPS.
  • Endereço MAC do host do ESXi ou BIOS UUID. Avalie qual abordagem faz mais sentido para o seu ambiente. O UUID do BIOS é mais estável e menos sujeito a alterações do que o endereço MAC. Se você alterar os adaptadores de rede em um host ESXi, o endereço MAC será alterado. No entanto, o endereço MAC pode ser mais familiar para se trabalhar e mais fácil de obter do que o UUID do BIOS.
  • Pelo menos PowerCLI versão 12.6.0. Para obter mais informações sobre cmdlets de Implementação automática PowerCLI, consulte o tópico Visão geral do cmdlet de Implementação automática PowerCLI na documentação do VMware ESXi Instalação e configuração.

Verifique se você tem os seguintes privilégios:

  • Adicionar certificado personalizado: Autodeploy.Rule.Create
  • Obter informações de certificado personalizado: Sistema.Ler

Procedimento

  1. Gere a solicitação de certificado.
    1. Usando os requisitos listados anteriormente para a solicitação de certificado, crie um arquivo de configuração (.cfg).
    2. Para gerar um arquivo CSR e um arquivo de chave, execute o comando openssl req, passando o arquivo de configuração (.cfg).
      Por exemplo:
      openssl req -new -config custom_cert.cfg -days 4200 -sha256 -keyout rui.key -out rui.csr

      Neste comando:

      • -new gera uma nova solicitação de certificado.
      • -config custom_cert.cfg especifica seu arquivo .cfg personalizado.
      • -days 4200 especifica 4.200 dias para certificar o certificado.
      • -sha256 especifica o resumo da mensagem com o qual assinar a solicitação.
      • -keyout rui.key especifica o arquivo no qual gravar a chave privada recém-criada.
      • -out rui.csr especifica o arquivo de saída no qual gravar.
  2. Envie a solicitação de certificado para sua autoridade de certificação de terceiros ou, se você assinar seus próprios certificados, execute o comando openssl x509 -req para gerar seu certificado personalizado a partir do arquivo rui.csr.
    Por exemplo:
    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
    

    Neste comando:

    • -in rui.csr especifica o arquivo de entrada.
    • -CA "/etc/vmware-rbd/ssl/rbd-ca.crt" especifica o diretório a ser usado para verificação de certificado do servidor.
    • -CAkey "/etc/vmware-rbd/ssl/rbd-ca.key" define a chave privada da CA para assinar um certificado.
    • -extfile openssl.cfg especifica um arquivo de configuração opcional adicional para ler as extensões de certificado.
    • -extensions x509 especifica o uso de extensões de certificado x509.
    • -CAserial "/etc/vmware-rbd/ssl/rbd-ca.srl" usa o número de série em rbd-ca.srl para assinar um certificado.
    • -days 4200 especifica 4.200 dias para certificar o certificado.
    • -sha256 especifica o resumo da mensagem com o qual assinar a solicitação.
    • -out signed_rui.crt especifica o arquivo de saída no qual gravar.
  3. (Opcional) Se você ainda não tiver carregado o certificado da sua autoridade de certificação de assinatura para o repositório TRUSTED_ROOTS dentro do VMware repositório de certificados de endpoint (VECS), execute as seguintes etapas no vCenter Server em que o serviço de implantação automática é executado.
    1. Usando uma ferramenta como o WinSCP, copie o certificado para o arquivo vCenter Server.
    2. Faça login no vCenter Server usando SSH e execute o seguinte comando.
      /usr/lib/vmware-vmafd/bin/dir-cli trustedcert publish --cert path_to_ca_certificate
  4. Obtenha o endereço MAC do host ESXi ou o UUID do BIOS.
  5. Execute as etapas a seguir para adicionar o certificado personalizado à Implantação automática.
    1. Para se conectar ao vCenter Server, execute o cmdlet Connect-VIServer.
      Connect-VIServer -server VC_ip_address -User administrator_user -Password 'password'
    2. (Opcional) Para exibir certificados personalizados existentes, execute o cmdlet Get-CustomCertificates.
      Na primeira vez que você adicionar certificados personalizados, não verá nenhum certificado retornado por esse cmdlet.
    3. Para associar o certificado personalizado ao host ESXi, execute o cmdlet Add-CustomCertificate.
      Add-CustomCertificate -HostID [MAC_Address | BIOS_UUID] -Certificate "path_to_custom_cert" -Key "path_to_custom_cert_key"
      Você pode especificar o endereço MAC ou o UUID do BIOS do host. A implantação automática carrega o certificado personalizado no host.
    4. Para verificar se o certificado foi carregado, execute o cmdlet Get-CustomCertificates.
      Você vê uma saída semelhante à seguinte:
      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: 
      O AssociatedHostName está em branco por enquanto. Depois de iniciar o host, a saída reflete o nome do host ESXi associado ao certificado personalizado.
  6. Inicie o host ESXi.
  7. Para verificar se o certificado personalizado está associado ao vCenter Server, execute o cmdlet Get-CustomCertificates novamente.
    Você vê uma saída semelhante à seguinte.
    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
    Agora, o AssociatedHostName contém o nome do host ESXi.