# eth1   - physikalisches WAN-Interface (öffentliche IP-Adresse)
# ipsec0 - virtuelles Interface gebunden an eth1
# eth0   - physikalisches LAN-Interface (private IP-Adresse)

# Standardmäßig alle Pakete verwerfen
iptables -P INPUT   DROP
iptables -P OUTPUT  DROP
iptables -P FORWARD DROP
[...]
### ESP und optional IKE und NAT-Traversal auf WAN-Interface erlauben
# ESP
iptables -A INPUT  -p esp -i eth1 -s 0.0.0.0/0 -d ${IP_eth1} -j ACCEPT
iptables -A OUTPUT -p esp -o eth1 -s ${IP_eth1} -j ACCEPT

# IKE (udp 500)
iptables -A INPUT  -p udp -i eth1 -s 0.0.0.0/0  --sport 500 -d ${IP_eth1} --dport 500 -j ACCEPT
iptables -A OUTPUT -p udp -o eth1 -s ${IP_eth1} --sport 500 -d 0.0.0.0/0  --dport 500 -j ACCEPT

# NAT-Traversal
iptables -A INPUT  -p udp -i eth1 -s 0.0.0.0/0  --sport 4500 -d ${IP_eth1} --dport 4500 -j ACCEPT
iptables -A OUTPUT -p udp -o eth1 -s ${IP_eth1} --sport 4500 -d 0.0.0.0/0  --dport 4500 -j ACCEPT
[...]
### via IPsec <--> Gateway: PING
# Ping über IPsec auf das Gateway von jeder IP-Adresse erlauben
iptables -A INPUT  -p icmp --icmp-type 8 -i ipsec0 -s 0.0.0.0/0 -j ACCEPT
iptables -A OUPTUT -p icmp --icmp-type 0 -o ipsec0 -d 0.0.0.0/0 -j ACCEPT
[...]
### via IPsec <--> LAN: POP3
iptables -A FORWARD -i ipsec0 -o eth0 -p tcp -s 0.0.0.0/0 --sport ${UNPRIV_PORTS} -d ${IP_LAN_POP3} --dport 110 -m state --state NEW -j ACCEPT
# Aufgebaute Verbindungen und damit zusammenhängenden
# Verkehr in FORWARD-Chain erlauben
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT