我正在尝试通过多个主机进行 ssh 操作,这样做没有任何问题,如下所示:
ssh -t -t user1@host1 ssh -t -t -p 222 user2@host2
现在我想使用本地主机访问第三个主机,我这样做:
ssh -L 2222:host3:22 -t -t user1@host1 ssh -p 222 user2@host2
问题:
当我执行ssh -p 2222 user3@localhost
任何操作时,什么都没有发生(例如连接超时)。但ssh -t -t user1@host1 ssh -t -t -p 222 user2@host2 ssh user3@host3
运行起来却非常正常。
答案1
正在通过-L 2222:host3:22
转发本地端口 2222 至。我假设未连接到。如果有,您不会通过 进行连接。host3:22
host1
host1
host3
host2
您需要将端口从host1
转发到host2
,然后将本地端口转发到 上的转发端口host1
。
这应该可以(我现在无法测试):
ssh -L 2222:host2:2223 -t -t user1@host1 ssh -L 2223:host3:22 -p 222 user2@host2
本地主机:2222 => 主机2:2223 => 主机3:22