设置如下:我在私有网络 192.168.1.0/24 上
hystrix
我需要从没有直接连接的服务器在浏览器上访问网页。通常,要访问该页面,我会连接到另一台服务器( bast01
),我可以通过 ssh 端口直接访问该服务器,该服务器与我需要访问的服务器属于同一网络,然后我打开浏览器并通过以下网络链接访问所需的网页:http://hystrix:8080/hystrix/monitor?stream=http://gateway03:8080/hystrix.stream
我需要一个 ssh 隧道才能通过 8080 上的本地主机访问链接。
我可以通过 ssh 访问bast01
。
任何帮助都将非常感激。
谢谢你,加布里埃尔
答案1
简单。正如你所说,你需要一条隧道。我们会建一条。
ssh -L 8080:bast01:8080 myuser@bast02
您正常登录,并且可以使用 ssh 会话中通常使用的任何内容。但是,它做了其他事情。它告诉 ssh,您需要本地计算机上的一个端口,即 8080(即第一个 8080),使用 bast02(您要登录的那个)通过隧道连接到端口 8080 上的 bast01。请注意,您自己的计算机不需要能够解析(DNS)名称 bast01,该名称必须可由 bast02 解析。显然,bast02 需要可从您的桌面解析。
此时,你将浏览器指向: http://本地主机:8080 瞧...您现在看到托管在 bast01 的 8080 端口上的登录页面(或其他内容)。
现在,bast01 可能会使用 vhosts,在这种情况下,您的浏览器会将其想要的主机名发送到服务器。在这种情况下,服务器将收到“localhost”作为名称,并且可能不知道如何处理它。如果是这种情况,请临时编辑您的 hosts 文件(在您发出 ssh 命令的机器上,通常是您的桌面)并添加:
127.0.01 hystrix
(或您需要使用的任何名称)