默认情况下,Auto Deploy 服务器使用 VMCA 签名的证书置备每个主机。您可以将 Auto Deploy 服务器设置为使用未经 VMCA 签名的自定义证书置备所有主机。在这种情况下,Auto Deploy 服务器将成为第三方 CA 的辅助证书颁发机构。

前提条件

  • 向您的 CA 请求证书。证书必须满足以下要求。
    • 密钥大小:2048 位或更大(PEM 编码)
    • PEM 格式。VMware 支持 PKCS8 和 PKCS1(RSA 密钥)。密钥添加到 VECS 后,会转换为 PKCS8
    • x509 版本 3
    • 对于根证书,CA 扩展必须设置为 true,并且 cert 签名必须在要求列表中。
    • SubjectAltName 必须包含 DNS Name=<machine_FQDN>
    • CRT 格式
    • 包含以下密钥使用:数字签名、不可否认性、密钥加密
    • 比当前时间早一天的开始时间
    • CN(和 SubjectAltName)设置为 vCenter Server 清单中的 ESXi 主机的主机名(或 IP 地址)。
  • 将证书和密钥文件分别命名为 rbd-ca.crtrbd-ca.key

过程

  1. 备份默认的 ESXi 证书。
    证书位于 /etc/vmware-rbd/ssl/ 目录中。
  2. vSphere Web Client 中,停止 Auto Deploy 服务。
    1. 选择系统管理,然后在部署下单击系统配置
    2. 单击服务
    3. 右键单击要停止的服务,然后选择停止
  3. 在运行 Auto Deploy 服务的系统上,将 /etc/vmware-rbd/ssl/ 中的 rbd-ca.crtrbd-ca.key 替换为您的自定义证书和密钥文件。
  4. 在运行 Auto Deploy 服务的系统中,运行以下命令以更新 VECS 内的 TRUSTED_ROOTS 存储,从而使用新证书。
    选项 描述
    Windows
    cd C:\Program Files\VMware\vCenter Server\vmafdd\vecs-cli.exe
    vecs-cli entry delete --store TRUSTED_ROOTS --alias rbd_cert  
    vecs-cli entry create --store TRUSTED_ROOTS --alias rbd_cert 
    --cert /etc/vmware-rbd/ssl/rbd-ca.crt
    Linux
    cd /usr/lib/vmware-vmafd/bin/vecs-cli
    vecs-cli entry delete --store TRUSTED_ROOTS --alias	rbd_cert  
    vecs-cli entry create --store TRUSTED_ROOTS --alias	rbd_cert 
    --cert /etc/vmware-rbd/ssl/rbd-ca.crt
  5. 创建包含 TRUSTED_ROOTS 存储内容的 castore.pem 文件,并将该文件放入 /etc/vmware-rbd/ssl/ 目录中。
    在自定义模式中,您必须维护此文件。
  6. vCenter Server 系统的 ESXi 证书模式更改为自定义
    请参见 更改证书模式
  7. 重新启动 vCenter Server 服务,然后启动 Auto Deploy 服务。

结果

下次置备设置为使用 Auto Deploy 的主机时,Auto Deploy 服务器将生成证书。Auto Deploy 服务器将使用刚刚添加到 TRUSTED_ROOTS 存储的根证书。

注: 如果在替换证书后 Auto Deploy 遇到问题,请参见 VMware 知识库文章 2000988