使用金鑰檔案從 CL 進行 ssh 從 Windows 用戶端到 Linux 伺服器

使用金鑰檔案從 CL 進行 ssh 從 Windows 用戶端到 Linux 伺服器

這種事情讓我發瘋——希望有明顯的解決方案。在 Win 10 筆記型電腦和我的一台 Linux 伺服器上有密鑰。如果我使用 puTTY,我可以在筆記型電腦上明確瀏覽到密鑰文件,效果非常好。

但是,使用 CL 中的 ssh 進行金鑰交換時一點也不走運。而且,這就是我被困住的地方......

1\ Linux 伺服器使用非標準連接埠(例如 1234)。假設 Linux 伺服器上的使用者名稱是 bob。

2\ 如果我使用簡單的密碼身份驗證,而不是金鑰交換,那麼

ssh -p 1234 [email protected]

工作完美。

3\ 但是,如果我嘗試從命令列進行 ssh,指向密鑰文件,則沒有這樣的運氣。筆記型電腦上的使用者目錄有一個空格(例如,c:\users\Bob Jones...),這可能是問題的一部分(也可能不是)。 ppk(我稱之為 server.ppk)位於 c:\users\Bob Jones.ssh 中

所以,理論上,以下應該有效(再一次,理論上...)

ssh  -i "C:\Users\Bob Jones/.ssh/server"  [email protected]  -p 1234

但是……沒有運氣。前面的(以及我嘗試過的各種排列)會引發以下錯誤:

 Warning: Identity file C:\Users\Bob Jones/.ssh/server' not accessible: No such file or directory.
 [email protected]: Permission denied (publickey,gssapi-keyex,gssapi-with-mic). 

那麼,我錯過了什麼明顯的事情?密鑰文件在那裡並且可以工作完美使用 puTTY,我可以使用 GUI 明確指向該鍵。但如果我能弄清楚如何使用 CL 讓事情正常工作,那就很危險了。

提前致謝...

答案1

Windows 是否理解“C:\Users\Bob Jones/.ssh/server”與“C:\Users\Bob Jones.ssh\server.ppk”

相關內容