Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Cрочно нужна помощь - CentOS 5.5 + iptables

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Unix
Предыдущая тема :: Следующая тема  
Автор Сообщение
Pingvinenok



Зарегистрирован: 30.06.2005
Сообщения: 171

СообщениеДобавлено: Пн Фев 21 2011 16:49    Заголовок сообщения: Cрочно нужна помощь - CentOS 5.5 + iptables Ответить с цитатой

Привет всем!
Не могу понять, где грабли.
Стандартная ситуация: имею сервер CentOS 5.5, на нем две сетевухи, одна смотрит в инет, другая в локалку.
Внешний: eth0 - 216.75.16.85
Внутренний: eth1 - 192.168.1.10
(адреса, конечно, левые указал)
/etc/sysconfig/iptables
Код:

*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [1:40]
:bad_tcp_packets - [0:0]
:icmp_packets - [0:0]
:udp_packets - [0:0]
-A INPUT -s 127.0.0.0/255.0.0.0 -i ! lo -j DROP
-A INPUT -m state --state INVALID -j DROP
-A INPUT -s 127.0.0.1 -i lo -j ACCEPT
-A INPUT -s 192.168.1.10 -i lo -j ACCEPT
-A INPUT -s 216.75.16.85 -i lo -j ACCEPT
-A INPUT -p tcp -j bad_tcp_packets
# Разрешаю входящие подключения из локалки
-A INPUT -i eth1 -s 192.168.1.0/255.255.255.0 -j ACCEPT

# Снаружи разрешаю только связанные пакеты(на самом деле почему-то проходят и новые подключения. Если удалить правило, запрещается все)
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT

-A INPUT -p icmp -j icmp_packets
#По идее, следующее правило вроде как лишнее - DROP и так по умолчанию. Впрочем, включал и его - в этом месте уже не работает
#-A INPUT -i eth0 -j DROP

-A INPUT -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "IPT INPUT packet died: " --log-level 7

-A FORWARD -m state --state INVALID -j DROP
-A FORWARD -p tcp -j bad_tcp_packets
# Разрешаю форвард из локалки
-A FORWARD -i eth1 -s 192.168.1.0/255.255.255.0 -j ACCEPT

-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "IPT FORWARD packet died: " --log-level 7
# Разрешаю форвард для подключения к серверу терминалов из головной организации
-A FORWARD -d 192.168.1.1 -p tcp -m iprange --src-range 156.81.64.1-156.81.64.2 -m tcp --dport 3389 -j ACCEPT

-A OUTPUT -p tcp -j bad_tcp_packets
-A OUTPUT -s 127.0.0.1 -j ACCEPT
-A OUTPUT -s 192.168.1.10 -j ACCEPT
-A OUTPUT -s 216.75.16.85 -j ACCEPT
-A OUTPUT -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "IPT OUTPUT packet died: " --log-level 7

-A bad_tcp_packets -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset
-A bad_tcp_packets -p tcp -m tcp ! --tcp-flags SYN,RST,ACK SYN -m state --state NEW -j DROP

# Запрещаю пинговать снаружи
-A icmp_packets -i eth0 -p icmp -j DROP

#Разрешаю пинговать из локалки
-A icmp_packets -s 192.168.1.0/255.255.255.0 -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A icmp_packets -s 192.168.1.0/255.255.255.0 -p icmp -m icmp --icmp-type 11 -j ACCEPT

COMMIT
*mangle
:PREROUTING ACCEPT [23:2257]
:INPUT ACCEPT [23:2257]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [30:2470]
:POSTROUTING ACCEPT [29:2430]
COMMIT
# Completed on Sat Jan 15 12:10:09 2011
# Generated by iptables-save v1.2.11 on Sat Jan 15 12:10:09 2011
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [2:127]
:OUTPUT ACCEPT [2:127]
# Для подключения к серверу терминалов
-A PREROUTING -p tcp -m iprange --src-range 156.81.64.1-156.81.64.2 -m tcp --dport 3389 -j DNAT --to-destination 192.168.1.1
-A POSTROUTING -d 192.168.1.1 -p tcp -m iprange --src-range 156.81.64.1-156.81.64.2 -m tcp --dport 3389 -j SNAT --to-source 192.168.1.10
COMMIT


