我正在使用 SSH 的新 ProxyJump 选项。我在代理的 IdentityFile 方面遇到了麻烦。
SSH 配置示例:
Host proxy
HostName 1.0.0.1
User foo
Port 1234
Identityfile ~/.ssh/mykey.id_rsa
Host target
HostName 1.0.1.1
User bar
Port 5678
Identityfile ~/.ssh/mykey.id_rsa
ProxyJump proxy
ForwardAgent yes
示意图:
ssh ssh
localhost ------> proxy ------> target
^ ^
using using
mykey mykey
使用带有此配置的 ssh 命令可以解决此问题:
ssh target
我尝试在没有配置文件的情况下执行此操作,但是它不起作用:
ssh -i ~/.ssh/mykey.id_rsa -AJ [email protected]:1234 [email protected]:5678
我找不到-i
为 ProxyJump 主机和目标主机指定 IdentityFile 的方法以使其工作。
这有效:
ssh -i ~/.ssh/mykey.id_rsa -AJ proxy [email protected]:5678
有没有办法使用-i
、-A
或-J
标志-o
来做到这一点?
答案1
据我所知,您无法使用新的跳转魔法来实现这一点。但它应该可以与“旧”代理命令一起使用:
ssh -i ~/.ssh/mykey.id_rsa -Ao ProxyCommand="ssh -i ~/.ssh/mykey.id_rsa -W %h:%p -p 1234 [email protected]" -p 5678 [email protected]