设置 OpenVPN 服务器和客户端

设置 OpenVPN 服务器和客户端

我一直在尝试更好地了解 OpenVPN 的工作原理,因此我通过虚拟机在我的计算机上设置了 OpenVPN 服务器和客户端。我有一个 Ubuntu VM 作为 OpenVPN 服务器,一个 Kali 计算机作为 OpenVPN 客户端(因为 Kali 没有自带防火墙,所以我认为这会更容易)。

我已经成功设置了它,通过了 TLS 验证,从 Kali 到服务器获得了确认的连接,但我无法浏览互联网!!我已经启用了端口转发(现在和重新启动时),我已经在服务器上设置了 ufw 防火墙以允许端口 1194 UDP 通过,但我仍然相信这是由于 Ubuntu 服务器端的一些其他防火墙问题造成的,但我不知道它是什么以及如何修复它。如果您能提供任何帮助,我将不胜感激!!

以下是一些有用的诊断信息。如果您需要更多信息,请随时询问。

注意:当 VPN 未激活时,互联网浏览可以正常工作。

启用 VPN 之前的客户端:netstat-rn Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0 0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

客户端启用 VPN 时:netstat-rn Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 10.8.0.5 128.0.0.0 UG 0 0 0 tun0 0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0 0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0 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 128.0.0.0 10.8.0.5 128.0.0.0 UG 0 0 0 tun0 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.1.96 192.168.1.254 255.255.255.255 UGH 0 0 0 eth0

服务器端的 iptables - 还有更多,但我不想把它放进去,因为我不想让帖子太长。 Chain INPUT (policy DROP) target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED ufw-before-logging-input all -- anywhere anywhere
ufw-before-input all -- anywhere anywhere
ufw-after-input all -- anywhere anywhere
ufw-after-logging-input all -- anywhere anywhere
ufw-reject-input all -- anywhere anywhere
ufw-track-input all -- anywhere anywhere

Chain FORWARD (policy ACCEPT) target prot opt source destination
ufw-before-logging-forward all -- anywhere anywhere
ufw-before-forward all -- anywhere anywhere
ufw-after-forward all -- anywhere anywhere
ufw-after-logging-forward all -- anywhere anywhere
ufw-reject-forward all -- anywhere anywhere
ufw-track-forward all -- anywhere anywhere

Chain OUTPUT (policy ACCEPT) target prot opt source destination
ufw-before-logging-output all -- anywhere anywhere
ufw-before-output all -- anywhere anywhere
ufw-after-output all -- anywhere anywhere
ufw-after-logging-output all -- anywhere anywhere
ufw-reject-output all -- anywhere anywhere
ufw-track-output all -- anywhere anywhere

任何你能提供的帮助都将非常有帮助。非常感谢。

答案1

如果您的客户端可以 ping 通服务器的地址“eth0”,我认为您错过了用于浏览互联网的 NAT 基本规则“iptables -t nat -A POSTROUTING -j MASQUERADE”。

相关内容