安装 NSX 后,管理器节点和集群具有自签名证书。将自签名证书替换为 CA 签名证书,并使用一个包含 SAN(主体备用名称)的通用 CA 签名证书,可匹配所有节点的 FQDN 和 IP 以及集群的 VIP。一次只能运行一个证书替换操作。

如果使用的是 NSX 联合,可使用以下 API 替换 GM API 证书、GM 集群证书、LM API 证书和 LM 集群证书。

NSX 联合 4.1 开始,可以替换用于 GM-LM 通信的自签名证书。此外,全局管理器证书现在还会在注册本地管理器时生成本地管理器证书。本地管理器证书不再是默认证书。

替换全局管理器本地管理器证书时,站点管理器会将这些证书发送到所有其他联合站点,因此通信保持不变。

现在,可以使用或替换密码套件 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 以在以下两者之间进行通信:
  • 集群中的 NSX 节点。
  • NSX 联合 中。
  • NSX ManagerNSX Edge
  • NSX ManagerNSX 代理。
  • NSX Manager REST API 通信(外部)。

您还可以替换为 全局管理器本地管理器 设备自动创建的平台主体身份证书。有关为 NSX 联合自动配置的自签名证书的详细信息,请参见NSX 和 NSX 联合 的证书

注: 对于 Cloud Service Manager,无法替换 NSX 环境中的 HTTP 证书。

前提条件

  • 确认在 NSX Manager 中具有一个证书。请注意,在备用全局管理器上,将停用 UI 导入操作。有关备用全局管理器的导入 REST API 命令的详细信息,请参阅导入自签名证书或 CA 签名证书
  • 服务器证书必须包含基本限制扩展 basicConstraints = CA:FALSE
  • 通过进行以下 API 调用来验证证书是否有效:

    GET https://<nsx-mgr>/api/v1/trust-management/certificates/<cert-id>?action=validate

  • 如果需要,请提供您的节点 ID 字符串。有关使用 UI 或 CLI 查找此信息的帮助,请参阅查找证书 API 调用的节点 ID
注: 请勿使用自动脚本同时替换多个证书。可能会出现错误。

