
我有rdesktop
v1.9.0。我正在嘗試連接到遠端 Win10 主機。
rdesktop
中止並出現以下錯誤:
rdesktop -v -x -z -E -d domain -u user user.domain.com
Autoselecting keyboard map 'en-us' from locale
is_wm_active(): WM name: awes
Connecting to server using NLA...
Core(warning): Certificate received from server is NOT trusted by this system, an exception has been added by the user to trust this specific certificate.
TLS Session info: (TLS1.2)-(ECDHE-X25519)-(RSA-SHA256)-(AES-256-GCM)
Failed to initialize NLA, do you have correct Kerberos TGT initialized ?
Failed to connect using NLA, trying with SSL
Failed to connect, CredSSP required by server (check if server has disabled old TLS versions, if yes use -V option).
連線進入加密 VPN 隧道內部。遠端主機肯定可用,我絕對確定遠端憑證是受信任的(但可能已過期)。
我可以使用視窗遠端桌面應用程式連接到同一台電腦(它向我顯示相同的警告,但提供了忽略證書問題並繼續連接的選項)。
我讀了man rdesktop
幾次並嘗試了與加密和證書相關的各種選項(例如-E
),似乎沒有任何幫助。兩者都無助於網路搜尋。
如何強制rdesktop
信任遠端憑證並繼續連線到遠端主機?
答案1
否,rdesktop 由於以下原因中止沒事做與證書。 (它確實像其他客戶端一樣記住並“信任”單個證書,並且您的輸出表明已經添加了例外。)
這裡的問題是 rdesktop 的 NLA (CredSSP) 支援不完整 - 它不支援基於密碼的登入所需的 NTLM 驗證機制,因此它無法像 Windows MSTSC 那樣在連接之前提示您輸入憑證。 (它的 Kerberos 支援也有點問題。)
換句話說,rdesktop 僅適用於較舊的 XP/2003 登入過程,您首先建立連接,然後查看伺服器的登入畫面。 FreeRDP 是更適合連接現代主機(Windows 7/8/10)的客戶端:
xfreerdp /bpp:32 /gfx +aero +fonts /d:domain /u:user /v:user.domain.com [/cert-...]
使用 FreeRDP,您可以新增選項/cert-tofu
來實現「首次連線時信任」憑證檢查(如在 MSTSC 中),或者您可以使用/cert-ignore
它來完全停用憑證檢查。
如果你必須使用 rdesktop,那麼您將必須在 Windows 10 主機上停用 NLA(「網路層級驗證」)要求 - 儘管由於攻擊面更高,通常不建議這樣做。