使用相同密码的 ssh 代理命令

使用相同密码的 ssh 代理命令

我有一个跳转/代理主机(“jump”),用于访问我的最终目标主机(“final”)。我已正确配置它以允许我进入。但是,它要求我输入两次密码(一次用于“jump”,一次用于“final”。)

〜/.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 中实现的。


附言:我在 StackExchange 网络和 Google 上找到了几个涉及安全意味着通过脚本。我希望它只是我可以添加到我的配置中以启用它的东西。

我还发现这个帖子来自 github 的似乎涵盖了我想要实现的(可能)类似的效果......

“这有点像要求朋友输入密码以便你可以使用他们的电脑。”

使用尖端在那里,我检查了“跳转”和“最终”的 ForwardAgent 设置,并且都已禁用......

cat /etc/ssh/ssh_config | grep Forward

ForwardAgent no

这实际上是指我想要实现的目标吗?关闭此功能是否存在安全隐患?

答案1

似乎没有办法使用密码来做到这一点。

如果您改用公钥身份验证,并将私钥加载到客户端上运行的 ssh 代理中,则跳转主机和最终主机的登录都将使用该密钥并让您登录。当您将私钥加载到 ssh 代理中时,您只需输入一次密码。

相关内容