The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

OpenNews: Руководство по пакетному фильтру pf, opennews (?), 03-Май-07, (0) [смотреть все]

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


18. "Руководство по пакетному фильтру pf"  +/
Сообщение от vehn (?), 04-Май-07, 05:30 
да-да, за работу мегареспект, спасибо огромное
Ответить | Правка | Наверх | Cообщить модератору

19. "Руководство по пакетному фильтру pf"  +/
Сообщение от dimusemail (??), 04-Май-07, 07:51 
Очень полезная работа. Надеюсь, что у автора все получится. Желаю ему удачи.

А еще есть вопрос по одному скользкому моменту. Вот цитата из текста:
>Трансляция осуществляется до фильтрации. Правила фильтра увидят уже оттранслированные >пакеты.

Из этого утверждения вытекает, что на машине с NAT невозможно фильтровать трафик от внутренних хостов. Было бы неплохо, чтобы было разъяснение по этому моменту.
Допустим у нас есть сеть 192.168.1.0/24 со шлюзом на *BSD с pf, который натит в IP 1.2.3.4
Хост 192.168.1.3 не должен иметь возможность достучаться до адреса 5.6.7.8 по 80 порту. iptables делает такое одним правилом. Приведите плиз пример конфига pf, который делает то-же самое.

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

20. "Руководство по пакетному фильтру pf"  +/
Сообщение от northbear (??), 04-Май-07, 08:40 
Это утверждение касается порядка фильтрации трафика на одном интерфейсе. В твоем случае, как правило, используется такой вариант: фильтрация производится на том интерфейсе, который смотрит во внутреннюю сеть 192.168.1, а трансляция производится на внешнем интерфейсе.

Но это далеко не единственный вариант. Можно редиректить отфильтрованный траффик внутр. сети во внешний мир на дополнительный loopback-интерфейс и на нем делать трансляцию. Это по-моему самый быстрый вариант.

На худой конец, pf позволяет менять последовательность обработки. Но это крайне не рекомендуется...  

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

21. "Руководство по пакетному фильтру pf"  +/
Сообщение от GreenX (??), 04-Май-07, 09:45 
По этому вопросу есть не плохая иллюстрация.
http://homepage.mac.com/quension/pf/flow.png
Ответить | Правка | Наверх | Cообщить модератору

23. "Руководство по пакетному фильтру pf"  +/
Сообщение от dimusemail (??), 04-Май-07, 10:00 
Спасибо за иллюстрацию и за разъяснения. Вообще, было бы здорово чтобы этот вопрос более подробно освещался в руководстве. Надеюсь, что автор примет это к сведению.
Ответить | Правка | Наверх | Cообщить модератору

27. "Руководство по пакетному фильтру pf"  +/
Сообщение от mutronixemail (?), 04-Май-07, 10:48 
>  Это утверждение касается порядка фильтрации трафика на одном интерфейсе. В твоем случае, как правило, используется такой вариант: фильтрация производится на том интерфейсе, который смотрит во внутреннюю сеть 192.168.1, а трансляция производится на внешнем интерфейсе.


Интересно, а почему фильтрация пакета происходит в таком порядке? Не лучше ли было бы как в iptables фильтровать транзитные пакеты в порядке dnat-filter-snat?


> Можно редиректить отфильтрованный траффик внутр. сети во внешний мир на дополнительный loopback-интерфейс и на нем делать трансляцию. Это по-моему самый быстрый вариант.


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

Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

42. "Руководство по пакетному фильтру pf"  +/
Сообщение от northbear (??), 04-Май-07, 15:56 
>Интересно, а почему фильтрация пакета происходит в таком порядке? Не лучше ли было бы как в > iptables фильтровать транзитные пакеты в порядке dnat-filter-snat?

А какая разница? Тогда бы точно так же возникали обратные вопросы.

Мне например, такой вариант намного удобней. Я пишу правила фильтрации на внешнем интерфейсе в контексте внешних  адресов, не завязываясь на внутренее устройство сети. А фильтрация, завязанная на топологию  внутренней сети и внутренние маршруты, производится на внутренних интерфейсах. И я для себя точно знаю, что если вдруг одна внутренняя сеть переехала с одного порта на другой или маршрутизация изменилась, то в правилах на внешнем порту мне точно ничего менять не нужно. Всему свое место...    


>Может проще маркировать транслируемые пакеты для последующей фильтрации на основе значения
>tag? Тут главное, чтобы другие правила случайно не заменили маркер.

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

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

24. "Руководство по пакетному фильтру pf"  +/
Сообщение от Евгений Миньковский (?), 04-Май-07, 10:07 
Было бы странно, если бы это было невозможно.

ext_if=rl0
int_if=rl1
...
nat on $ext_if from $int_if:network to any -> $ext_if
...
block in quick on $int_if from 192.168.1.3 to 5.6.7.8 port 80
...

Секрет в том, что трансляция осуществляется на внешнем интерфейсе, а фильтрация на внутреннем

Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

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

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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