我已经在我的服务器上设置了 OpenVPN,但现在连接时遇到了问题。
一旦建立连接,我就不能再使用互联网了。 仍然可以通过 SSH 进入服务器。
以下是之前的 netstat -nr 输出:
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 wlp6s0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 wlp6s0
连接后
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 10.8.0.5 0.0.0.0 UG 0 0 0 tun0
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 wlp6s0
10.8.0.1 10.8.0.5 255.255.255.255 UGH 0 0 0 tun0
10.8.0.5 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
SERVER_IP 192.168.0.1 255.255.255.255 UGH 0 0 0 wlp6s0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 wlp6s0
在服务器上我有 UFW 并设置了以下规则:
在/etc/ufw/before.rules
# START OPENVPN RULES
# NAT table rules
*nat
:POSTROUTING ACCEPT [0:0]
# Allow traffic from OpenVPN client to eth0
-A POSTROUTING -s 10.8.0.0/8 -o eth0 -j MASQUERADE
COMMIT
# END OPENVPN RULES
以及/etc/default/ufw
DEFAULT_FORWARD_POLICY="ACCEPT"
我还添加了规则ufw allow 1194/udp
这些是我服务器上防火墙的完整规则
Status: active
Logging: on (high)
Default: deny (incoming), allow (outgoing), allow (routed)
New profiles: skip
To Action From
-- ------ ----
22/tcp (OpenSSH) LIMIT IN Anywhere
1194/udp ALLOW IN Anywhere
此外,当我尝试 ping 时,10.8.0.1
它不起作用。
在开放VPN我在网站上找到了以下相关内容。
您收到了初始化序列完成消息,但 ping 测试失败 - 这通常表明服务器或客户端上的防火墙通过 TUN/TAP 接口进行过滤来阻止 VPN 网络流量。
这是我的本地 ufw 设置的输出
Status: active
Logging: on (high)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
编辑:
我能够在 Mac 上测试它,VPN 可以正常工作。现在我不知道我的电脑上的问题可能是什么。我正在运行 Manjaro Linux 内核4.4.5-1-MANJARO。
编辑2
使用 journalctl 检查日志后,我注意到以下几行
Mar 18 10:20:33 bla nm-openvpn[4638]: WARNING: 'link-mtu' is used inconsistently, local='link-mtu 1541', remote='link-mtu 1542'
Mar 18 10:20:33 bla nm-openvpn[4638]: WARNING: 'comp-lzo' is present in remote config but missing in local config, remote='comp-lzo'
因此,当我使用 Networkmanager 时出现错误,因为我没有激活使用 LZO 数据压缩。
激活后它现在可以工作了,我希望这可以在将来对某些人有所帮助。