防火墙 (FW),三段:
- eth0:172.16.1.101
- eth1:192.168.99.99(局域网)
- eth2:10.0.0.1(DMZ)
我openvpn
用隧道模式安装在FW中,已经可以了:
- tun0:192.168.10.0/24。
如果我使用shorewall
代理squid
固件就可以了。旁边可以使用我公司的服务连接到FW、LAN、DMZ。
现在,我想使用iptables
规则+squid
代理。
openvpn 需要设置什么规则?
我设置了以下规则,但未连接到安装的服务器防火墙openvpn
:
数据包转发
net.ipv4.ip_forward = 1
开放VPN
iptables -A INPUT -i eth0 -m state --state NEW -p udp --dport 1194 -j ACCEPT
允许 TUN 接口连接到 OpenVPN 服务器
iptables -A INPUT -i tun+ -j ACCEPT
允许TUN接口连接通过其他接口转发
iptables -A FORWARD -i tun+ -j ACCEPT iptables -A FORWARD -i tun+ -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i eth0 -o tun+ -m state --state RELATED,ESTABLISHED -j ACCEPT
将 VPN 客户端流量通过 NAT 传输至互联网
iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o eth0 -j MASQUERADE
如果您的默认 iptables OUTPUT 值不是 ACCEPT,您还需要如下行:
iptables -A OUTPUT -o tun+ -j ACCEPT