我真的不確定兩者之間的核心差異,但是 Windows Server 2019 上的 OpenSSH 可以使用透過 PowerShell 建立的客戶端憑證(*.pfx、.cer)而不是使用公鑰/私鑰對(.pub, *.) 透過 ssh-keygen 生成?
答案1
是的,也不是,但大多數情況下不是。
OpenSSH 用戶端不理解 X.509 憑證格式,也不瞭解 PKCS#12 (.pfx) 私鑰格式,而且它也無法存取 Windows CAPI 中儲存的任何內容。它可以使用鍵本身,但必須先將它們提取為適當的格式。
同樣,OpenSSH 伺服器不允許您將 X.509 憑證放入authorized_keys(您必須執行相同的公鑰提取),而且它完全不知道如何根據根權限驗證它們。
有一個第三方分支,Roumen Petrov 的“PKIX-SSH”,它支援直接使用 X.509 憑證(但我認為它不支援載入 .pfx 或 CAPI 私密金鑰;很可能您仍然需要轉換它們為PEM 或PKCS# 8 格式)。
但是,在 Windows 上,您可能更喜歡 PuTTY-CAC(廣泛使用的 PuTTY 分支),它支援儲存在 Windows CAPI 中的憑證。
我做到了預計Microsoft 調整了他們的 OpenSSH 端口,以便能夠在 CAPI 中使用憑證和金鑰,但他們只是使用傳統的 ssh-agent 來代替...