SSH连接到本地网络上的远程

时间:2016-07-08 07:10:41

标签: linux ssh tunneling

我在Linux上有2台计算机(类似ubuntu),两台都在分离的本地网络(192.168.xxx.xxx)上。

我想通过ssh连接Linux1中的Linux2,但它没有任何公共IP。

我还有一个公共服务器(srv.domain.com) 我想两台PC都可以连接到服务器,它可以转发命令??

但我无法弄清楚如何做到这一点。有人已经做了类似的事情,可以向我解释。

我在所有机器上都有root权限

非常感谢你的帮助!!!

1 个答案:

答案 0 :(得分:0)

最简单的方法是使防火墙/路由器允许主机之间的ssh连接。但还有另一种方式:

如果您的服务器可以访问两个客户端,您可以ssh到服务器并将端口重定向到另一台机器上的ssh:

ssh -L 1234:CLIENT2:22 -l USERNAME SERVERNAME
登录机器后

打开另一个终端窗口并输入:

ssh -l USERNAME -p 1234 localhost
  • USERNAME应替换为服务器/秒上的用户名 客户。
  • CLIENT2应该替换为ip或主机名 第二个客户。
  • SERVERNAME应替换为您的名称 服务器

您也可以ssh到服务器上并从那里打开另一个ssh会话。但这很容易;)

如果您的服务器无法访问客户端,则必须反过来构建隧道:

ssh -R 1234:22 -l USERNAME SERVERNAME
登录机器后,打开另一台机器上的终端窗口并输入:

ssh -l USERNAME -p 1234 SERVERNAME
  • USERNAME应替换为服务器/秒上的用户名 客户。
  • SERVERNAME应替换为您的名称 服务器