Простые правила PF
Люди подскажите !!!
почему pass out on $ext_if from 10.10.10.250 to any не пускает а pass out on $ext_if all пускает, но всех, а нужно разграничить доступ по IP На этом же интерфейсе стоят еще такие правила: nat on $ext_if from $internal_net to any -> $ext_if block drop all (до разрешающих) |
pf - хороший firewall,но на пальцах не обяснишь. вобще firewall-это такая штука,где надо точно знать что ты делаешь и зачем.
pass out on $ext_if from 10.10.10.250 to any пускает весь траффик, ИСХОДЯЩИЙ с $ext_if с адресом отправителя 10.10.10.250 любому адресу. pass out on $ext_if all пускает весь траффик, ИСХОДЯЩИЙ с $ext_if nat on $ext_if from $internal_net to any -> $ext_if трансирует ВХОДЯЩИЙ И ИСХОДЯЩИЙ траффик по интерфейсу $ext_if с адресом отправителья $internal_net и назначения любой на $ext_if вобще рекомендую почитать man pf.conf http://www.opennet.ru/base/sec/pf_openbsd_altq.txt.html http://www.opennet.ru/docs/RUS/ipfw_pf_ipfilter/ http://www.opennet.ru/search.shtml?words=pf&restrict= еще рекомендую организовывать все правила quick, те поиск останавливается на конкретном правиле. |
kryo
дело в том, что первое правило задает проход пакета в одну сторону (от ip к any) . Но пакет ведь должен еще придти ответ? А вот этого правила у Вас и нет. Можно его дописать, а можно использовать конструкцию keep-state Второй вариант обеспечивает проход в обе стороны. |
Спасибо, проблема решена, NAT не ловит внутренние адреса на внешнем интерфейсе,
потому что на момент фильтрации они уже транслированы во внешние. Перестроил правила на внутреннем интерфейсе. mar да, keep state рулит. |
Время: 02:37. |
Время: 02:37.
© OSzone.net 2001-