在生成新的 VMCA 签名根证书后,可以替换您环境中的所有计算机 SSL 证书。
每台计算机都必须拥有可用于与其他服务进行安全通信的计算机 SSL 证书。在多节点部署中,必须在每个节点上运行计算机 SSL 证书生成命令。使用 --server 参数从具有外部 Platform Services Controller 的 vCenter Server 指向 Platform Services Controller。
前提条件
准备好停止所有服务,启动处理证书传播和存储的服务。
过程
示例: 将计算机证书替换为 VMCA 签名证书
- 为 SSL 证书创建配置文件,并在当前目录中将其保存为 ssl-config.cfg。
Country = US Name = vmca-<PSC-FQDN-example> Organization = <my_company> OrgUnit = <my_company Engineering> State = <my_state> Locality = <mytown> Hostname = <FQDN>
- 为计算机 SSL 证书生成密钥对。在每个管理节点和 Platform Services Controller 节点上运行此命令;不需要 --server 选项。
C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=ssl-key.priv --pubkey=ssl-key.pub
将在当前目录中创建 ssl-key.priv 和 ssl-key.pub 文件。
- 生成新的计算机 SSL 证书。此证书为 VMCA 签名证书。如果将 VMCA root 证书替换为自定义证书,则 VMCA 会对整个链中的所有证书进行签名。
- 在 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
- 在 vCenter Server 中(外部安装):
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>
将在当前目录中创建 new-vmca-ssl.crt 文件。
- 在 Platform Services Controller 节点或嵌入式安装中:
- (可选)列出 VECS 的内容。
"C:\Program Files\VMware\vCenter Server\vmafdd\" vecs-cli store list
- Platform Services Controller 中的输出示例:
MACHINE_SSL_CERT TRUSTED_ROOTS TRUSTED_ROOT_CRLS machine
- vCenter Server 中的输出示例:
output (on vCenter): MACHINE_SSL_CERT TRUSTED_ROOTS TRUSTED_ROOT_CRLS machine vpxd vpxd-extension vsphere-webclient sms
- Platform Services Controller 中的输出示例:
- 将 VECS 中的计算机 SSL 证书替换为新的计算机 SSL 证书。--store 和 --alias 值必须与默认名称完全匹配。
- 在 Platform Services Controller 中,请运行以下命令以更新 MACHINE_SSL_CERT 存储中的计算机 SSL 证书。
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
- 在每个管理节点或嵌入式部署中,请运行以下命令以更新 MACHINE_SSL_CERT 存储中的计算机 SSL 证书。由于每个计算机具有不同的 FQDN,因此必须单独更新每个计算机的证书。
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
- 在 Platform Services Controller 中,请运行以下命令以更新 MACHINE_SSL_CERT 存储中的计算机 SSL 证书。
下一步做什么
您还可以替换 ESXi 主机的证书。请参见《vSphere 安全性》出版物。
在多节点部署中替换根证书后,必须在所有具有外部 Platform Services Controller 的 vCenter Server 节点上重新启动服务。