Google-Compute-Engine
在執行 Windows Server 的 Google Cloud VM 中初始化 TPM 虛擬智能卡
在使用 vTPM 設置 Windows 伺服器後(請參閱https://cloud.google.com/blog/products/gcp/security-in-plaintext-use-shielded-vms-to-harden-your-gcp-workloads)當嘗試使用如下命令初始化 TPM 虛擬智能卡時,Google Cloud VM 並通過遠端桌面服務 (RDS) 訪問它:
Tpmvscmgr.exe create /name "TestVirtualSC" /pin prompt /adminkey default /generate
產生以下錯誤:
Creating TPM Smart Card... TPM Virtual Smart Card management cannot be used within a Terminal Services session. (0x800704d3) The request was aborted.
那麼,有沒有辦法通過遠端 RDS 會話初始化 TPM 虛擬智能卡?或者,有沒有其他方法可以在執行 Windows Server 的 Google Cloud VM 中對其進行初始化?
您可以使用緊急管理服務 (EMS) 控制台,一旦連接,就會向您顯示命令提示符。
- 從您的終端或 Cloud Shell 中,啟用與 VM 上的串列埠的連接:
gcloud compute instances add-metadata <VM-NAME> --metadata=serial-port-enable=1
替換
<VM-NAME>
為要啟用串列埠的 VM 的名稱。
- 連接到
2
VM 串列埠上的 EMS 控制台:gcloud compute connect-to-serial-port <VM-NAME> --port 2
<VM-NAME>
用要連接的串列埠替換VM 的名稱。
- 驗證您是否看到類似於以下內容的輸出:
Computer is booting, SAC started and initialized. Use the "ch -?" command for information about using channels. Use the "?" command for general help. SAC> EVENT: The CMD command is now available. SAC>
- 使用命令創建新的命令提示符會話
cmd
並驗證類似於以下內容的輸出:The Command Prompt session was successfully launched. SAC> EVENT: A new channel has been created. Use "ch -?" for channel help. Channel: Cmd0001 SAC>
- 使用命令連接到新的命令提示符會話
ch -si 1
並驗證類似於以下內容的輸出:Name: Cmd0001 Description: Command Type: VT-UTF8 Channel GUID: 28de7392-5413-11ea-bb03-c9656a2ed613 Application Type GUID: 63d02271-8aa4-11d5-bccf-00b0d014a2d0 Press <esc><tab> for next channel. Press <esc><tab>0 to return to the SAC channel. Use any other key to view this channel.
- 按下
Enter
以連接到會話。- 通過輸入此 VM 的登錄憑據登錄到會話,之後 EMS 控制台將在
C:\Windows\system32
目錄中打開。在 EMS 控制台中鍵入help
可用命令的列表。連結:
- https://cloud.google.com/compute/docs/troubleshooting/troubleshooting-windows#ems-console
- https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2003/cc736319(v=ws.10)(注意:它說它適用於 WS 2003,但是它適用於自 2003 年以來的所有 Windows 版本。