Windows 遠端桌面的私鑰/公鑰驗證

Windows 遠端桌面的私鑰/公鑰驗證

Windows RDP(遠端桌面協定)是否存在類似 SSH(在 Linux 中)公鑰/私鑰驗證(而不是保持正常密碼驗證開啟)的功能?

我在網路上發現了這個主題的相互矛盾的答案。我希望能夠將私鑰分發到客戶端設備,而不是在每次登入時使用複雜的密碼(假設我不想最終完全停用密碼身份驗證)。

答案1

遠端桌面支援名為「智慧卡身份驗證」的 X.509 用戶端憑證。儘管有這個名字,但它應該使用本地安裝的憑證/金鑰(即沒有實際的智慧卡)。但據我所知,它確實需要 Active Directory 網域。

所以,有點但並不是真正對你有用的方式。

答案2

如果沒有 AD 網域,阻止簡單的使用者名稱和密碼存取的可能性是:

  1. 安裝 OpenSSH for Windows(來自https://github.com/PowerShell/Win32-OpenSSH/releases或在 Windows 10 和 2019 上這是一個可用的功能),
  2. 使用SSH客戶端使用金鑰登錄,
  3. 透過 SSH 停用密碼驗證(在 %ProgramData%\ssh\sshd_config 中取消註解並將「密碼身份驗證」設為「no」),
  4. 如果您需要圖形介面,請將 SSH 用戶端設定為透過 SSH 建立 RDP 隧道(https://www.saotn.org/tunnel-rdp-through-ssh/),
  5. 停用網路上的「常規」RDP 流量(TCP 連接埠 3389)(不在本機 Windows 防火牆上!),以便無法使用密碼登入。

花幾美元可能會有更好的選擇。例如,我聽說過 Yubico 的解決方案(使用硬體令牌):https://support.yubico.com/support/solutions/articles/15000028729-yubico-login-for-windows-configuration-guide

相關內容