The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"iptables не натит трафик и не пишет в лог"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Информационная безопасность (Public)
Изначальное сообщение [Проследить за развитием треда]

"iptables не натит трафик и не пишет в лог" 
Сообщение от Arifolth emailИскать по авторуВ закладки(ok) on 14-Ноя-05, 13:13  (MSK)
Хай All
двухинтерфейсовая линуховая машинка, один "внешний" один соответственно "внутренний"
проблема следующая: есть некий набор правил прокидывающий соединения в серую сетку.
===
#! /bin/sh
ip=192.168.0.3
echo 0 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -F INPUT
/sbin/iptables -F OUTPUT
/sbin/iptables -F FORWARD
/sbin/iptables -F -t nat
/sbin/iptables -F -t filter
/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD DROP
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
echo 1 > /proc/sys/net/ipv4/conf/eth0/rp_filter
echo 1 > /proc/sys/net/ipv4/conf/eth1/rp_filter
echo 1 > /proc/sys/net/ipv4/conf/lo/rp_filter
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -A INPUT -i eth1 -p ICMP --icmp-type echo-request -d 10.0.2.1 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -j ACCEPT

/sbin/iptables -I INPUT 1 -i eth1 -p TCP -m state --state NEW,RELATED,ESTABLISHED -d 10.0.2.1  --dport 8202:8202 -j LOG
/sbin/iptables -I INPUT 1 -i eth1 -p TCP -m state --state NEW,RELATED,ESTABLISHED -d 10.0.2.1  --dport 8202:8202 -j ACCEPT

/sbin/iptables -I FORWARD 1 -i eth1 -p TCP -s ${ip} -j LOG
/sbin/iptables -I FORWARD 1 -i eth1 -p TCP -s ${ip} -j ACCEPT

/sbin/iptables -I FORWARD 1 -i eth0 -p TCP -s ${ip} -j LOG
/sbin/iptables -I FORWARD 1 -i eth0 -p TCP -s ${ip} -j ACCEPT

/sbin/iptables -t nat -I POSTROUTING 1 -o eth1 -p TCP -s ${ip} -j LOG
/sbin/iptables -t nat -I POSTROUTING 1 -o eth1 -p TCP -s ${ip} -j SNAT --to-source 10.0.2.1

/sbin/iptables -t nat -I PREROUTING 1 -p TCP -i eth1  --dport 8202:8202 -d 10.0.2.1 -j LOG
/sbin/iptables -t nat -I PREROUTING 1 -p TCP -i eth1  --dport 8202:8202 -d 10.0.2.1 -j DNAT --to-destination ${ip}:8202-8202

/sbin/iptables -I FORWARD 1 -i eth1 -p TCP  -d ${ip} -j LOG
/sbin/iptables -I FORWARD 1 -i eth1 -p TCP  -d ${ip} -j ACCEPT

/sbin/iptables -I FORWARD 1 -i eth0 -p TCP  -d ${ip} -j LOG
/sbin/iptables -I FORWARD 1 -i eth0 -p TCP  -d ${ip} -j ACCEPT

