The OpenNET Project / Index page

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

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

"Какая конструкция правил для ipfw лучше?"  
Сообщение от Kos (??) on 10-Май-06, 19:27 
Привет Всем!
Выскажите мнение/поделитесь опытом про сабж

Есть варианты (возможно список неполный:)))):

Первый:
ipfw add allow tcp from any to any established
ipfw add allow tcp from any ports to any ports setup ()
.......
ipfw add deny tcp from any to any

Второй:
ipfw add check-state
ipfw add deny tcp from any to any established
ipfw add allow tcp from my-local-net to any setup keep-state
.......
ipfw add deny tcp from any to any

Третий:
ipfw add allow tcp from my-local-net to any portlist1
ipfw add allow tcp from any portlist1 to my-local-net
ipfw add allow tcp from my-local-net to net2 portlist2
ipfw add allow tcp from net2 portlist2 to my-local-net
.......
ipfw add deny tcp from any to any

Какой Вы используете? Желательно почему.

Спасибо!

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

 Оглавление

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


1. "Какая конструкция правил для ipfw лучше?"  
Сообщение от PavelR email(??) on 10-Май-06, 21:27 

>
>Третий:
>ipfw add allow tcp from my-local-net to any portlist1
>ipfw add allow tcp from any portlist1 to my-local-net
>ipfw add allow tcp from my-local-net to net2 portlist2
>ipfw add allow tcp from net2 portlist2 to my-local-net
>.......
>ipfw add deny tcp from any to any
>

позволяет "злоумышленнику" обращаться к произвольному порту произвольной машины в твоей сети правилом 2, установив src порт  в разрешенный, например 80.

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

2. "Какая конструкция правил для ipfw лучше?"  
Сообщение от PavelR email(??) on 10-Май-06, 21:44 

>Первый:
>ipfw add allow tcp from any to any established
>ipfw add allow tcp from any ports to any ports setup ()
>
>.......
>ipfw add deny tcp from any to any

этот вариант мне кажется чуть более быстрым чем второй (проверяются только флаги пакета, поиска по таблице соединений не производится)
без keep-state функций этот вариант не полностью функционален, например ответные udp соединения от DNS серверов будут вырезаться.

>
>Второй:
>ipfw add check-state
>ipfw add deny tcp from any to any established
>ipfw add allow tcp from my-local-net to any setup keep-state
>.......
>ipfw add deny tcp from any to any

вторая строка помоему излишня. соединения с выставленными флагами RST ACK либо пройдут по первому, либо вырежутся последним.

Кстати, как в таком файрволле разрешать фтп-траффик ?

А закрывать помоему надо не только TCP. Правильнее в конце deny all from any to any.

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

3. "Какая конструкция правил для ipfw лучше?"  
Сообщение от Kos (??) on 10-Май-06, 22:53 
>
>Кстати, как в таком файрволле разрешать фтп-траффик ?
>
>А закрывать помоему надо не только TCP. Правильнее в конце deny all
>from any to any.

Действительно
deny all from any to any
я просто опечатался.

В примерах я привел не полнофункциональные правила, а просто принцип построения:
что лучше (читай быстрее, надежнее) keep-state, established, или прописывать
правила для всего траффика.

С ftp разбирался давно и всего не упомню, может что-то упущу, но идея такая:
пропустить исходящее соединения на порты 20,21 и открыть порты 1024-65535.
Можно использовать ftp_proxy (я пользовался frox) тогда можно открывать не
все 1024-65535, а выбранный диапазон из frox.conf

Если нужно подробнее могу посмотреть.

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

4. "Какая конструкция правил для ipfw лучше?"  
Сообщение от PavelR email(??) on 11-Май-06, 08:55 
>В примерах я привел не полнофункциональные правила, а просто принцип построения:
>что лучше (читай быстрее, надежнее) keep-state, established, или прописывать
>правила для всего траффика.
>
Насчет прописывать правила для всего траффика - уже рассказал, что это помоему неверно.

keep-state создает в памяти правила для каждого соединения. Гдето говорится что нужно не забывать о потенциальной возможности DOS на маршрутизатор.
Соответственно для пакетов будет производиться поиск правила по таблице разрешенных соединений, что может быть медленнее чем простая проверка двух флагов у пакета.

Минус метода "established" - снаружи могут идти и проходить маршрутизатор пакеты неустановленных соединений с установленными флагами RST или ACK.
Насколько я понимаю, это может дать возможность посканировать порты локальной сети - локальная машина должна будет дать ответ что соединение завершено(пропустит ли этот ответ файрволл?), но возможности это самое соединение установить снаружи всеравно не будет.

Кто знает поведение лучше, дополняйте и исправляйте.

>С ftp разбирался давно и всего не упомню, может что-то упущу, но
>идея такая:
> ...
>Если нужно подробнее могу посмотреть.

Помоему чем вручную открывать диапазон портов, лучше смотреть в опции natd, если он используется.  А вообще, гдето  на форуме эта тема про фтп уже обсуждалась.


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

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

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




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

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