如何使用VPN公开python Web服务器

问题描述 投票:0回答:1

我刚开始使用python学习web开发。现在我的Web服务器在我的开发机器上使用端口80正常运行。但是,当我想从LAN网络外部访问我的网络时,我发现我的ISP阻止了所有端口。为了解决这个问题,我使用了vpnbook.com提供的免费VPN(openVPN 2.4)。当我使用CanYouSeeMe.org网站时,它告诉我端口80是打开的,但我无法弄清楚如何连接到我的网络服务器。分配的IP 10.12.x.x:80和远程IP 51.68.x.x:80都不起作用。

任何帮助是极大的赞赏。

我在Windows 10上使用了flask框架。以下是从vpnbook.com下载的openVPN配置:

client
dev tun3
proto tcp
remote 51.68.180.4 80
remote de4.vpnbook.com 80
resolv-retry infinite
nobind
persist-key
persist-tun
auth-user-pass
comp-lzo
verb 3
cipher AES-128-CBC
fast-io
pull
route-delay 2
redirect-gateway
python router vpn portforwarding nat
1个回答
0
投票

成为VPN的一部分并不会让您暴露在世界之中。换句话说,一旦连接到它,它就不会在任何端口上将来自WWW的流量转发到您的机器。这就像用一个更大的家用路由器替换你没有权限定义forwarded ports。 “最糟糕”的情况是,同一VPN中的其他计算机将能够与您联系,但这通常不是公共VPN中的设置。

您可以使用的解决方案是SSH远程转发。您可以阅读它here(期望眩晕),但要点是您使用SSH连接到您拥有的云服务器,并告诉它使用相同的SSH连接转发连接到您的连接(即WWW - > cloud_machine:port - > your_machine:port)。因为您拥有这台云计算机,所以您可以控制其安全性,并可以打开通向世界的侦听端口。

ssh -R 80:localhost:80 public.example.com

再说一遍,如果你愿意走这么远,不妨在那台机器上部署你的应用程序!

© www.soinside.com 2019 - 2024. All rights reserved.