我可以使用另一个 ssh 服务器作为中介来访问 ssh 服务器吗?

我可以使用另一个 ssh 服务器作为中介来访问 ssh 服务器吗?

我有两台服务器

Server1 -> Static IP1 
Server2 -> Static IP2

Server2的防火墙仅允许来自Static IP1

Server1我可以从任何地方通过 ssh连接。

如何Server2通过 ssh 一步从位于动态 IP 后面的 PC 连接到,而不是通过 ssh 连接,Server1然后从s shellServer2内执行另一次 ssh 操作。Server1

答案1

如果您有 OpenSSH 7.3p1 或更高版本,您可以server1在单个命令中告诉它用作跳转主机:

ssh -J server1 server2

FCBSD回答对于旧版本。

答案2

你需要使用SSH端口转发,根据您的需要,您要么需要该-L选项,要么需要该-R选项。

ssh server1 -g -L 2222:server2:22

允许-g远程主机连接到本地转发端口,并-L在 server1 端口 2222 上建立连接以连接到 server2 端口 22。

因此,server1ssh localhost -p 2222会将您连接到 server2。

如果您遇到问题,使用-vvv它将有助于提供大量调试输出。

设置-R反向隧道,因此远程主机上的连接将转发到本地端。

相关内容