通过 VPN 使远程网络可以访问 http 服务器

通过 VPN 使远程网络可以访问 http 服务器

我有一个全 Linux 环境。

我通过 PPP VPN 隧道连接到远程网络。我家里的机器通过 PPP 接口似乎与远程机器位于同一网络上。

这台机器托管一个 HTTP 服务器,远程机器只需输入以下命令即可在浏览器中查看网页http://10.1.2.10:80

我想将 HTTP 服务器移到家里的另一台机器上。但我也不想为其配置 PPP 连接。我希望当前机器成为我所有本地机器通向远程网络的 VPN 网关。

目标是使远程机器能够像现在这样轻松地访问非网关的本地机器上的 HTTP 服务器。

我想我得在网关上配置一些端口转发。您有这方面的综合指南或建议吗?这可以通过 HTTP 代理来实现,但在我看来,这似乎是一种过度的解决方案。

也许还有其他解决方案。

任何能完成这个工作的VPN软件都可以。

答案1

您可以使用 Windows Netsh 接口 portproxy 命令 特别是动词 添加 v4tov4

示例命令是192.168.0.10通过以管理员身份运行以下命令将所有端口 80 流量重定向到 IP 地址:

netsh interface portproxy add v4tov4 listenaddress=127.0.0.1 listenport=80 connectaddress=192.168.0.10 connectport=80

VPN 可能会给本地网络解决方案增加一些复杂性,但这是您需要自行解决的问题。

答案2

您可能还想考虑基于现代 Wireguard 协议设置 VPN,它取代了使用 OpenVPN 的旧的更复杂的方法。

一种基于 Wireguard 的流行商业 VPN 易于设置,可以穿透大多数防火墙,并且个人使用免费。尾秤

在 Google 上搜索 Nebula、Headscale、Netmaker、Netbird 和 Yggdrasil,寻找更多可能仍能满足您需求的开放替代方案。

相关内容