vecs-cli 命令集可讓您管理 VMware 憑證存放區 (VECS) 的執行個體。將這些命令與 dir-clicertool 搭配使用,以管理您的憑證基礎結構和其他 Platform Services Controller 服務。

vecs-cli store create

建立憑證存放區。

選項 說明
--name <name> 憑證存放區的名稱。

--server <server-name>

用於指定伺服器名稱 (如果您連線至遠端 VECS 執行個體)。

--upn <user-name>

用於登入--server <server-name> 指定之伺服器執行個體的使用者主體名稱。建立存放區時,會在目前使用者內容中建立。因此,存放區的擁有者是目前使用者內容,而不總是根使用者。

範例:
vecs-cli store create --name <store>

vecs-cli store delete

刪除憑證存放區。您無法刪除 MACHINE_SSL_CERT、TRUSTED_ROOTS 和 TRUSTED_ROOT_CRLS 系統存放區。具有所需權限的使用者可以刪除解決方案使用者存放區。

選項 說明
--name <name> 要刪除的憑證存放區的名稱。

--server <server-name>

用於指定伺服器名稱 (如果您連線至遠端 VECS 執行個體)。

--upn <user-name>

用於登入--server <server-name> 指定之伺服器執行個體的使用者主體名稱。建立存放區時,會在目前使用者內容中建立。因此,存放區的擁有者是目前使用者內容,而不總是根使用者。

範例:
vecs-cli store delete --name <store>

vecs-cli store list

列出憑證存放區。

選項 說明

--server <server-name>

用於指定伺服器名稱 (如果您連線至遠端 VECS 執行個體)。

--upn <user-name>

用於登入--server <server-name> 指定之伺服器執行個體的使用者主體名稱。建立存放區時,會在目前使用者內容中建立。因此,存放區的擁有者是目前使用者內容,而不總是根使用者。

VECS 包含下列存放區。
表 1. VECS 中的存放區
存放區 說明
機器的 SSL 存放區 (MACHINE_SSL_CERT)
  • 由每個 vSphere 節點上反向 Proxy 服務所使用。
  • 供內嵌式部署和每個 Platform Services Controller節點上的 VMware Directory Service (vmdir) 使用。

vSphere 6.0 及更新版本中的所有服務都會透過使用機器 SSL 憑證的反向 Proxy 進行通訊。為確保回溯相容性,5.x 服務仍會使用特定的連接埠。因此,部分服務 (例如 vpxd) 仍會將自己的連接埠維持開啟。

受信任的根存放區 (TRUSTED_ROOTS) 包含所有受信任的根憑證。
解決方案使用者存放區
  • machine
  • vpxd
  • vpxd-extension
  • vsphere-webclient
對於每個解決方案使用者,VECS 包含一個存放區。每個解決方案使用者憑證的主旨必須是唯一的,例如,機器憑證不能與 vpxd 憑證的主旨相同。

解決方案使用者憑證用於透過 vCenter Single Sign-On進行驗證。vCenter Single Sign-On 會檢查憑證是否有效,但不會檢查其他憑證屬性。在內嵌式部署中,所有解決方案使用者憑證均位於同一系統中。

每個管理節點和每個內嵌式部署上的 VECS 中包含下列解決方案使用者憑證存放區:

  • machine:由 Component Manager、授權伺服器及記錄服務所使用。
    備註: 機器解決方案使用者憑證與機器的 SSL 憑證毫無關聯。機器解決方案使用者憑證用於進行 SAML Token 交換。機器的 SSL 憑證用於對機器進行安全 SSL 連線。
  • vpxd:vCenter 服務精靈 (vpxd) 存放區位於管理節點和內嵌式部署中。vpxd 會使用此存放區中儲存的解決方案使用者憑證向 vCenter Single Sign-On 進行驗證。
  • vpxd-extension:vCenter 延伸存放區。包含 Auto Deploy 服務、Inventory Service 及不屬於其他解決方案使用者的其他服務。
  • vsphere-webclientvSphere Web Client 存放區。還包括一些其他服務,例如效能圖服務。

每個 Platform Services Controller節點均包含一個 machine 憑證。

vSphere Certificate Manager 公用程式備份存放區 (BACKUP_STORE) 由 VMCA (VMware Certificate Manager) 用於支援憑證還原。只有最新狀態會儲存為備份,您無法還原一個以上的步驟。
其他存放區 其他存放區可能由解決方案新增。例如,Virtual Volumes 解決方案將新增一個 SMS 存放區。除非 VMware 說明文件或 VMware 知識庫文章指示您修改這些存放區中的憑證,否則請勿這麼做。
備註: 刪除 TRUSTED_ROOTS_CRLS 存放區會損壞您的憑證基礎結構。請勿刪除或修改 TRUSTED_ROOTS_CRLS 存放區。
範例:
vecs-cli store list

vecs-cli store permissions

