防火墙阻止了 OpenVPN 客户端的互联网流量

防火墙阻止了 OpenVPN 客户端的互联网流量

我有一个虚拟网络设置,其中 Linux 路由器/防火墙连接到两个私有网络。其中一个网络中有处于路由模式的 OpenVPN 服务器和 Web 服务器。另一个网络中有 Linux 客户端计算机,它们通过 OpenVPN 服务器访问 Web 服务器和 Internet。此外,外部客户端可以从 Internet 访问 OpenVPN。OpenVPN 的 server.conf 设置为使用 udp 中的路由模式、推送 DNS 并路由到其所在的网络,以便客户端可以访问 Web 服务器。

这是我的非常严格的防火墙规则

连接到 OpenVPN 服务器后,我的客户端无法访问互联网或 Web 服务器。当我允许 FORWARD 流量通过时,它工作正常。OpenVPN 服务器具有完整的互联网连接。我需要添加哪些防火墙规则才能允许互联网流量到达我的客户端?

答案1

您应该在两个接口之间进行转发,因为如果您不进行转发,您将永远不会访问互联网,因为您只能通过 eth 接口访问互联网。

您应该添加一些类似于:

iptables -A INPUT -i eth0 -p udp --dport 1194 -j ACCEPT
iptables -A INPUT -i tun+ -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp --sport 1194 -j ACCEPT
iptables -A FORWARD -i tun+ -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o tun+ -j ACCEPT
iptables -A FORWARD -i eth0 -o tun+ -m state --state ESTABLISHED,RELATED -j ACCEPT

我希望它能解答您的问题。

相关内容