我需要从目标服务器执行 rsync,中间有一个服务器,我在目标服务器和中间服务器上都有相同的公钥。我想使用该密钥,这样我就不必进行密码验证。
local --ssh--> middle --ssh--> target
Run Code Online (Sandbox Code Playgroud)
阅读通过防火墙使用 rsync 的方法 1 看起来这是可行的,但我已经能够弄清楚命令语法的 ssh 部分。
当我尝试
ssh -i $KEY -A user@middle ssh user@target
Run Code Online (Sandbox Code Playgroud)
我得到
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password).
Run Code Online (Sandbox Code Playgroud)
显然,代理转发并没有像我预期的那样发生。
理想情况下,我想将所有内容都放在一个命令中,而不必在 ~/.ssh/config 文件中放入任何内容。在这种情况下执行 rsync 的所有步骤是什么?
谢谢,埃弗雷特