Проблема:
Все порты открыты на внешнем интерфейсе eth0. Проверка производилась через http://smart-ip.net/tools/ports-scan и http://speed-tester.info/check_port.php
Все грабли, как я понимаю, вот в этом правиле, которое должно пропускать только связанные пакеты:
A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
А на самом деле разрешает и входящие подключения.
Если комментирую его, ни один пакет не проходит(ну так и должно быть).
Пробовал перед этим правилом добавить такое:
A INPUT -i eth0 -m state --state NEW -j DROP
НЕ РАБОТАЕТ! порты снаружи открыты.
На Fedore 3 аналогичный iptables работает на ура.
HELP!
_________________
Съешь еще мягких французских булок,да выпей чаю!


Последний раз редактировалось: Pingvinenok (Пн Фев 21 2011 17:30), всего редактировалось 1 раз
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Pingvinenok



Зарегистрирован: 30.06.2005
Сообщения: 171

СообщениеДобавлено: Пн Фев 21 2011 17:26    Заголовок сообщения: Ответить с цитатой

Так.
Сейчас впервые добрался до проверки проблемного узла со своего домашнего компа. Реально, все порты закрыты. При этом http://speed-tester.info/check_port.php по-прежнему говорит, что все открыто. http://smart-ip.net/tools/ports-scan также вываливает кучу открытых портов. И именно этими сервисами я пользовался при проверке на месте.
Те же сервисы при проверке узла Fedora 3 с аналогичным iptables говорят, что все закрыто.
Ничего не понимаю...
И тогда я проартикулировал "ПАМАГИТЕ!" Smile
_________________
Съешь еще мягких французских булок,да выпей чаю!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
vasstr



Зарегистрирован: 15.07.2008
Сообщения: 50

СообщениеДобавлено: Пт Фев 25 2011 08:51    Заголовок сообщения: Ответить с цитатой

http://upload.wikimedia.org/wikipedia/commons/3/37/Netfilter-packet-flow.svg

Код:
-A INPUT -i eth1 -s 192.168.1.0/255.255.255.0 -j ACCEPT
-A FORWARD -i eth1 -s 192.168.1.0/255.255.255.0 -j ACCEPT
-A FORWARD -d 192.168.1.1 -p tcp -m iprange --src-range 156.81.64.1-156.81.64.2 -m tcp --dport 3389 -j ACCEPT

Embarassed

непонимание цепочек PREROUTING/INPUT/FORWARD/OUTPUT/POSTROUTING детектед.

напиши правила с нуля, прочитав
http://www.netfilter.org/documentation/HOWTO//packet-filtering-HOWTO.html
http://www.netfilter.org/documentation/HOWTO//NAT-HOWTO.html
и всё заработает как надо.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
vvt



Зарегистрирован: 20.05.2004
Сообщения: 686

СообщениеДобавлено: Чт Мар 24 2011 05:49    Заголовок сообщения: Ответить с цитатой

Не стоит так далеко ходить, всё уже здесь: Iptables Tutorial 1.1.19! На русском языке доступен не самый последний вариант, но, как читавший и самую свежую английскую версию, возьмусь утверждать, что ничем существенным они не отличаются.

Там есть прекрасная схемка прохождения пакетами таблиц и цепочек и в конце отличные примеры конфигов на все случаи жизни, котрые не разочаруют и через много лет. На первый взгляд они могут показаться черезчур усложнёнными, но стоит один раз, вооружившись распечаткой всё той же схемы, осмыслить подходящий и ты не променяешь его ни на что другое.

У меня есть машины, где они работают уже лет по 5-6. Они сильно обросли правилами, но там по-прежнему всё понятно и не вызывает путаницы, несмотря на то, что я со временем внёс лишь небольшие дополнения, слегка систематизировав формат добавляемых правил, по большому счёту.

Если интересно, расскажу как это выглядит в общих чертах.

P.S. Mr. Forum раньше очень расстраивался, когда видел незаслуженные отсылки на другие ресурсы Wink
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
vvt



Зарегистрирован: 20.05.2004
Сообщения: 686

СообщениеДобавлено: Чт Мар 24 2011 05:52    Заголовок сообщения: Ответить с цитатой

Что-то я начал зазнаваться, кажется. Мне очень стыдно Smile
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Unix Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...