在虚拟网络背后提供服务

在虚拟网络背后提供服务

我想从虚拟网络内的计算机运行一个 http 服务器,该服务器与外部世界相连。我无法访问网关,因此无法配置网关。我在想,我的网络外部可能有一个服务器可以充当我的服务器的代理。我将从我的计算机到此服务器代理建立出站连接,一旦此连接建立,对服务器代理的每个请求都将定向到我计算机中的某个端口。

有提供这种服务的东西吗?我来过几次这个网站

答案1

SSH 可以做你想做的事。在你的“虚拟”网络内部,你可以使用如下命令行创建到可公开访问的服务器的 SSH 隧道:

ssh -R ':8080:localhost:80' server.example.com

显然,要使其正常工作,server.example.com需要运行sshd。此外,服务器的sshd_config需要设置GatewayPorts yes,否则您创建的任何隧道都将仅绑定到服务器的环回地址,远程客户端将无法访问该地址。(的默认设置为GatewayPortsno

在上面的例子中,对服务器上 TCP 端口 8080 的连接尝试将被转发到本地主机的端口 80。

答案2

您确实需要与网络和/或主机服务器管理员讨论此事。例如,如果您在公司环境中,如果您这样做,他们可能会不太高兴。

也就是说,您可能可以使用 SSH 隧道,尽管我不知道它最终有多实用。

相关内容