Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по FreeBSD (http://forum.oszone.net/forumdisplay.php?f=10)
-   -   PF и FreeBSD (http://forum.oszone.net/showthread.php?t=211747)

paladinstar 23-07-2011 11:05 1718281

PF и FreeBSD
 
Всем привет! Очень нужна помощь по такому вопросу. Мне по наследству досталось FreeBSD на которой был настроен PF. Так как я практически не знаю его начал изучать. Оказалось что он был настроен просто никак. Даже Block all не включен. Главная была задача настроить его по человечески + требование чтобы только определенные пк в сети могли выходить в интернет. Так как пк мало у всех закреплены статические ip.
PF.conf пример
ext_if="re1" #внешний интерфейс
int_if="re0" #внутренний интерфейс
my_lan="192.168.1.0/24"
my_pc="192.168.1.8" # пк которому разрешен выход в инет

set skip on lo0

scrub in all

nat on $ext_if from $my_lan to any -> ($ext_if)

block all
#далее опускаю пробросы rdr, правила фильтрации все коментирую оставляю только то что ниже:

pass in on $int_if from $my_pc to any
pass out on $int_if from any any
pass out on $ext_if from $my_pc to any

Почему с my_pc всё равно не пашет интернет??? Открывается только Яндекс всё остальное не открывается!!?!?!?!?!
Или можно как то другим методом?
Очень надеюсь на помощь!!!

contoso.com 23-07-2011 13:49 1718342

необходимо анализировать ситуацию комплексно. Какие результаты возвращает утилиты ping, traceroute, telnet, nslookup....
Цитата:

Цитата paladinstar
pass out on $int_if from any any »

опечатка при наборе сообщения или копипаст с вашего роутера?
Цитата:

Цитата paladinstar
pass out on $ext_if from $my_pc to any »

исходящие разрешены, а входящие?

paladinstar 23-07-2011 15:32 1718400

В первом случае опечатка
pass out on $int_if from any to any

Как лудше для входящий написать?
Я для входящих только ssh и rdp разрешения писал, из дома чтобы ходить. Ведь если так как сейчас, то должно срабатывать keep state?
Настроено было так
внешний интерфейс и основной шлюз разные ip. Когда пингую яндекс например то пинги идут через внутренний интерфейс, потом основной шлюз и наружу. Другие сайты не пингуюся вообще.

contoso.com 23-07-2011 17:20 1718472

Цитата:

Цитата paladinstar
Так как я практически не знаю его начал изучать. »

Цитата:

Цитата paladinstar
Как лудше для входящий написать? »

вот и скажите нам :)
Цитата:

Цитата paladinstar
Я для входящих только ssh и rdp разрешения писал, из дома чтобы ходить. »

для этого лучше все же впн-сервер организовать.имхо.
Цитата:

Цитата paladinstar
Когда пингую яндекс например то пинги идут через внутренний интерфейс, потом основной шлюз и наружу. Другие сайты не пингуюся вообще. »

Цитата:

Цитата contoso.com
необходимо анализировать ситуацию комплексно. Какие результаты возвращает утилиты ping, traceroute, telnet, nslookup.... ?»

приведите здесь результаты ping ya.ru, tracert ya.ru, telnet ya.ru 80, nslookup ya.ru и тоже самое, для любого другого ресурса, к которому нет доступа.

Hangsman 24-07-2011 15:04 1718900

На ПК NAT есть?

Цитата:

Цитата paladinstar
pass out on $ext_if from $my_pc to any »

Тут пакеты идут с ИП уже не с тем который на внутреннем интерфейсе, а с тем который на внешем, то есть само правило никак не влияет на работу

+ самый большой всех этих правил - отсутсвие ключевого слова quick, без которого эти все правила безсмысленны

доджно быть что-то типа такого

pass out quick on $ext_if from my_out_ip to any keep state

my_out_ip - это внешний ип-адрес сервера

contoso.com 25-07-2011 09:14 1719274

Цитата:

Цитата Hangsman
доджно быть что-то типа такого
pass out quick on $ext_if from my_out_ip to any keep state »

Естественно, что исходящие с самого сервера должны быть разрешены, частично, либо полностью - не суть. Смысл quick исключить прохождение пакета по списку правил, следующим за текущим правилом. Соответственно надо помещать это правило в самом начале списка фильтрации. Иначе, если правило находится в конце, параметр quick не влияет ни на что.

paladinstar 25-07-2011 21:00 1719756

Буду пробовать, пока некогда было протестить


Время: 22:24.

Время: 22:24.
© OSzone.net 2001-