在我继承的设置中,使用命令ssh user2@host2:user1@host1
,我可以通过 user1@host1 连接到 user2@host2 但我不明白它是如何工作的(这个 ssh 行为记录在哪里?)
此外,我希望能够设置我的 .ssh/config,以便我可以执行 ssh user2@host2 并且它直接通过 host1,我相信它可以使用 ProxyCommand 来实现,但以下是失败的:
ssh -o ProxyCommand='ssh -W %h:%p user1@host1' user2@host2
user1's password:
Received disconnect from REDACTED_IP: 11: Bye Bye
Disconnected from REDACTED_IP
ssh_exchange_identification: Connection closed by remote host
答案1
您应该检查您的$HOME/.ssh/config
记录,例如Host *:*
。如果您想了解更多它是如何工作的,请参阅以下好文章维基教科书关于那个。对于您使用的命令行,您应该=
从中删除等号ProxyCommand
:
ssh -o "ProxyCommand ssh -W %h:%p user1@host1" user2@host2
答案2
好吧,经过一段时间的实验,似乎软件host1
(我无法直接访问)已配置为user2@host2:user1
实际上是一个用户名。
因此ssh user2@host2:user1@host1
有效。