使用openvpn没有任何包装器的包:

使用openvpn没有任何包装器的包:

我知道这很混乱。让我来解释一下。

我的路由器上设置了动态 DNS。我验证了,在端口转发之后,我可以连接到所需的应用程序(如果我在端口 1337 上运行某些东西并将端口转发到适当的机器,我可以从外部连接到它而不会出现问题)。

现在,如果我将 Macbook 连接到 VPN 并运行如上所述的某些操作,它就会按预期工作。,如果我将运行 Ubuntu Server 16.04 的计算机连接到 VPN 并运行某些操作或想要通过 ssh 连接,则会失败。我在路由器上转发了用于 SSH 连接的端口。我还尝试托管 Web 服务器,但也失败了。

我能做什么来解决这个问题?这对我来说毫无意义。

关于 Ubuntu Server 机器:它是一个全新安装,配置了 openvpn 客户端和 ssh 服务器,没有运行防火墙,没有编辑 iptables,通过以太网连接到路由器。

编辑:这是路由表: http://pastebin.com/ay6fpLcL

答案1

好的,我找到了解决方案。

使用openvpn没有任何包装器的包:

将这两行添加到您的.ovpn文件中(或者.conf如果您自动连接):

script-security 2
up /etc/openvpn/up.sh

然后,/etc/openvpn/up.sh以可执行权限(755/700)创建:

#!/bin/sh
ip rule add from <your-server-ip> table 128
ip route add table 128 to <your-server-subnet> dev <your-interface>
ip route add table 128 default via <server-gateway>

例如,这是我的配置:

#!/bin/sh
ip rule add from 192.168.1.26 table 128
ip route add table 128 to 192.168.1.0/24 dev eno1
ip route add table 128 default via 192.168.1.1

使用不同的 VPN 客户端/不同的配置:

up.sh我无法预测所需的步骤,但通常每次建立 VPN 连接时都需要运行脚本(上述)。

希望它能帮助遇到同样问题的人。干杯!

相关内容