首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用腻子的SSH隧道跨越多跳

使用腻子的SSH隧道跨越多跳
EN

Server Fault用户
提问于 2011-12-14 13:57:33
回答 2查看 54.3K关注 0票数 15

有一种情况是,我想连接到运行VNC的Linux机器(让我们称它为VNCServer ),它位于两个连续的Linux机器后面,即要将ssh连接到VNCServer,我必须从笔记本电脑将ssh连接到Gateway1,然后从Gateway1 shell i ssh连接到Gateway2,然后从那个shell最终将ssh连接到VNCServer。我无法更改网络设计和访问流程膝上型计算机-->网关1->网关2->服务器。我在Gateway1上没有根特权,除了22和5901之外,所有端口都关闭了。

有什么方法可以在我的笔记本电脑上启动VNC查看器并访问VNCServer吗?我知道这可能是使用ssh隧道特性完成的,我的Windows膝上型计算机上有putty (对不起,不能在工作笔记本上安装Linux或Cygwin等)。任何帮助都将是非常感谢的,因为这将使我的生活如此轻松!

EN

回答 2

Server Fault用户

回答已采纳

发布于 2011-12-14 15:46:24

Putty确实支持ssh隧道,如果您展开连接,SSH树,您将看到隧道的一个条目。

本地隧道会在您的windows机器上产生一个本地主机端口,该端口可以远程到您指定的ip地址和端口。例如,当我试图将RDP放到我家的桌面上时,我通常会选择一个随机的本地端口,类似于7789,然后将桌面的本地ip地址(1.2.3.4:3389)作为远程主机。一定要点击“添加”,然后“应用”。此时,当rdp到127.0.0.1:7789时,您将在putty会话上连接到1.2.3.4:3389。

这就是乐趣的来源。如果然后在中间框上设置端口隧道,在putty中设置指定为远程端口的本地端口,则可以在putty中跳过putty,也可以通过中间框弹出最终目的地。您仍然需要进行一些ssh连接,但是一旦设置好后,您就可以直接从windows系统通过vnc或rdp,这就是我认为您想要做的。

示例

  1. 转到Putty中的隧道面板(Connections-> ssh ->隧道,如果ssh会话已经激活,则从上下文菜单访问,或者在刚启动putty时在开始连接屏幕中访问)。
  2. 使用本地源15900和远程源127.0.0.1:15900创建隧道
  3. 连接(如果尚未连接)到Gateway1。
  4. 在Gateway1上,ssh -L 127.0.0.1:15900:VNCServerIP:5900 user@Gateway2 2
  5. 一旦ssh到Gateway2启动,尝试vnc到127.0.0.1:15900 --您现在应该可以看到远侧的VNC屏幕了!

额外的好处--并不是很多人都知道这一点,但是这个过程也可以用来代理IPv4 6/IPv4 4流量。SSH并不关心它用于隧道的协议,因此理论上您可以从纯IPv6系统访问IPv4主机,因为ssh服务器是双重堆栈(同时具有IPv4和IPv6地址)。

票数 22
EN

Server Fault用户

发布于 2013-01-04 15:25:20

如果您希望在两个跳中使用PuTTY,则有一个备用选项。在本例中,我们在10.0.1.789上从网关#1 (10.0.1.123)跳到网关#2 (10.0.1.456)到端口80。

  1. 首先创建跳转到网关#1。首先建立与第一台服务器的连接。在Connection>SSH>Tunnels中设置一个通往第二个网关的隧道。在本例中,我们将端口2222转发到第二个网关。
  1. 现在我们将设置第二跳。我们将通过第一个网关进入下一个网关,并在第二个网关上设置端口转发。连接到端口2222上的本地主机。这将通过正在运行的ssh连接到第二跳。在这方面,我们设置了一个从端口3333到10.0.1.789的端口。
  1. 现在打开一个浏览器,导航到127.0.0.1:3333,您将通过两个SSH连接进入10.0.1.789:80
票数 23
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/340865

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档