將 VMCA 憑證取代為自訂憑證的第一個步驟,是產生 CSR、傳送此 CSR 進行簽署。然後將已簽署的憑證做為根憑證新增至 VMCA。

執行這項作業的原因和時機

您可以使用 Certificate Manager 公用程式或其他工具來產生 CSR。CSR 必須符合以下需求:

  • 金鑰大小:2048 位元或以上

  • PEM 格式。VMware 支援 PKCS8 和 PKCS1 (RSA 金鑰)。金鑰新增到 VECS 之後,會轉換為 PKCS8

  • x509 第 3 版

  • 若使用自訂憑證,CA 延伸必須設為 true (若為根憑證),且憑證簽署必須位於需求清單中。

  • 必須啟用 CRL 簽署。

  • [增強金鑰使用方法] 不得包含 [用戶端驗證] 或 [伺服器驗證]。

  • 對憑證鏈結的長度無明確限制。VMCA 預設使用 OpenSSL (為 10 個憑證)。

  • 不支援含萬用字元或多個 DNS 名稱的憑證。

  • 您無法建立 VMCA 的附屬 CA。

    如需 Microsoft 憑證授權機構的使用範例,請參閱 VMware 知識庫文章 2112009,建立 Microsoft 憑證授權機構範本,用於在 vSphere 6.0 中建立 SSL 憑證。

當您取代根憑證時,VMCA 會驗證下列憑證屬性:

  • 金鑰大小 2048 位元或以上

  • 金鑰使用方式:憑證簽署

  • 基本限制:主體類型 CA

程序

  1. 產生 CSR 並將其傳送至您的 CA。

    依照 CA 指示進行。

  2. 準備包含已簽署之 VMCA 憑證以及第三方 CA 或企業 CA 之完整 CA 鏈結的憑證檔案。儲存檔案,例如儲存為 rootca1.crt

    您可以將所有 PEM 格式的 CA 憑證複製到單一檔案,以完成此項作業。您可以從 VMCA 根憑證開始複製,並於根 CA PEM 憑證結束複製。例如:

    -----BEGIN CERTIFICATE-----
    <Certificate of VMCA>
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    <Certificate of intermediary CA>
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    <Certificate of Root CA>
    -----END CERTIFICATE-----
  3. 停止所有服務,並啟動處理憑證建立、傳播和儲存的服務。

    Windows 和 vCenter Server Appliance上的服務名稱並不相同。

    Windows

    service-control --stop --all
    service-control --start VMWareAfdService
    service-control --start VMWareDirectoryService
    service-control --start VMWareCertificateService
    

    vCenter Server Appliance

    service-control --stop --all
    service-control --start vmafdd
    service-control --start vmdird
    service-control --start vmcad
    
  4. 取代現有的 VMCA 根 CA。
    certool --rootca --cert=rootca1.crt --privkey=root1.key

    當您執行此命令時,會執行下列動作:

    • 將新的自訂根憑證新增到檔案系統中的憑證位置。

    • 將自訂根憑證附加到 VECS 中的 TRUSTED_ROOTS 存放區 (過一段時間)。

    • 將自訂根憑證新增到 vmdir (過一段時間)。

  5. (選擇性) ︰ 如果要將變更傳播到所有 vmdir (VMware Directory Service) 執行個體,請將新的根憑證發佈到 vmdir,並提供每個檔案的完整檔案路徑。

    例如:

    dir-cli trustedcert publish --cert rootca1.crt

    vmdir 節點間的複寫每隔 30 秒會進行一次。您不需要明確將根憑證新增到 VECS,因為 VECS 會每隔 5 分鐘輪詢 vmdir 是否有新的根憑證檔案。

  6. (選擇性) ︰ 如有必要,您可以強制重新整理 VECS。
    vecs-cli force-refresh
  7. 重新啟動所有服務。
    service-control --start --all
    

取代根憑證

使用 certool 命令與 --rootca 選項,將 VMCA 根憑證取代為自訂 CA 根憑證。

C:\>"C:\Program Files\VMware\vCenter Server\vmcad\certool" --rootca --cert=C:\custom-certs\root.pem -–privkey=C:\custom-certs\root.key

當您執行此命令時,會執行下列動作:

  • 將新的自訂根憑證新增到檔案系統中的憑證位置。

  • 將自訂根憑證附加到 VECS 中的 TRUSTED_ROOTS 存放區。

  • 將自訂根憑證新增到 vmdir。

下一步

如果公司原則需要,您可以從憑證存放區移除原始的 VMCA 根憑證。如果您這麼做,必須取代 vCenter Single Sign-On 簽署憑證。請參閱重新整理安全性 Token 服務憑證