Правила :
iptables -A PREROUTING -t mangle -j DROP
iptables -A PREROUTING -t mangle -p icmp -j ACCEPT
iptables -A PREROUTING -t mangle -p udp -j ACCEPT
iptables -A PREROUTING -t mangle -p tcp -j ACCEPT
Больше правил нет.
Проблема : страницы в браузере не загружаются (интернет не работает)
Также правило DROP показывает что DROP'аются пакеты.
Как узнать какие пакеты DROP'аются с какого протокола?
Почему так не работает интернет?
iptables. Почему с PREROUTING не работает интернет?
Модератор: SLEDopit
Re: iptables. Почему с PREROUTING не работает интернет?
jobfox писал(а): ↑02.01.2010 10:34Правила :
iptables -A PREROUTING -t mangle -j DROP
iptables -A PREROUTING -t mangle -p icmp -j ACCEPT
iptables -A PREROUTING -t mangle -p udp -j ACCEPT
iptables -A PREROUTING -t mangle -p tcp -j ACCEPT
Больше правил нет.
Проблема : страницы в браузере не загружаются (интернет не работает)
Также правило DROP показывает что DROP'аются пакеты.
Как узнать какие пакеты DROP'аются с какого протокола?
Почему так не работает интернет?
Вы сделать то что хотите? Пока вы делаете какую-то чушь.
Сейчас происходит вот что - если правила вы перечислили в том же порядке что и добавили, то первым работает правило с DROP , а т к вы не указали никаких критериев(читай условий), то у вас на этом правиле дропается ВСЕ что мимо него проходит - все протоколы и тд(а если никаких иных правил нет, то значит через него проходит весь трафик компа). Соответственно 3 правила ниже просто не работают. Даже если поменять местами правила(т е поставить DROP последним), то все равно непонятно чего вы хотите достичь, т к
1. Фильтрацию надо производить в таблице filter, а не в mangle
2. И уж точно не в PREROUTING
Re: iptables. Почему с PREROUTING не работает интернет?
Да важно где делать фильтрацию. Но DROP'ать пакеты умнее в mangle.
Alex2ndr, спасибо. Не знал что порядок правил имеет значение.
Так все работает :
Alex2ndr, спасибо. Не знал что порядок правил имеет значение.
Так все работает :
Код: Выделить всё
iptables -A PREROUTING -t mangle -p icmp -j ACCEPT
iptables -A PREROUTING -t mangle -p udp -j ACCEPT
iptables -A PREROUTING -t mangle -p tcp -j ACCEPT
iptables -A PREROUTING -t mangle -j DROP
Re: iptables. Почему с PREROUTING не работает интернет?
Я так понимаю вы хотели сказать НЕ важно где делать фильтрацию?
Тут я с вами не соглашусь. Для фильтрации придумали таблицу filter, там сделали политики по умолчанию и все ориентировано на фильтрацию. А вот в mangle фильтровать не рекомендуется ( пруфлинк - прочтите предостережение около значка Caution). Можете мне пояснить отчего дропать в mangle умнее?
Насколько я помню в любом нормальном фаерволе порядок правил имеет значение( я вот с atguard начинал). Вы что - никогда фаерволов не настраивали?
Re: iptables. Почему с PREROUTING не работает интернет?
Останусь при своем мнении)) Спасибо, форумчане.
Re: iptables. Почему с PREROUTING не работает интернет?
Удивительно. Вы хоть обоснуйте свое по-моему (и не только) неправильное мнение.
Идем в последнюю версию официальной инструкции
http://www.frozentux.net/iptables-tutorial...tml#MANGLETABLE
и видим
И ещеMangle table
This table should as we've already noted mainly be used for mangling packets. In other words, you may freely use the mangle targets within this table, to change TOS (Type Of Service) fields and the like.
You are strongly advised not to use this table for any filtering;
http://www.frozentux.net/iptables-tutorial...tml#FILTERTABLE
Filter table
The filter table is mainly used for filtering packets. We can match packets and filter them in whatever way we want. This is the place that we actually take action against packets and look at what they contain and DROP or /ACCEPT them, depending on their content.
КЛЮЧЕВЫЕ СЛОВА
Перевод:You are strongly advised not to use this table for any filtering
Вам настоятельно советуют не использовать эту таблицу для любого фильтрования
Добавлю от себя для ОСОБОодаренных: DROP - это фильтровать !!!!!!!
Re: iptables. Почему с PREROUTING не работает интернет?
pelmen писал(а): ↑03.01.2010 13:14Удивительно. Вы хоть обоснуйте свое по-моему (и не только) неправильное мнение.
Идем в последнюю версию официальной инструкции
http://www.frozentux.net/iptables-tutorial...tml#MANGLETABLE
и видимИ ещеMangle table
This table should as we've already noted mainly be used for mangling packets. In other words, you may freely use the mangle targets within this table, to change TOS (Type Of Service) fields and the like.
You are strongly advised not to use this table for any filtering;
http://www.frozentux.net/iptables-tutorial...tml#FILTERTABLEFilter table
The filter table is mainly used for filtering packets. We can match packets and filter them in whatever way we want. This is the place that we actually take action against packets and look at what they contain and DROP or /ACCEPT them, depending on their content.
КЛЮЧЕВЫЕ СЛОВАПеревод:You are strongly advised not to use this table for any filtering
Вам настоятельно советуют не использовать эту таблицу для любого фильтрования
Добавлю от себя для ОСОБОодаренных: DROP - это фильтровать !!!!!!!
Приходится поднимать старую тему, но все же.
Если к примеру трафик не доходит до цепочки forwarding (которая есть в таблице фильтр).
У меня в данный момент такой случай. Трафик доходит до интерфейса и разворачивается назад (wifi).
Единственная цепочка куда он попадает это prerouting. Как тогда быть?
- drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
- Контактная информация:
Re: iptables. Почему с PREROUTING не работает интернет?
если вы хотите помыть голову, открываете дверь, и вместо ванны, видите унитаз, то следовательно: вы случайно попали в туалет. Ванная комната рядом.
В вашем конкретном случае, я не понимаю, как(и главное зачем) можно "разворачивать" пакеты на другой интерфейс минуя цепочку FORWARD, которая, AFAIK, для этого и предназначена?
AFAIK, все транзитные пакеты, которые нужны НЕ ЭТОМУ шлюзу, а идут скажем eth7 --> wlan8, просто обязаны попасть в FORWARD, и фильтроваться именно там. ACCESSится и DROPаться. Ну и LOGиться конечно.
А если до FORWARD "не доходит", то вы ИМХО что-то не так делаете.
- drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
- Контактная информация:
Re: iptables. Почему с PREROUTING не работает интернет?
PS: зачем нужно prerouting? Очень просто, для прероутинга. Т.е. мы знаем ОТКУДА, но ещё НЕ решили КУДА(да и вообще ничего не решили). Вот для того, что-бы как-то пометить пакеты ОТСЮДА и нужна эта цепочка. Вот например в http://www.opennet.ru/docs/RUS/iptables/#PREROUTINGCHAIN
тут пакеты ИЗ $INET_IFACE идущие на 53й порт меняют адрес назначения на $DMZ_DNS_IP. Это нужно для того, что-бы ответ нашего DNS автоматический сменил IP с нашего внутреннего, на тот, который у нас снаружи, в интернетах. Ибо отправлять в интернеты пакеты с обратным адресом 192.168/16 -- всё равно, что на почте России "на деревню, дедушке". Нет, никто не запрещает.
Это приходится делать в prerouting, ибо действие завязано исключительно на входной интерфейс(для других интерфейсов замена IP не требуется).
Код: Выделить всё
$IPTABLES -t nat -A PREROUTING -p TCP -i $INET_IFACE -d $DNS_IP \
--dport 53 -j DNAT --to-destination $DMZ_DNS_IP
тут пакеты ИЗ $INET_IFACE идущие на 53й порт меняют адрес назначения на $DMZ_DNS_IP. Это нужно для того, что-бы ответ нашего DNS автоматический сменил IP с нашего внутреннего, на тот, который у нас снаружи, в интернетах. Ибо отправлять в интернеты пакеты с обратным адресом 192.168/16 -- всё равно, что на почте России "на деревню, дедушке". Нет, никто не запрещает.
Это приходится делать в prerouting, ибо действие завязано исключительно на входной интерфейс(для других интерфейсов замена IP не требуется).