授與或撤銷存放區權限。使用 --grant--revoke 選項。

存放區的擁有者可以執行所有作業,包括授與和撤銷權限。本機 vCenter Single Sign-On 網域的管理員,預設為 [email protected],具備所有存放區上的所有權限,包括授與和撤銷權限。

您可以使用 vecs-cli get-permissions --name <store-name> 擷取存放區的目前設定。

選項 說明
--name <name> 憑證存放區的名稱。
--user <username> 為其授與權限的使用者的唯一名稱。
--grant [read|write] 授與讀取或寫入權限。
--revoke [read|write] 撤銷讀取或寫入權限。目前不支援。

vecs-cli store get-permissions

擷取存放區目前的權限設定。

選項 說明
--name <name> 憑證存放區的名稱。

--server <server-name>

用於指定伺服器名稱 (如果您連線至遠端 VECS 執行個體)。

--upn <user-name>

用於登入--server <server-name> 指定之伺服器執行個體的使用者主體名稱。建立存放區時,會在目前使用者內容中建立。因此,存放區的擁有者是目前使用者內容,而不總是根使用者。

vecs-cli entry create

在 VECS 中建立一個項目。使用此命令新增私密金鑰或憑證到存放區。

選項 說明

--store <NameOfStore>

憑證存放區的名稱。

--alias <Alias> 憑證的選用別名。受信任的根存放區將忽略此選項。
--cert <certificate_file_path> 憑證檔案的完整路徑。
--key <key-file-path>

對應於憑證之金鑰的完整路徑。

選擇性。
--password <password> 用於加密私密金鑰的選擇性密碼。

--server <server-name>

用於指定伺服器名稱 (如果您連線至遠端 VECS 執行個體)。

--upn <user-name>

用於登入--server <server-name> 指定之伺服器執行個體的使用者主體名稱。建立存放區時,會在目前使用者內容中建立。因此,存放區的擁有者是目前使用者內容,而不總是根使用者。

vecs-cli entry list

列出指定存放區中的所有項目。

選項 說明
--store <NameOfStore>

憑證存放區的名稱。

vecs-cli entry getcert

從 VECS 擷取憑證。您可以將憑證傳送到輸出檔案,或將其顯示為人類可讀的文字。

選項 說明
--store <NameOfStore>

憑證存放區的名稱。

--alias <Alias> 憑證的別名。
--output <output_file_path> 要將憑證寫入的檔案。
--text 顯示人類可讀的憑證版本。

--server <server-name>

用於指定伺服器名稱 (如果您連線至遠端 VECS 執行個體)。

--upn <user-name>

用於登入--server <server-name> 指定之伺服器執行個體的使用者主體名稱。建立存放區時,會在目前使用者內容中建立。因此,存放區的擁有者是目前使用者內容,而不總是根使用者。

vecs-cli entry getkey

擷取儲存在 VECS 中的金鑰。您可以將金鑰傳送到輸出檔案,或將其顯示為人類可讀的文字。

選項 說明
--store <NameOfStore>

憑證存放區的名稱。

--alias <Alias> 金鑰的別名。
--output <output_file_path> 要將金鑰寫入的輸出檔案。
--text 顯示人類可讀的金鑰版本。

--server <server-name>

用於指定伺服器名稱 (如果您連線至遠端 VECS 執行個體)。

--upn <user-name>

用於登入--server <server-name> 指定之伺服器執行個體的使用者主體名稱。建立存放區時,會在目前使用者內容中建立。因此,存放區的擁有者是目前使用者內容,而不總是根使用者。

vecs-cli entry delete

刪除憑證存放區中的項目。如果您刪除 VECS 中的項目,則會將其從 VECS 永久移除。唯一的例外是目前的根憑證。VECS 會輪詢 vmdir 是否有根憑證。

選項 說明
--store <NameOfStore>

憑證存放區的名稱。

--alias <Alias> 您想要刪除之項目的別名。

--server <server-name>

用於指定伺服器名稱 (如果您連線至遠端 VECS 執行個體)。

--upn <user-name>

用於登入--server <server-name> 指定之伺服器執行個體的使用者主體名稱。建立存放區時,會在目前使用者內容中建立。因此,存放區的擁有者是目前使用者內容,而不總是根使用者。

-y 隱藏確認提示。僅適用進階使用者。

vecs-cli force-refresh

強制重新整理 VECS。依預設,VECS 會每隔 5 分隔輪詢 vmdir 是否有新根憑證檔案。使用此命令可從 vmdir 立即更新 VECS。

選項 說明

--server <server-name>

用於指定伺服器名稱 (如果您連線至遠端 VECS 執行個體)。

--upn <user-name>

用於登入--server <server-name> 指定之伺服器執行個體的使用者主體名稱。建立存放區時,會在目前使用者內容中建立。因此,存放區的擁有者是目前使用者內容,而不總是根使用者。