VMware Cloud Director 使用 SSL 信號交換保護用戶端與伺服器之間通訊的安全。
簽署憑證由授權的憑證授權機構 (CA) 簽署,只要本機作業系統信任存放區具有 CA 的根憑證和中繼憑證的複本,瀏覽器就會信任這些憑證。一些 CA 要求提交憑證需求,其他一些 CA 要求提交憑證簽署要求 (CSR)。在這兩種情況下,您都將建立自我簽署憑證,並依據該憑證產生 CSR。CA 使用其私密金鑰對憑證進行簽署,然後您可以使用其公開金鑰複本對其進行解密,並建立信任關係。
更新已過期的 SSL 憑證時,無需向 VMware Cloud Director 提供有關已過期憑證的任何資料。這意味著,將所需的 SSL 憑證匯入到 VMware Cloud Director 應用裝置後,無需對其進行備份。
可以將 PEM 檔案直接匯入 VMware Cloud Director 應用裝置。如果憑證檔案採用其他格式,則可以先使用 OpenSSL 將其轉換為 PEM,然後再使用儲存格管理工具將其匯入到 VMware Cloud Director。
VMware Cloud Director 應用裝置中的憑證管理
您可以使用Service Provider Admin Portal管理儲存格 HTTP 憑證。儲存格管理工具的 certificates
命令已移除。由於這些原因,10.6 及更新版本的憑證管理與較早版本明顯不同。
依預設,部署 VMware Cloud Director 應用裝置執行個體時,VMware Cloud Director 會產生自我簽署憑證,並使用這些憑證來設定 VMware Cloud Director 儲存格以進行安全通訊。部署應用裝置後,您可以將儲存格重新設定為使用已簽署的憑證。
從版本 10.5.0 及更早版本升級到版本 10.5.1 及更新版本時,VMware Cloud Director 會將每個儲存格的現有 HTTP 憑證從磁碟移轉至 System
組織的憑證程式庫。如果磁碟上 HTTP 憑證之前在伺服器群組中的每個儲存格之間共用 (例如,與萬用字元憑證一樣),則 VMware Cloud Director 只會向憑證程式庫新增一個複本,並且每個儲存格將成為程式庫項目的取用者。
從 VMware Cloud Director 10.5.1 開始,除了 VMware Cloud Director 用於儲存格的 HTTPS 通訊的憑證外,VMware Cloud Director 還使用第二個憑證來保護 Java Management Extensions (JMX) 通訊。JMX 用於促進儲存格間通訊。使用 JMX,每個儲存格都可以在伺服器群組中的其他儲存格上叫用遠端作業。VMware Cloud Director 10.6.x 儲存格首次啟動時,VMware Cloud Director 會自動產生 JMX 憑證,並將其新增至 System
組織的憑證程式庫和受信任的憑證。
取代或更新 VMware Cloud Director 儲存格的憑證
如果憑證到期,或者您要將自我簽署的憑證取代為妥善簽署的憑證,您可能需要取代或更新 VMware Cloud Director 儲存格的憑證。
先決條件
-
部署後,VMware Cloud Director 應用裝置會產生金鑰大小為 2048 位元的自我簽署憑證。在選擇適當的金鑰大小之前,請評估安裝的安全性需求。根據 NIST 特刊 800-131A,VMware Cloud Director 不支援小於 1024 位元的密鑰大小。
如果需要產生新憑證讓憑證授權機構 (CA) 簽署,請參閱為 VMware Cloud Director HTTPS 端點產生自我簽署憑證。
- 確認即將建立的憑證鏈結中沒有任何憑證使用 SHA1。VMware Cloud Director 不接受簽章演算法使用 SHA1 的憑證,例如,
sha1WithRSAEncryption
。 - 將 HTTP 資料上傳到憑證程式庫之前,您必須準備憑證鏈結以供伺服器分發憑證。
如果您有中繼憑證,例如,intermediate-certificate-file-{1-n}.cer,請將其附加至 HTTPS 憑證。
在少數情況下,還可以附加根憑證 root-CA-certificate.cer。這種情況並不常見,如果您的 CA 是使用最現代化的瀏覽器散佈憑證的公認憑證授權機構之一,這通常不適用。請諮詢您的 CA 瞭解詳細資訊,並確定是否必須附加根憑證。
cat intermediate-certificate-file-1.cer intermediate-certificate-file-2.cer >> your-http-certificate.pem
其中,intermediate-certificate-file-1.cer 和 intermediate-certificate-file-2.cer 是中繼憑證的名稱。
- 確認憑證採用 PEM 編碼的 X.509 格式,並且其關聯的私密金鑰採用 PEM 編碼的 PKCS #8 格式。只能將這些格式的憑證上傳到憑證程式庫。
- 將憑證及其關聯的私密金鑰匯入
System
組織的憑證程式庫中。請參閱〈使用 VMware Cloud Director 服務提供者管理入口網站將憑證匯入憑證程式庫〉。 - 變更儲存格的憑證。
- 對叢集中的每個應用裝置重複執行步驟 1 和 2。
取代或更新 VMware Cloud Director 應用裝置管理憑證
- 以 root 身分直接登入或使用 SSH 登入 VMware Cloud Director 應用裝置的作業系統。
- 若要停止 VMware Cloud Director 服務,請執行下列命令。
/opt/vmware/vcloud-director/bin/cell-management-tool -u administrator cell --shutdown
- 執行以下命令,為內嵌式 PostgreSQL 資料庫和 VMware Cloud Director 應用裝置管理使用者介面產生自我簽署憑證。
/opt/vmware/appliance/bin/generate-appliance-certificates.sh
備註: 從 VMware Cloud Director 10.5.1.1 開始,generate-certificates.sh
指令碼已重新命名為generate-appliance-certificates.sh
,並且該指令碼只會更新 VMware Cloud Director 應用裝置憑證。 VMware Cloud Director 憑證更新和取代不再由該指令碼完成。此命令會自動針對內嵌式 PostgreSQL 資料庫和應用裝置管理 UI 使用新產生的憑證。PostgreSQL 和 Nginx 伺服器將重新啟動。
- (可選) 如果要讓 CA 對新產生的憑證進行簽署,請取得 CA 簽署憑證,複製這些憑證,然後重新啟動服務。
- 在 vcd_ova.csr 檔案中建立憑證簽署要求。
openssl req -new -key /opt/vmware/appliance/etc/ssl/vcd_ova.key -reqexts SAN -config <(cat /etc/ssl/openssl.cnf <(printf "\n[SAN]\nsubjectAltName=DNS:vcd2.example.com,DNS:vcd2,IP:10.100.101.10\n")) -out vcd_ova.csr
- 將憑證簽署要求傳送至 CA。如果必須指定 Web 伺服器類型,請使用 Jakarta 格式。
- 取得 CA 簽署憑證時,請複製 CA 簽署憑證以覆寫原始憑證。
cp ca-signed-vcd_ova.pem /opt/vmware/appliance/etc/ssl/vcd_ova.crt
- 重新啟動
nginx
和postgres
服務。systemctl restart nginx.service systemctl restart vpostgres.service
- 在 vcd_ova.csr 檔案中建立憑證簽署要求。
- 重新啟動 VMware Cloud Director 服務。
service vmware-vcd start