LINUX.ORG.RU
ФорумAdmin

iptables проброс порта


0

0

linux 2.6.24.3 Конфиг iptables, Не работает проброс порта, nmap пишет "filtered", на остальные порты - closed cat /etc/rc.d/rc.firewall

EXTERNAL=eth0 INTERNAL=eth1 EXTERNALIP1=x.x.x.x INTERNALIP1=192.168.0.2

echo 1 > /proc/sys/net/ipv4/ip_forward echo "Setting up NAT (Network Address Translation)..." iptables -F iptables -F -t nat # by default, nothing is forwarded. iptables -P FORWARD DROP # Allow all connections OUT and only related ones IN

iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -m state --state ESTABLISHED,RELA TED -j ACCEPT iptables -A FORWARD -i $INTERNAL -o $EXTERNAL -j ACCEPT # enable MASQUERADING iptables -t nat -A POSTROUTING -o $EXTERNAL -j MASQUERADE

# IMAP to EXCH gateway iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -p tcp --dport 143 -j ACCEPT iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -p tcp --dport 110 -j ACCEPT iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -p tcp --dport 587 -j ACCEPT iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -p tcp --dport 993 iptables -A PREROUTING -t nat -p tcp -d $EXTERNALIP1 --dport 993 -j DNAT iptables -A PREROUTING -t nat -p tcp -d $EXTERNALIP1 --dport 143 -j DNAT --to $ INTERNALIP1:143 iptables -A PREROUTING -t nat -p tcp -d $EXTERNALIP1 --dport 110 -j DNAT --to $ INTERNALIP1:110

iptables -A PREROUTING -t nat -p tcp -d $EXTERNALIP1 --dport 587 -j DNAT --to $ INTERNALIP1:587

Ответ на: комментарий от shutty

EXTERNAL=eth0
INTERNAL=eth1
EXTERNALIP1=x.x.x.x
INTERNALIP1=192.168.0.2

echo 1 > /proc/sys/net/ipv4/ip_forward
echo "Setting up NAT (Network Address Translation)..."
iptables -F iptables -F -t nat # by default, nothing is forwarded.
iptables -P FORWARD DROP # Allow all connections OUT and only related ones IN

iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -m state --state ESTABLISHED,RELA TED -j ACCEPT
iptables -A FORWARD -i $INTERNAL -o $EXTERNAL -j ACCEPT # enable MASQUERADING iptables -t nat -A POSTROUTING -o $EXTERNAL -j MASQUERADE

# IMAP to EXCH gateway
iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -p tcp --dport 143 -j ACCEPT
iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -p tcp --dport 110 -j ACCEPT
iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -p tcp --dport 587 -j ACCEPT
iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -p tcp --dport 993
iptables -A PREROUTING -t nat -p tcp -d $EXTERNALIP1 --dport 993 -j DNAT
iptables -A PREROUTING -t nat -p tcp -d $EXTERNALIP1 --dport 143 -j DNAT --to $ INTERNALIP1:143
iptables -A PREROUTING -t nat -p tcp -d $EXTERNALIP1 --dport 110 -j DNAT --to $ INTERNALIP1:110
iptables -A PREROUTING -t nat -p tcp -d $EXTERNALIP1 --dport 587 -j DNAT --to $ INTERNALIP1:587

info9216
() автор топика
Ответ на: комментарий от info9216

Черт его знает. А если отломать строчки с маскарадингом и хитрым дропом, работать начинает?

Вообще, при настройке иптаблеса не стоит писать сразу двесть злых правил, а потом болезненно думать почему все не работает. Попробуй начать с малого, а потом включать злые дропы и аксепты.

shutty
()
Ответ на: комментарий от chocholl

Я, пожалуй, таки сорву интригу.

Прежде, чем пакет попадет в FORWARD, он должен пройти INPUT. Так что и в INPUT эти правила должны быть.

nnz ★★★★
()
Ответ на: комментарий от chocholl

Через спальню в туалет - это из другой оперы.

nnz ★★★★
()
Ответ на: комментарий от info9216

Запустите tcpdump на INTERNAL интерфейсе и смотрите, уходят ли пакеты на 192.168.0.2. Думаю, что пакеты туда уходят, а там уже и происходит "filtered".

mky ★★★★★
()
Ответ на: комментарий от mky

Чорд. Пять лет думал что оно именно так. Пять лет настраивал iptables и все работало идеально. Как я теперь буду с этим жить? :D

nnz ★★★★
()
Ответ на: комментарий от mky

Вто что сказал tcpdump
tcpdump -i eth1 port 143

17:49:27.433484 IP myhost.54976 > 192.168.0.2.imap: S 402999172:402999172(0) win 3072 <mss 1460>
17:49:27.541214 IP myhost.52762 > 192.168.0.2.imap: S 402933637:402933637(0) win 2048 <mss 1460>

info9216
() автор топика
Ответ на: комментарий от info9216

То есть пакеты пробрасываются. Только myhost это $EXTERNALIP1 или машина в интернете (на которой запускается nmap)?

mky ★★★★★
()
Ответ на: комментарий от mky

>Только myhost это $EXTERNALIP1 или машина в интернете (на которой запускается nmap)?
Да. Это очень существенный момент.

2info9216: http://ru.wikipedia.org/w/index.php?title=Iptables&oldid=17107327#nat Пример для DNAT и комментарии к нему. Изучать до полного просветления.

nnz ★★★★
()
Ответ на: комментарий от nnz

> Я, пожалуй, таки сорву интригу.
>Прежде, чем пакет попадет в FORWARD, он должен пройти INPUT. Так что и в INPUT эти правила должны быть.


Прежде, чем что-либо срывать, неплохо почитать документацию.

ovax ★★★
()
Ответ на: комментарий от ovax

Я уже публично покаялся и даже (в порядке самовоспитания) начал дописывать статью на вики. Ну что поделать, у меня было тяжелое детство с фаерволами без таблиц :)

nnz ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.