iptables, проброс портов, множество сеток
приветствую
проконсультируйте, пожалуйста, покажите пальцем, где не прав
eth0 - внешний интерфейс с 3-я белыми IP
eth1-ethN - внутренние интерфейсы в кол-ве больше 2-х
требуется:
1. какие-то внутренние интерфейсы выпустить наружу
2. внутри разрешить пакеты только между eth1 и eth2
3. пробрасывать порты вовнутрь в зависимости от того, на какой белый ip и порт ломятся
пробую так:
#!/bin/bash
white2="123.123.123.2"
white3="123.123.123.3"
white4="123.123.123.4"
iptables -F
iptables -F -t nat
# разрешаю eth1 и eth2 наружу
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o eth2 -j ACCEPT
iptables -A FORWARD -i eth2 -o eth0 -j ACCEPT
#разрешаю между eth1 и eth2
iptables -A FORWARD -i eth1 -o eth2 -j ACCEPT
iptables -A FORWARD -i eth2 -o eth1 -j ACCEPT
#все остальные внутренние запрещаю
iptables -A FORWARD ! -i eth0 ! -o eth0 -j DROP
# ну и какие-то пробросы вовнутрь
ip="192.168.10.10"
iptables -t nat -A PREROUTING --dst $white2 -p tcp --dport 80 -j DNAT --to-destination $ip
iptables -t nat -A POSTROUTING --dst $ip -p tcp --dport 80 -j SNAT --to-source $white2
iptables -t nat -A PREROUTING --dst $white2 -p tcp --dport 22 -j DNAT --to-destination $ip
iptables -t nat -A POSTROUTING --dst $ip -p tcp --dport 22 -j SNAT --to-source $white2
ip="192.168.10.7"
iptables -t nat -A PREROUTING --dst $white3 -p tcp --dport 80 -j DNAT --to-destination $ip
iptables -t nat -A POSTROUTING --dst $ip -p tcp --dport 80 -j SNAT --to-source $white3
ip="192.168.0.90"
iptables -t nat -A PREROUTING --dst $white2 -p tcp --dport 81 -j DNAT --to-destination $ip:80
iptables -t nat -A POSTROUTING --dst $ip -p tcp --dport 80 -j SNAT --to-source $white2
ip="192.168.15.51"
iptables -t nat -A PREROUTING --dst $white4 -p tcp --dport 2022 -j DNAT --to-destination $ip:22
iptables -t nat -A POSTROUTING --dst $ip -p tcp --dport 22 -j SNAT --to-source $white4
и все как-то криво работает или вообще не работает