假设我有 4 台机器,分别是本地、dmz、remote1 和 remote2。我想从本地 ssh 到 dmz,然后到 remote1,再将文件从 remote1 scp 到 remote2。我可以使用 ssh-agent 转发来执行此操作,而无需管理任何公钥/私钥,只需将我的本地公钥放在其他 3 个盒子上即可?
目前,我已ForwardAgent yes
在所有主机的 ~/.ssh/config 中配置了该配置,此外AllowAgentForwarding yes
在除本地之外的所有框中的 sshd_config 中也配置了该配置。使用此配置,我可以访问 remote1,但尝试从 remote1 ssh 到 remote2 失败。这似乎是因为我本地计算机上的私钥不适用于 remote1 上的代理。有没有办法将上游代理转发的密钥公开给目标服务器上运行的 ssh-agent?
我认为这是不可能的,但如果能得到确认或建议,将不胜感激。
编辑:
回答 Spack 的问题,SSH_AUTH_SOCK 类似于/tmp/ssh-45ZbsZLLc9/agent.19470
所有非本地盒子上的东西。