过程

  1. 使用 admin 特权登录到 NSX Manager
  2. 选择系统 > 证书
  3. 在 ID 列中,选择要使用的证书的 ID,然后从弹出窗口中复制该证书 ID。
    确保在导入此证书时,选项 服务证书已设置为

    注意:证书链必须采用“证书 - 中间 - 根”这一行业标准顺序。

  4. 要替换管理器节点的 API 证书,请使用以下 API 调用。要查找您的 Unified Appliance 节点 ID,请参阅查找证书 API 调用的节点 ID
    POST /api/v1/trust-management/certificates/<cert-id>?action=apply_certificate&service_type=API&node_id=<node-id>
    例如:
    POST https://<nsx-mgr>/api/v1/trust-management/certificates/77c5dc5c-6ba5-4e74-a801-c27dc09be76b?action=apply_certificate&service_type=API&node_id=e61c7537-3090-4149-b2b6-19915c20504f
    注: 如果替换管理器节点的 CBM_MP 证书,则在证书操作完成后,该节点上的 NSX 管理服务将重新启动,以便可以开始使用该新证书。在此重新启动期间,在管理器节点服务备份并运行之前,将无法访问 UI 和 API。如果 VIP 位于此管理器节点上,它将移至另一个管理器节点。在替换其他管理器节点上的 CBM_MP 证书之前,请通过执行 get cluster status 并检查管理器组成员集群状态,确保管理服务已启动并正在运行。
  5. 要替换管理器集群 VIP 的证书,请使用 API 调用:
    POST /api/v1/trust-management/certificates/<cert-id>?action=apply_certificate&service_type=MGMT_CLUSTER
    例如:
    POST https://<nsx-mgr>/api/v1/trust-management/certificates/d60c6a07-6e59-4873-8edb-339bf75711?action=apply_certificate&service_type=MGMT_CLUSTER

    有关该 API 的详细信息,请参见NSX API 指南。如果未配置 VIP,则无需执行此步骤。

  6. (可选) 要替换 NSX 联合本地管理器全局管理器主体身份证书,请使用以下 API 调用。整个 NSX Manager 集群(本地管理器全局管理器)需要一个 PI 证书。
    注: 请勿使用此过程替换过期的证书。要替换过期的证书,请参阅 添加角色分配或主体身份以了解相关说明。如果在将证书导入备用全局管理器时遇到问题,请参阅 导入自签名证书或 CA 签名证书以了解 REST API 命令。
    POST https://<nsx-mgr>/api/v1/trust-management/certificates/<cert-id>?action=apply_certificate&service_type=<service-type>
    例如:
    POST https://<local-mgr>/api/v1/trust-management/certificates/77c5dc5c-6ba5-4e74-a801-c27dc09be76b?action=apply_certificate&service_type=LOCAL_MANAGER
    POST https://<global-mgr>/api/v1/trust-management/certificates/77c5dc5c-6ba5-4e74-a801-c27dc09be76b?action=apply_certificate&service_type=GLOBAL_MANAGER
  7. 要替换 APH-AR 证书,请使用以下 API 调用。要查找您的 Unified Appliance 节点 ID,请参阅查找证书 API 调用的节点 ID
    POST https://<nsx-mgr>/api/v1/trust-management/certificates/<cert-id>?action=apply_certificate&service_type=APH&node_id=<node-id>
    例如:
    POST https://<nsx-mgr>/api/v1/trust-management/certificates/77c5dc5c-6ba5-4e74-a801-c27dc09be76b?action=apply_certificate&service_type=APH&node_id=93350f42-16b4-cb4e-99e0-fce2d17635a3
  8. NSX 4.1 开始,要替换传输节点 (TN) 或 Edge 主机证书,请使用以下 API 调用。您必须在 NSX Manager 外部生成私钥。如果在 NSX Manager 中生成 CSR,则无法检索 API 调用中所需的私钥。如果是 CA 签名证书,则按以下顺序包括整个链: certificate - intermediate - root。整个证书必须在一行中提供。还需将任何行尾字符替换为 \n。在 pem_encoded 和私钥值中需要执行此操作。要将换行符替换为 \n,您可以在基于 UNIX 的系统上使用以下命令:awk '{gsub(/\\n/,"\n")}1' certificate.pem
    POST https://<nsx-mgr>/api/v1/trust-management/certificates/action/replace-host-certificate/<transport-node-id>
    {
          "display_name": "cert_name",
          "pem_encoded": "---BEGIN CERTIFICATE---\n<certificate>\n---END CERTIFICATE-----\n",   
          "private_key": "---BEGIN RSA PRIVATE KEY---\n<private rsa key>\n---END RSA PRIVATE KEY---\n"
        }
    例如:
    POST https://<nsx-mgr>/api/v1/trust-management/certificates/aaction/replace-host-certificate/8e84d532-2cd8-46d8-90c7-04862980f69c
    {
        "display_name": "cert_sample",
        "pem_encoded": "-----BEGIN CERTIFICATE-----\nMIIC1DCCAbygAwIBAgIUMd1fGNGnvYKtilon2UMBP4rqRAowDQYJKoZIhvcNAQEL\nBQAwDzENMAsGA1UEAwwETVlDQTAeFw0yMzA5MjYxODMxMzVaFw0zMzA5MjMxODMx\nMzVaMBYxFDASBgNVBAMMC2NlcnRfc2FtcGxlMIIBIjANBgkqhkiG9w0BAQEFAAOC\nAQ8AMIIBCgKCAQEAzMDsp1EGFPjus/xnHmacPJYVP0N8iQMb3W8TFFQC5jxdjNzi\ncMIb1YgpI+s3LJoyYCdZKeMcCWDwtgQXMTy9FYJCHKyt86CF0br9U9q9iC+NX93X\n+/wrWtXY89ESt0NOgj22sKI49EQT9bd0dNWupxapCb98Dyztk0cetIHa7ia1q7un\nXMZ7dofwuWUEUlT8qpyXF84N6bhWQSrXRyeQ+oZrsq3sAyfnKzbfcs0T3sztWn9M\nR7h8iPkjpJjVV5z1ghAgIDKFXG8RVU8fLgX5srtYV2Ij1II0qYwe/yGBfj7xsemB\n2lGGPotlbwUE5oPFISJvG9qLOoNKVLvBrxuNnQIDAQABoyEwHzAdBgNVHSUEFjAU\nBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAAqPfZWNzG/b\nBhtN2gDjr0LplfC0yi8K6Ep3exECE5UOUJvHubko4Z6eCZFT8XSrAa6eZQEVe3O3\nwFvpdedCiEpI/IaFhpRUQDubJMPao7t4Uohz3k3ONMGbIci8dVUcQRQlmxFmx3wf\n0/33fy3b1zIOXqooQF3qUlpjms/RQOdD80dSlMze8WI7yz9LZt9Zc+sr8ePRi4Xy\ntudO6EYTiWm3CC5BxDDjKpkFCACFRT4zr5HsomHsFeo4hGIHl2zN0+JoGrdrWcta\nxdl5aQYy79vIMgvz696EKUGePEpJjpyP/wlwzmIY3RvXRKThuVXvg20gi365x8+J\niKbzpCGe0P0=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIC/zCCAeegAwIBAgIUUlHXcczsdMpei1ThgeQYpvgzaxMwDQYJKoZIhvcNAQEL\nBQAwDzENMAsGA1UEAwwETVlDQTAeFw0yMzA5MjYxODI2NDZaFw0zMzA5MjMxODI2\nNDZaMA8xDTALBgNVBAMMBE1ZQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK\nAoIBAQDbr78t32TUl1qTcDGvVQhiUkktntPO/5/FRDSIjy9qyNGDrcICDAYzOe79\nceXpOzfUStacEeTXse89q1MJz4ykaU2g6EUN2E4sfoP4KznBlObLHnnlxD482DL4\nbuMA8qCe0soUsGE6uoeFHnSW3M+NRI3GtJe1MM134JQ/TSNZTv+d93nB4bS2nSK7\nA1fFDRSuj8Ey7a1im8JgykL9ahJ6yxrpk8juEJwII04nHfAG102/8/YKEZyPWcPX\nYvLZEt/lBVxRPplWfbNIo3zfA09fzb4RMaOSsyBbqTBseL/4fxlnkeu1Rii3ZwcQ\nL4Wr6mKR1YCievsuXdLK5pWUH+BtAgMBAAGjUzBRMB0GA1UdDgQWBBTnYafa1EXn\nNPIqTkIO82kdamjDgTAfBgNVHSMEGDAWgBTnYafa1EXnNPIqTkIO82kdamjDgTAP\nBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQC2Ef+CPICTdWEKW3e6\nwaObe4Y85CS2wfSBRFvt0yCAUF8yysr3kQx85wdhfDfvidQdrgQIkDKe83J61r5l\n238wFo9O10RpFWl1csY4hZ19geeTW3L8tABp+f1or1vsAogfVtcaZwmqz/LEaZ0r\n4JdONE9gq40RgX5R9GPD04k3hKr6HoNHHnBssmNHgo8pLKRv04mx0yQyn45lKvet\ngcInI9j8YLsXGHdeiZ/zXKUgKQdicBw79K/mQCpgkpaEi3K9mFUFCUU9CiWxiy62\nSN2/SEuOWlb7Kq8VwJUfUn3lKoY9sofr9zsSsh5lhQOKb1uguo8xUF8v6iLuDAjr\n9bcn\n-----END CERTIFICATE-----\n",
        "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAzMDsp1EGFPjus/xnHmacPJYVP0N8iQMb3W8TFFQC5jxdjNzi\ncMIb1YgpI+s3LJoyYCdZKeMcCWDwtgQXMTy9FYJCHKyt86CF0br9U9q9iC+NX93X\n+/wrWtXY89ESt0NOgj22sKI49EQT9bd0dNWupxapCb98Dyztk0cetIHa7ia1q7un\nXMZ7dofwuWUEUlT8qpyXF84N6bhWQSrXRyeQ+oZrsq3sAyfnKzbfcs0T3sztWn9M\nR7h8iPkjpJjVV5z1ghAgIDKFXG8RVU8fLgX5srtYV2Ij1II0qYwe/yGBfj7xsemB\n2lGGPotlbwUE5oPFISJvG9qLOoNKVLvBrxuNnQIDAQABAoIBAQCE8JH2xIWVYlbh\np3RwaaDxOWTMMY4PC2SxLegOX8mOIQ2AYv3mxjD6QDCt8I9fNzKT+ZhLuPhAIp/H\nHfrM7im6aFtycK90qfmYxbarFi/O10kMQGZ2ZjDkBkqZa1qigGHd8CHIp1shRX5M\nIHPNU9vVAsJ34Mq0s7AA2sFV46X4zyEqHKLi1qVcsj68XJCrKJPTzOXiZWOHL8e0\nx4B8mGKbnWNmrq6styyYi9rzUnucoKL459YkaF/MEBpou3wvhprkR5Ufr4eNo0YV\nr0KfcEjxZqVT2o6r59+gSZQiCHael2MgslvMUTJOPgZ8tO78RQIHpH8GnNo+QkzB\nvXDfH2zhAoGBAPbeM7OveieHL37Iu/xY2wtDagSBD5K0VJhP8OOF5G1t1nHNcyWa\nYa49hTmGJ7bQsw5oGccvvsXCgGzaNbbAQtKlcz9kiXKOpTWV3t+RXtp0IXp8MIG6\nvWYd7yey7FHumHS/wC0h/REwx10153UpYaFJe2QJHw4yG9BJgN7o4duVAoGBANRT\n6BMPqV/6P9kJtduU8sZOVv3BbyUIkoBZlw2O7LB1IjIZcEm4By9DEAqCkFMp4gST\nW6o2eyXKp0oZ1UwqKdESG2LrGePNrmbQp7LvMngyk7CDqczA5gmnlndCy27k/d1Y\nQuWz+WDrqc8EAD7wRBmrwR0p3zCntPFRJPVu+yfpAoGACkDcYOAu8KlavadUt3xx\nTJx2MM2zeeJniRP461pKTIk9WOixmaQ53mTLvcHmsF8msLh+KZnAELKtZtgBVx/R\nJrKcgMuKMenezsT0xtBg4i3knhO+aAT7jNw9bKavzg9c4ax9LOK2ghpGjYaJoIIh\nffNxXoxKb+qA4TvMUHXXu6kCgYAhGeefORzVqqTTiDECx4jFo6bqLoLOSjTUr6Ld\n6T87DzfCiba4t2jfVFwm1036uRfUUMjEk3PFY3+LDNX05snYHzOHy1Eg84rR2oua\nWLIMjQ37QbtyAUybirXpZ89hPW/aVw0u1Ez3cCXr8Rq8tSZYvi8ABewWoL6TtGvH\nm4KqKQKBgCfZrv6wpCrS5Ep/AKQGdPOXCOM8O2+b4e/NJpSIH9Zk5Elg6WAunlCp\ntHyx1pZFq5RboxFw7DsM9eUTakHvGtTJ+EFHbyc5tKqWKnVbGmDYR6pNRULPEXU9\nhBQ1pzzmwGnO6AyxTxgoY5CosK2Ga1KjsWUXqay2QwIln+E+xxsm\n-----END RSA PRIVATE KEY-----\n"
    }
    将传输节点的 ID 用作 node_id,而不是使用 Unified Appliance (UA) ID。要查找您的节点 ID,请参阅 查找证书 API 调用的节点 ID

    有关系统配置的默认自签名证书的详细令牌,或有关 VMware Cloud Foundation 证书要求,请参阅证书类型