我如何使用SSH隧道从一个Ubuntu的盒子到另一个

我是SSH和Linux的新手,所以请不要笑,如果这是一个简单的问题。 我已经看过,并没有真正发现任何使用谷歌,这正是我想要的。

build立

家庭局域网

路由器 – 侦听端口443 – 将端口443上的任何内容redirect到“sshserver”上的端口22

Ubuntu服务器(路由器后面) – 名称= sshserver – 安装openSSH。 IP地址192.168.2.2 – 侦听端口22上的SSH – 系统首选项 – 远程桌面 – 启用 – 密码 – (取消确认与此计算机的每个连接)

在我家外面

安装了Putty的Ubuntu Desktop(name = workstation)。 很明显,我的IP地址取决于我在哪里。

我现在可以做什么

我可以ssh到我的“sshserver”使用“工作站”没有问题。 一切都很好。 我使用Putty将我的Ubuntu“工作站”连接到“sshserver”。

我曾经尝试过

我的理解是,在Ubuntu中检查“远程桌面”时,VNC将在5900端口上运行。因为我知道会话屏幕页面正常工作(我总是可以用SSH成功​​login),我只想编辑Putty – ssh – 隧道部分。

在这个scren上,我试过input:source port:5900 destination port:localhost:5092

我之所以这样做是因为我有意使用Applications – Internet“远程桌面查看器”应用程序。 在这里我告诉它我想要一个VNCtypes的连接,并且我想连接到“localhost:5092”。

这失败了。 我想我只是不明白隧道是如何发生的,以及如何纠正这个问题。 如果有人能帮助我理解这个工具如何使用我列出的工具,我将非常感激!

提前致谢。

input主腻子屏幕上的所有连接信息。 听起来就像你将使用端口443而不是22从外部连接。 然后去隧道部分,并input源端口5092。 把本地主机:5900的目的地。 将单选button保留为本地和自动。 点击添加,所以它显示在列表中,然后打开连接

腻子端口转发配置

当您打开连接时,您将从服务器的angular度访问“localhost:5900”。 您可以从本地端口5092访问它。

要使用vnc连接到服务器,请为主机插入localhost:5092。 在这里输入图像说明

其他的方法。 本地端口是您连接到的端口,目标是服务器端连接的地方。 所以如果你想把vncclient指向“localhost:5902”并且在服务器端以“localhost:5900”的forms出现,你需要将Local Port设置为“5902”,Destination设置为“localhost:5900”

本地端口始终在SSH客户端的本地主机上。 目的地可以在任何地方,包括SSH服务器的本地主机。

我曾经运行ssh -L 5900:localhost:5900 me@home ,然后启动vncview localhost 。 我家的桌面是一个运行GNOME和vino的debian。 像魅力一样工作。