exit 0
===
если указать комп (.0.3) в серой сетке всё работает. но если указать внутренний адрес ентого "шлюза" (.0.1) - пакеты словно в чёрную дыру попадают: в соответствии с выводом tcpdump`а
на внешнем интерфейсе пакет приходит и сё. пипец. тишина
отладить набор правил оказалось невозможным - потому что iptables если пакет должен натится/де натится в лог ничего не пишет.
а вот если влепить в начале какоенить привало типа
/sbin/iptables -I INPUT 1 -i eth1 -d 10.0.2.1 -j LOG
и ткнуться например по tcp в какой нить порт (номер которого не совпадает с портом который прокидываем) - тогда в лог записывает. мистика какаято
я знаю что для перенаправления портов есть REDIRECT но мне нужно на др интерфейс перенаправить трафик а соответственно редирект для этого не катит.
почему трафик не перенаправляется на др интерфейс? почему в лог не пишет? и как его заставить всё вышеперечисленное сделать?
заранее благодарен за ответы и за то что дочитали до конца


  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]

1. "iptables не натит трафик и не пишет в лог" 
Сообщение от Martin2 emailИскать по авторуВ закладки(ok) on 14-Ноя-05, 14:43  (MSK)
>Хай All
>двухинтерфейсовая линуховая машинка, один "внешний" один соответственно "внутренний"
>проблема следующая: есть некий набор правил прокидывающий соединения в серую сетку.
>===
>#! /bin/sh
>ip=192.168.0.3
>echo 0 > /proc/sys/net/ipv4/ip_forward
>/sbin/iptables -F INPUT
>/sbin/iptables -F OUTPUT
>/sbin/iptables -F FORWARD
>/sbin/iptables -F -t nat
>/sbin/iptables -F -t filter
>/sbin/iptables -P INPUT DROP
>/sbin/iptables -P OUTPUT ACCEPT
>/sbin/iptables -P FORWARD DROP
>echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
>echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
>echo 1 > /proc/sys/net/ipv4/conf/eth0/rp_filter
>echo 1 > /proc/sys/net/ipv4/conf/eth1/rp_filter
>echo 1 > /proc/sys/net/ipv4/conf/lo/rp_filter
>echo 1 > /proc/sys/net/ipv4/ip_forward
>/sbin/iptables -A INPUT -i eth1 -p ICMP --icmp-type echo-request -d 10.0.2.1 -j
>ACCEPT
>/sbin/iptables -A INPUT -i eth0 -j ACCEPT
>
>/sbin/iptables -I INPUT 1 -i eth1 -p TCP -m state --state NEW,RELATED,ESTABLISHED
>-d 10.0.2.1  --dport 8202:8202 -j LOG
>/sbin/iptables -I INPUT 1 -i eth1 -p TCP -m state --state NEW,RELATED,ESTABLISHED
>-d 10.0.2.1  --dport 8202:8202 -j ACCEPT
>
>/sbin/iptables -I FORWARD 1 -i eth1 -p TCP -s ${ip} -j LOG
>
>/sbin/iptables -I FORWARD 1 -i eth1 -p TCP -s ${ip} -j ACCEPT
>
>
>/sbin/iptables -I FORWARD 1 -i eth0 -p TCP -s ${ip} -j LOG
>
>/sbin/iptables -I FORWARD 1 -i eth0 -p TCP -s ${ip} -j ACCEPT
>
>
>/sbin/iptables -t nat -I POSTROUTING 1 -o eth1 -p TCP -s ${ip}
>-j LOG
>/sbin/iptables -t nat -I POSTROUTING 1 -o eth1 -p TCP -s ${ip}
>-j SNAT --to-source 10.0.2.1
>
>/sbin/iptables -t nat -I PREROUTING 1 -p TCP -i eth1  --dport
>8202:8202 -d 10.0.2.1 -j LOG
>/sbin/iptables -t nat -I PREROUTING 1 -p TCP -i eth1  --dport
>8202:8202 -d 10.0.2.1 -j DNAT --to-destination ${ip}:8202-8202
>
>/sbin/iptables -I FORWARD 1 -i eth1 -p TCP  -d ${ip} -j
>LOG
>/sbin/iptables -I FORWARD 1 -i eth1 -p TCP  -d ${ip} -j
>ACCEPT
>
>/sbin/iptables -I FORWARD 1 -i eth0 -p TCP  -d ${ip} -j
>LOG
>/sbin/iptables -I FORWARD 1 -i eth0 -p TCP  -d ${ip} -j
>ACCEPT
>
>exit 0
>===
>если указать комп (.0.3) в серой сетке всё работает. но если указать
>внутренний адрес ентого "шлюза" (.0.1) - пакеты словно в чёрную дыру
>попадают: в соответствии с выводом tcpdump`а
>на внешнем интерфейсе пакет приходит и сё. пипец. тишина
>отладить набор правил оказалось невозможным - потому что iptables если пакет должен
>натится/де натится в лог ничего не пишет.
>а вот если влепить в начале какоенить привало типа
>/sbin/iptables -I INPUT 1 -i eth1 -d 10.0.2.1 -j LOG
>и ткнуться например по tcp в какой нить порт (номер которого не
>совпадает с портом который прокидываем) - тогда в лог записывает. мистика
>какаято
>я знаю что для перенаправления портов есть REDIRECT но мне нужно на
>др интерфейс перенаправить трафик а соответственно редирект для этого не катит.
>
>почему трафик не перенаправляется на др интерфейс? почему в лог не пишет?
>и как его заставить всё вышеперечисленное сделать?
>заранее благодарен за ответы и за то что дочитали до конца

И еще: --dport 8202:8202  - это вот зачем? --dport 8202 оставь - и все!
Если не поможет, то посмотри че за версия, и просмотри KNOWN BUGS для нее. Попробуй версию сменить.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру