允许 VPN 客户端的传出 IPv6 连接

允许 VPN 客户端的传出 IPv6 连接

我有 OpenVPN 服务器。连接到此服务器的客户端会收到一个内部 IPv4 地址 (10.2.52.X) 和一个外部 IPv6 地址。我需要对 IPv4 执行伪装 (NAT),但不需要对 IPv6 执行任何操作(可能阻止除选定端口之外的传入连接)。

目前,如果我systemctl stop firewalld,IPv6 连接工作正常:我可以ping6使用 或 浏览器打开到 80 端口的连接telnet。但如果我启用了防火墙,那么我只能 ping 6 个地址。传出的 TCP 连接似乎被阻止了。

eth0是我的外部接口,tun0是我的内部 VPN 接口。到目前为止,我已将外部/内部区域分配给接口(这启用了 IPv4 伪装),并将 openvpn 服务添加到外部区域(以允许 1194 端口上的传入 UDP 连接)

# firewall-cmd --get-active-zones
internal
  interfaces: tun0
external
  interfaces: eth0

答案1

因此,事实证明,firewalld 默认拒绝 FORWARD 链中的任何内容,而且我没有找到简单的方法来改变这一点。我创建了一个“直接”规则。

firewall-cmd --permanent --direct --add-rule ipv6 filter FORWARD_direct 0 -i tun0 -o eth0 -j ACCEPT

现在一切都按预期进行。

相关内容