Se o certificado raiz VMware Certificate Authority (VMCA) expirar em um futuro próximo, ou se você quiser substituí-lo por outros motivos, poderá usar a CLI para gerar um novo certificado raiz e adicioná-lo ao Serviço de Diretório VMware. Em seguida, você pode gerar novos certificados SSL de máquina e certificados de usuário da solução usando o novo certificado raiz.
Use o utilitário vSphere Certificate Manager para substituir certificados na maioria dos casos.
Se você precisar de controle refinado, este cenário fornece instruções passo a passo detalhadas para substituir o conjunto completo de certificados usando comandos da CLI. Em vez disso, você pode substituir apenas certificados individuais usando o procedimento na tarefa correspondente.
Pré-requisitos
Somente [email protected] ou outros usuários do grupo CAAdmins podem executar tarefas de gerenciamento de certificados. Consulte Adicionar membros a um grupo vCenter Single Sign-On.
Gerar um novo certificado raiz assinado pela VMCA usando a CLI
Você pode gerar novos certificados assinados pela VMCA com a CLI certool e publicar os certificados no vmdir.
Procedimento
Exemplo: Gerar um novo certificado raiz assinado pela VMCA
- (Opcional) No vCenter Server, liste o certificado raiz da VMCA para garantir que ele esteja no repositório de certificados.
/usr/lib/vmware-vmca/bin/certool --getrootca
A saída é semelhante a esta:output: Certificate: Data: Version: 3 (0x2) Serial Number: cf:2d:ff:49:88:50:e5:af ...
- (Opcional) Liste o repositório do VECS TRUSTED_ROOTS e compare o número de série do certificado com a saída da Etapa 1.
/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store TRUSTED_ROOTS --text
No caso mais simples, com apenas um certificado raiz, a saída é semelhante a esta:Number of entries in store : 1 Alias : 960d43f31eb95211ba3a2487ac840645a02894bd Entry type : Trusted Cert Certificate: Data: Version: 3 (0x2) Serial Number: cf:2d:ff:49:88:50:e5:af
- Gere um novo certificado raiz da VMCA. O comando adiciona o certificado ao repositório TRUSTED_ROOTS no VECS e no vmdir (VMware Serviço de Diretório).
/usr/lib/vmware-vmca/bin/certool --selfca --config=/usr/lib/vmware-vmca/share/config/certool.cfg
Substituir certificados SSL da máquina por certificados assinados pela VMCA usando a CLI
Depois de gerar um novo certificado raiz assinado pela VMCA, você pode usar o comando vecs-cli para substituir todos os certificados SSL de máquina em seu ambiente.
Cada máquina deve ter um certificado SSL de máquina para comunicação segura com outros serviços. Quando várias instâncias do vCenter Server estão conectadas na configuração do Modo Vinculado Avançado, você deve executar os comandos de geração de certificado SSL da Máquina em cada nó.
Pré-requisitos
Esteja preparado para interromper todos os serviços e iniciar os serviços que lidam com a propagação e o armazenamento de certificados.
Procedimento
Exemplo: Substituindo certificados de máquina por certificados assinados pela VMCA
- Crie um arquivo de configuração para o certificado SSL e salve-o como ssl-config.cfg no diretório atual.
Country = US Name = vmca-<FQDN-example> Organization = <my_company> OrgUnit = <my_company Engineering> State = <my_state> Locality = <mytown> Hostname = <FQDN>
- Gere um par de chaves para o certificado SSL da máquina. Em uma implantação de várias instâncias vCenter Server conectadas na configuração do Modo Vinculado Avançado, execute este comando em cada nó vCenter Server.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=ssl-key.priv --pubkey=ssl-key.pub
Os arquivos ssl-key.priv e ssl-key.pub são criados no diretório atual.
- Gere o novo certificado SSL da máquina. Este certificado é assinado pela VMCA. Se você tiver substituído o certificado raiz da VMCA pelo certificado personalizado, a VMCA assinará todos os certificados com a cadeia completa.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-vmca-ssl.crt --privkey=ssl-key.priv --config=ssl-config.cfg
O arquivo new-vmca-ssl.crt é criado no diretório atual.
- (Opcional) Liste o conteúdo do VECS.
/usr/lib/vmware-vmafd/bin/vecs-cli store list
- Saída de amostra em vCenter Server:
output (on vCenter): MACHINE_SSL_CERT TRUSTED_ROOTS TRUSTED_ROOT_CRLS machine vsphere-webclient vpxd vpxd-extension hvc data-encipherment APPLMGMT_PASSWORD SMS wcp KMS_ENCRYPTION
- Saída de amostra em vCenter Server:
- Substitua o certificado SSL da Máquina no VECS pelo novo certificado SSL da Máquina. Os valores --store e --alias devem corresponder exatamente aos nomes padrão.
- Em cada vCenter Server, execute os seguintes comandos para atualizar o certificado SSL da Máquina no repositório MACHINE_SSL_CERT. Você deve atualizar o certificado para cada máquina separadamente, pois cada uma tem um FQDN diferente.
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert new-vmca-ssl.crt --key ssl-key.priv
- Em cada vCenter Server, execute os seguintes comandos para atualizar o certificado SSL da Máquina no repositório MACHINE_SSL_CERT. Você deve atualizar o certificado para cada máquina separadamente, pois cada uma tem um FQDN diferente.
O que Fazer Depois
Você também pode substituir os certificados para seus hosts ESXi. Consulte a publicação vSphere Segurança.
Substituir certificados de usuário da solução por novos certificados assinados pela VMCA usando a CLI
Depois de substituir os certificados SSL da máquina, você pode usar o comando dir-cli para substituir todos os certificados de usuário da solução. Os certificados de usuário da solução devem ser válidos, ou seja, não devem ter expirado, mas nenhuma das outras informações no certificado é usada pela infraestrutura de certificados.
- Os certificados ficam atrás de um proxy ou são certificados personalizados.
- Nenhuma autoridade de certificação intermediária é usada.
Substitua o certificado do usuário da solução da máquina e o certificado do usuário da solução em cada sistema vCenter Server.
Pré-requisitos
Esteja preparado para interromper todos os serviços e iniciar os serviços que lidam com a propagação e o armazenamento de certificados.
Procedimento
Exemplo: Usando certificados de usuário do VMCA-Signed Solution
- Gere um par de chaves pública/privada para cada usuário da solução em cada nó vCenter Server em uma configuração de Modo Vinculado Avançado. Isso inclui um par para a solução de máquina e um par para cada usuário de solução adicional (vpxd, vpxd-extension, vsphere-webclient, wcp).
- Gere um par de chaves para o usuário da solução de máquina.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=machine-key.priv --pubkey=machine-key.pub
- Gere um par de chaves para o usuário da solução vpxd em cada nó.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=vpxd-key.priv --pubkey=vpxd-key.pub
- Gere um par de chaves para o usuário da solução vpxd-extension em cada nó.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=vpxd-extension-key.priv --pubkey=vpxd-extension-key.pub
- Gere um par de chaves para o usuário da solução vsphere-webclient em cada nó.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=vsphere-webclient-key.priv --pubkey=vsphere-webclient-key.pub
- Gere um par de chaves para o usuário da solução wcp em cada nó.
/usr/lib/vmware-vmca/bin/certool --genkey --privkey=wcp-key.priv --pubkey=wcp-key.pub
- Gere um par de chaves para o usuário da solução de máquina.
- Gere certificados de usuário da solução assinados pelo novo certificado raiz da VMCA para o usuário da solução da máquina e para cada usuário da solução adicional (vpxd, vpxd-extension, vsphere-webclient, wcp) em cada nó vCenter Server.
Observação: O parâmetro --Name deve ser exclusivo. A inclusão do nome do repositório de usuários da solução facilita a visualização de qual certificado é mapeado para qual usuário da solução. O exemplo inclui o nome, por exemplo, vpxd ou vpxd-extension em cada caso.
- Execute o seguinte comando para gerar um certificado de usuário da solução para o usuário da solução da máquina nesse nó.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-machine.crt --privkey=machine-key.priv --Name=machine
- Gere um certificado para o usuário da solução de máquina em cada nó.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-machine.crt --privkey=machine-key.priv --Name=machine
- Gere um certificado para o usuário da solução vpxd em cada nó.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-vpxd.crt --privkey=vpxd-key.priv --Name=vpxd
- Gere um certificado para o usuário da solução vpxd-extensions em cada nó.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-vpxd-extension.crt --privkey=vpxd-extension-key.priv --Name=vpxd-extension
- Gere um certificado para o usuário da solução vsphere-webclient em cada nó executando o seguinte comando.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-vsphere-webclient.crt --privkey=vsphere-webclient-key.priv --Name=vsphere-webclient
- Gere um certificado para o usuário da solução wcp em cada nó executando os comandos a seguir.
/usr/lib/vmware-vmca/bin/certool --gencert --cert=new-wcp.crt --privkey=wcp-key.priv --Name=wcp
- Execute o seguinte comando para gerar um certificado de usuário da solução para o usuário da solução da máquina nesse nó.
- Substitua os certificados de usuário da solução no VECS pelos novos certificados de usuário da solução.
Observação: Os parâmetros --store e --alias precisam corresponder exatamente aos nomes padrão dos serviços.
- Substitua o certificado do usuário da solução da máquina em cada nó:
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store machine --alias machine /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store machine --alias machine --cert new-machine.crt --key machine-key.priv
- Substitua o certificado de usuário da solução vpxd em cada nó.
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store vpxd --alias vpxd /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store vpxd --alias vpxd --cert new-vpxd.crt --key vpxd-key.priv
- Substitua o certificado de usuário da solução vpxd-extension em cada nó.
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store vpxd-extension --alias vpxd-extension /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store vpxd-extension --alias vpxd-extension --cert new-vpxd-extension.crt --key vpxd-extension-key.priv
- Substitua o certificado de usuário do vsphere-webclient solution em cada nó.
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store vsphere-webclient --alias vsphere-webclient /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store vsphere-webclient --alias vsphere-webclient --cert new-vsphere-webclient.crt --key vsphere-webclient-key.priv
- Substitua o certificado do usuário da solução wcp em cada nó.
/usr/lib/vmware-vmafd/bin/vecs-cli entry delete --store wcp --alias wcp /usr/lib/vmware-vmafd/bin/vecs-cli entry create --store wcp --alias wcp --cert new-wcp.crt --key wcp-key.priv
- Substitua o certificado do usuário da solução da máquina em cada nó:
- Atualize o Serviço de Diretório VMware (vmdir) com os novos certificados de usuário da solução. Você será solicitado a fornecer uma senha de administrador vCenter Single Sign-On.
- Execute dir-cli service list para obter o sufixo de ID de serviço exclusivo para cada usuário da solução. Você executa esse comando em um sistema vCenter Server.
/usr/lib/vmware-vmafd/bin/dir-cli service list output: 1. machine-623bef28-0311-436e-b21f-6e0d39aa5179 2. vsphere-webclient-623bef28-0311-436e-b21f-6e0d39aa5179 3. vpxd-623bef28-0311-436e-b21f-6e0d39aa5179 4. vpxd-extension-623bef28-0311-436e-b21f-6e0d39aa5179 5. hvc-623bef28-0311-436e-b21f-6e0d39aa5179 6. wcp-1cbe0a40-e4ce-4378-b5e7-9460e2b8200e
Observação: Quando você lista os certificados de usuário da solução em grandes implantações, a saída de dir-cli list inclui todos os usuários da solução de todos os nós. Execute vmafd-cli get-machine-id --server-name localhost para encontrar a ID da máquina local para cada host. Cada nome de usuário da solução inclui a ID da máquina. - Substitua o certificado da máquina em vmdir em cada nó vCenter Server. Por exemplo, se machine-6fd7f140-60a9-11e4-9e28-005056895a69 for o usuário da solução de máquina no vCenter Server, execute este comando:
/usr/lib/vmware-vmafd/bin/dir-cli service update --name machine-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-machine.crt
- Substitua o certificado de usuário da solução vpxd em vmdir em cada nó. Por exemplo, se vpxd-6fd7f140-60a9-11e4-9e28-005056895a69 for a ID de usuário da solução vpxd, execute este comando:
/usr/lib/vmware-vmafd/bin/dir-cli service update --name vpxd-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vpxd.crt
- Substitua o certificado de usuário da solução vpxd-extension no vmdir em cada nó. Por exemplo, se vpxd-extension-6fd7f140-60a9-11e4-9e28-005056895a69 for o ID do usuário da solução vpxd-extension, execute este comando:
/usr/lib/vmware-vmafd/bin/dir-cli update --name vpxd-extension-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vpxd-extension.crt
- Substitua o certificado de usuário do vsphere-webclient solution em cada nó. Por exemplo, se vsphere-webclient-6fd7f140-60a9-11e4-9e28-005056895a69 for o ID de usuário da solução vsphere-webclient, execute este comando:
/usr/lib/vmware-vmafd/bin/dir-cli service update --name vsphere-webclient-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vsphere-webclient.crt
- Substitua o certificado do usuário da solução wcp em cada nó. Por exemplo, se wcp-1cbe0a40-e4ce-4378-b5e7-9460e2b8200e for o ID do usuário da solução wcp, execute este comando:
/usr/lib/vmware-vmafd/bin/dir-cli service update --name wcp-1cbe0a40-e4ce-4378-b5e7-9460e2b8200e --cert new-wcp.crt
- Execute dir-cli service list para obter o sufixo de ID de serviço exclusivo para cada usuário da solução. Você executa esse comando em um sistema vCenter Server.
O que Fazer Depois
Reinicie todos os serviços em cada nó vCenter Server.