在 443 Ubuntu 16.04 上通过 Apache Web 服务器运行 OPENVPN 客户端(通过 VPN ISP)

在 443 Ubuntu 16.04 上通过 Apache Web 服务器运行 OPENVPN 客户端(通过 VPN ISP)

我对这个论坛和 VPN 都很陌生,这对我来说真的很困惑。我试图通过谷歌搜索到凌晨 4 点才弄清楚,但仍然没有可行的解决方案。我希望这个论坛允许这样做,因为它不仅仅与 OPENVPN 有关。我看到 @Razzak 发了一篇帖子,这正是我遇到的问题,只是我没有使用他的 SU 答案链接(它不起作用,因为他们使用的选项不再存在)。如何让Apache在连接到VPN时通过某个网络接口输出数据包?

但是,按照示例操作后,我仍然无法使其按照 @Nath 所述工作,而且也没有 PM 选项。所以请接受我的道歉,再次发布此信息,希望有人能帮助我,提供更多的分步说明。我从帖子中了解到,您需要在 Eth0 端口上创建 2 个单独的连接(在我的情况下是 enp0s25),但不确定我哪里做错了,而且一旦它通过命令行工作,我还需要它永久存在于 /etc/network/interfaces 中。此外,不确定 @Razzak 何时提到“lo”循环接口,以及我如何实现它才能使其工作。

我有 Zorin 12 16.04 和 Nextcloud 12,我可以在网络内部和外部访问我的 nextcloud 服务器。即 sample.ignorelist.com/nextcloud 启用 SSL,因此它监听的是端口 443 而不是 80

现在,下一步是我可以访问 TigerVPN(根本没有为他们做广告!)并且我使用了 openvpn --config GB London.ovpn - 脚本如下

client  
remote lon.tigervpn.com 1194 udp  
remote lon.tigervpn.com 443 tcp-client  
pull  
auth-user-pass   
comp-lzo adaptive  
ca ca.crt  
dev tun  
tls-client  
script-security 2  
cipher AES-256-CBC  
mute 10  

route-delay 5  
redirect-gateway def1  
resolv-retry infinite  

dhcp-renew  
dhcp-release  
persist-key  
persist-tun  
remote-cert-tls server  
mssfix  

因为我以客户端身份激活了 OPENVPN,所以一旦 cron 通过 FREEDNS(免费域名)更新 IP 地址,我就无法再在网络内外访问 nextcloud。而且 Webserver/nextcloud 和 OpenVPN 都在一台机器上运行(VPN 的目的是在同一台机器上运行 torrent)

所以让我尝试在下面画一张图 - (名称和 IP 已更改)

Nexcloud 服务器(内部 1.0.0.3)--> 路由器(网关 1.0.0.1)--> ISP 的外部 DYN IP(111.222.111.222)--> TigerVPN 伦敦服务器(185.20.99.139)--> TigerVPN 的 IP(185.20.99.199)--> FREEDNS IP(没有 VPN 时为 111.222.111.222,激活 VPN 时为 185.20.99.199)

启用 VPN 的路由 -

root@mypc:/home/mypc# ip route list  
0.0.0.0/1 via 10.199.11.1 dev tun0  
default via 1.0.0.1 dev enp0s25  proto static  metric 100   
10.199.11.0/24 dev tun0  proto kernel  scope link  src 10.199.11.8   
128.0.0.0/1 via 10.199.11.1 dev tun0  
169.254.0.0/16 dev enp0s25  scope link  metric 1000   
185.20.99.199 via 10.0.0.1 dev enp0s25  
1.0.0.0/24 dev enp0s25  proto kernel  scope link  src 1.0.0.3  metric - - 100  


root@HTPC:/home/htpc# ifconfig  
enp0s25   Link encap:Ethernet  HWaddr 00:1e:37:48:2e:46    
          inet addr:10.0.0.3  Bcast:1.0.0.255  Mask:255.255.255.0  
          inet6 addr: fe80::21e:37ff:fe48:2e46/64 Scope:Link  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
          RX packets:469087 errors:0 dropped:46 overruns:0 frame:0  
          TX packets:229122 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:1000   
          RX bytes:167072663 (167.0 MB)  TX bytes:30424651 (30.4 MB)  
          Interrupt:16 Memory:d0300000-d0320000   

lo        Link encap:Local Loopback    
          inet addr:127.0.0.1  Mask:255.0.0.0  
          inet6 addr: ::1/128 Scope:Host  
          UP LOOPBACK RUNNING  MTU:65536  Metric:1  
          RX packets:4450 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:4450 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:1   
          RX bytes:567305 (567.3 KB)  TX bytes:567305 (567.3 KB)  

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:10.199.11.8  P-t-P:10.199.11.8  Mask:255.255.255.0  
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1  
          RX packets:41 errors:0 dropped:0 overruns:0 frame:0  
          TX packets:101 errors:0 dropped:0 overruns:0 carrier:0  
          collisions:0 txqueuelen:100   
          RX bytes:15028 (15.0 KB)  TX bytes:15266 (15.2 KB)  

而同一网络上的其余 PC 将使用 ISP 111.222.111.222 设置的外部 IP 来访问互联网等。我理解如果停用 VPN 并且所有网络都将运行,那么这完全合理,因为所有流量都通过路由器网关 1.0.0.1。问题是... 我可以在 VPN 启动并运行时更改路由或转发,以便它可以引导流量并被我的 Apache2/nextcloud 理解?

提前感谢您的帮助。

相关内容