Ssh

具有相同密碼的 ssh 代理命令

  • April 6, 2018

我有一個跳轉/代理主機(“跳轉”),用於訪問我的最終目標主機(“最終”)。我已正確配置它以允許我進入。但是,它需要我輸入我的密碼兩次(一次用於“跳躍”,一次用於“最終”。)

~/.ssh/配置…

Host jump
       Hostname jump.domain.com
       User username
       IdentityFile ~/.ssh/id_rsa

Host final
       Hostname final.otherdomain.com
       User username
       IdentityFile ~/.ssh/id_rsa
       ProxyCommand ssh -q jump -W %h:%p

是否有一種安全的方法可以將第一個條目中的密碼傳遞給第二個條目?除了不便之外,我還擔心每次需要訪問“final”時都會多次輸入複雜的密碼而將自己鎖在門外。

我沒有“跳轉”或“最終”的管理員權限,但可以向我們的支持技術請求合理的更改。

我不認為這很重要,但這是通過 WSL(Linux 的 Windows 子系統)在 Bash 中實現的。

**PS:我在 StackExchange 網路和 Google 上發現了幾個執行緒,這些執行緒涉及通過腳本編寫的安全方式。**我希望它只是我可以添加到我的配置中以啟用它的東西。

我還發現github 上的這篇文章似乎涵蓋了與我試圖實現的目標相似的(可能)效果……

“這有點像要求朋友輸入他們的密碼,以便您可以使用他們的電腦。”

使用那裡的提示,我檢查了“跳轉”和“最終”的 ForwardAgent 設置,並且都將其禁用…

cat /etc/ssh/ssh_config | grep Forward

ForwardAgent no

這實際上是指我想要實現的目標嗎?是否存在導致關閉此功能的安全隱患?

似乎沒有辦法用密碼來做到這一點。

如果您改用公鑰身份驗證,並將私鑰載入到客戶端上正在執行的 ssh-agent 中,那麼跳轉主機和最終主機的登錄都將使用該密鑰並讓您登錄。您將只有在將私鑰載入到 ssh-agent 時輸入一次密碼。

引用自:https://serverfault.com/questions/906298