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

您可以使用 Certificate Manager 公用程式或其他工具來產生 CSR。CSR 必須符合以下需求:
  • 金鑰大小:2048 位元 (下限) 至 16384 位元 (上限) (PEM 編碼)
  • PEM 格式。VMware 支援 PKCS8 和 PKCS1 (RSA 金鑰)。金鑰新增到 VECS 之後,會轉換為 PKCS8。
  • x509 第 3 版
  • 對於根憑證,CA 延伸必須設為 true,憑證簽署必須位於需求清單中。例如:
    basicConstraints        = critical,CA:true
    keyUsage                = critical,digitalSignature,keyCertSign
  • 必須啟用 CRL 簽署。
  • [延伸金鑰使用方法] 可以為空白或包含伺服器驗證。
  • 對憑證鏈結的長度無明確限制。VMCA 預設使用 OpenSSL (為 10 個憑證)。
  • 不支援含萬用字元或多個 DNS 名稱的憑證。
  • 您無法建立 VMCA 的附屬 CA。

    如需使用 Microsoft 憑證授權機構的範例,請參閱 VMware 知識庫文章:Creating a Microsoft Certificate Authority Template for SSL certificate creation in vSphere 6.x (在 vSphere 6.x 中建立 Microsoft 憑證授權機構範本以建立 SSL 憑證),網址為 http://kb.vmware.com/kb/2112009

當您取代根憑證時,VMCA 會驗證下列憑證屬性:
  • 金鑰大小:2048 位元 (下限) 至 16384 位元 (上限)
  • 金鑰使用方式:憑證簽署
  • 基本限制:主體類型 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. 停止所有服務,並啟動處理憑證建立、傳播和儲存的服務。
    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
    如果憑證鏈結中具有多個憑證:
    dir-cli trustedcert publish --cert rootcal.crt --chain
    vmdir 節點間的複寫每隔 30 秒會進行一次。您不需要明確將根憑證新增到 VECS,因為 VECS 會每隔 5 分鐘輪詢 vmdir 是否有新的根憑證檔案。
  6. (選擇性) 如有必要,您可以強制重新整理 VECS。
    vecs-cli force-refresh
  7. 重新啟動所有服務。
    service-control --start --all
    

範例: 取代根憑證

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

/usr/lib/vmware-vmca/bin/certool --rootca --cert=<path>/root.pem -–privkey=<path>/root.key
當您執行此命令時,會執行下列動作:
  • 將新的自訂根憑證新增到檔案系統中的憑證位置。
  • 將自訂根憑證附加到 VECS 中的 TRUSTED_ROOTS 存放區。
  • 將自訂根憑證新增到 vmdir。

下一步

如果公司原則需要,您可以從憑證存放區移除原始的 VMCA 根憑證。如果您這麼做,必須取代 vCenter Single Sign-On 簽署憑證。請參閱使用命令列取代 vCenter Server STS 憑證