我一直在寻找一种解决方案来隧道到防火墙后面的机器,通过VNC(或其他端口)。就像在old usenet post中解释的那样,我将在此重述:
我必须登录中间机器,例如:
local $ ssh interim
interim $ ssh remote
remote $ ...any commands...
这很好用。但是现在我正在尝试将vnc会话从远程隧道传输到本地,并且我无法使用一个或两个步骤找到神奇的咒语。
答案 0 :(得分:5)
我最近发现了一个非常简单且适应性强的解决方案:只需通过连接到防火墙将ssh隧道传送到目标系统。像这样:
local $ ssh -L 2222:remote:22 interim
interim $ ...no need to do anything here...
在另一个本地控制台中,您连接到端口2222上的localhost,这实际上是您的远程目标:
local $ ssh -C -p 2222 -L 5900:localhost:5900 localhost
remote $ ...possibly start you VNC server here...
在另一个本地控制台中:
local $ xtightvncviewer :0
就这么简单。您可以将所需的任何端口转发添加到第二个命令(-L localport:localhost:remoteport
),就像没有任何中间防火墙一样。例如,对于RDP:-L 3389:localhost:3389