SSH隧道复杂问题

时间:2011-04-28 19:13:37

标签: bash ssh tunnel

对于编程项目我必须做一些奇怪的设置。现在,首先,我在两台服务器上拥有root权限,我认为ssh隧道是最好的方法(如果你有更好的想法,请随时告诉我)

我必须编写一个在IRC服务器上运行的软件。这并不困难,但IRC服务器只能在localhost上访问。所以我必须首先ssh到盒子然后使用irssi或类似连接到localhost:6667

现在我尝试从第二台服务器(我一直运行irssi)执行ssh-tunnel,然后隧道到服务器并通过隧道使用localhost,如:

ssh -f user@server2 -L 2000:server2:6667 -N  

现在,当我使用irssi连接到localhost:2000时,这不能正常工作。我不明白为什么,你有什么提示吗?如果你能帮助我,我会很高兴的。

此致

1 个答案:

答案 0 :(得分:3)

请记住,隧道到的地址(在您的情况下为server2:6667)是从目的地的角度来看。例如:我安装了运行ssh的VPS。如果我ssh -f user@vps -L 2000:localhost:3306我可以连接到在其上运行的MySql服务器(它只是在环回接口上监听)。

因此假设IRC服务器在server2上运行,你应该这样做:

you@server1:~$ ssh -f you@server2 -L 2000:localhost:6667 -N

然后,您可以使用IRC客户端连接到localhost:2000(在server1上),并获得与在server2上运行的IRC服务器的连接。