Страница 1 из 1
При загрузке системы PF стартует без настроек
Добавлено: 2011-09-14 17:05:09
Kano
Народ, помогите! не пойму в чем может быть дело... PF настроен уже почти 2 года(настраивал не я) и работает, но бывает в офисе отрубают свет и тогда начинаются пляски... PF стартует, но без настроек, т.е. все начинает работать только после того как применяю настройки (pfctl - f /etc/pf.conf). и это после каждой перезагрузки сервера! Ось- FreeBSD 8.0
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-14 19:11:15
mak_v_
могу помочь, глянув конфиги pf.conf и rc.conf, подобная проблема была с ВПН и ДХЦП соединениями
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-15 16:32:52
Kano
пока конфиги не могу предоставить... впн есть, но он настроен через IPsec, а что может быть за проблема, расскажи поподробнее)
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-15 16:39:16
mak_v_
Ну, теоретически, если у вас болит голова - это "болит голова", но очень часто виновата в этом погода.
А точно, сейчас у нас потеплело, и к сожалению пациента с головой сейчас нет, расскажите мне поподробнее про погоду......
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-15 17:02:10
Kano
))) в ближайшее время(скорее всего на след. неделе) скину конфиги
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-15 19:28:29
tom.cat
У меня подобная проблема имелась на шлюзе. Соединение с интернетом(pppoe) устанавливалось с помощью ppp. При перезагрузке PF стартовал ранее ppp, естессно правила не загружались.
Код: Выделить всё
Enabling pf
no IP address found for tun0
/etc/pf.conf:18:
could not parse host specification
no IP address found for tun0
/etc/pf.conf:19:
could not parse host specification
no IP address found for tun0
/etc/pf.conf:20:
could not parse host specification
no IP address found for tun0
/etc/pf.conf:21:
could not parse host specification
По идее надо добавить в файл /etc/rc.d/pppoed
Но это пробему не решает

До сих пор не знаю, как исправить это.
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-15 22:13:49
hedgehog
В mpd, например, можно указывать скрипт, исполняемый при поднятии туннеля. На форуме уже обсуждалось
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-16 10:24:49
icb
Есть подобная проблема. Но проявляется она только после кривой перезагрузки (сбой питания и т.п.). Лечится обычным reload.
Проблема в конфигах маловероятна - т.к. после обычной загрузки/перезагрузки pf поднимается корректно.
Больше похоже на баг в pf

Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-16 15:23:25
hedgehog
icb писал(а):Есть подобная проблема. Но проявляется она только после кривой перезагрузки (сбой питания и т.п.). Лечится обычным reload.
Проблема в конфигах маловероятна - т.к. после обычной загрузки/перезагрузки pf поднимается корректно.
Больше похоже на баг в pf

а вы посмотрите после "необычной" загрузки, какие правила подгружены в pf и сравните с правилами при корректной работе
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-19 10:17:27
skeletor
tom.cat писал(а):У меня подобная проблема имелась на шлюзе. Соединение с интернетом(pppoe) устанавливалось с помощью ppp. При перезагрузке PF стартовал ранее ppp, естессно правила не загружались.
Код: Выделить всё
Enabling pf
no IP address found for tun0
/etc/pf.conf:18:
could not parse host specification
no IP address found for tun0
/etc/pf.conf:19:
could not parse host specification
no IP address found for tun0
/etc/pf.conf:20:
could not parse host specification
no IP address found for tun0
/etc/pf.conf:21:
could not parse host specification
По идее надо добавить в файл /etc/rc.d/pppoed
Но это пробему не решает

До сих пор не знаю, как исправить это.
Приведите содержимое строк 18-21, попробую вам помочь.

Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-19 12:37:35
snorlov
А чего тут помогать, если при старте pf интерфейс tun0 еще не поднялся... вот и не грузятся связанные с этим интерфейсом правила в pf...
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-19 15:17:01
skeletor
И что вы предлагаете? Каждый раз вручную это делать? Вы слышали про якоря? Видимо нет.
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-19 15:55:01
snorlov
Посмотрите, что имеется в каталоге /usr/share/examples/pppd, если он у вас поставлен, заодно пробегитесь по man pppd. Без разницы, чем вы поднимаете VPN к провайдеру, mpd/pppd, вируальные интерфейсы создаются в момент коннекта, а pf/ipfw стартуют еще раньше, но mpd/pppd имеют возможность запускать скрипты(программы) после коннекта, другими словами после коннекта их ipfw/pf надо перестартовать..
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-19 16:03:04
tom.cat
Самое интересное, что такая проблема появилось с 7 версии фряхи. В 6-й все грузилось нормально, сначала устанавливалось соединение, а уже потом подгружался pf. Буду вкуривать ман по pppd, спасибо за помощь.
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-19 17:17:22
skeletor
snorlov писал(а):Посмотрите, что имеется в каталоге /usr/share/examples/pppd, если он у вас поставлен, заодно пробегитесь по man pppd. Без разницы, чем вы поднимаете VPN к провайдеру, mpd/pppd, вируальные интерфейсы создаются в момент коннекта, а pf/ipfw стартуют еще раньше, но mpd/pppd имеют возможность запускать скрипты(программы) после коннекта, другими словами после коннекта их ipfw/pf надо перестартовать..
+1. Использование якорей вместе с файлами link.up/link.down (названия условные) как раз и решает вашу проблему.
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-20 11:04:15
mak_v_
Любое из этого вам поможет
1) якоря
2) Up\down скрипты для впн
3) Порядок в рц-скриптах - опции "require" "before"
Я бы пилил up/down скрипты
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-20 11:08:32
tom.cat
mak_v_ писал(а):Любое из этого вам поможет
1) якоря
2) Up\down скрипты для впн
3) Порядок в рц-скриптах - опции "require" "before"
Я бы пилил up/down скрипты
Код: Выделить всё
3) Порядок в рц-скриптах - опции "require" "before"
Этот вариант не работает. Буду пробовать оставшиеся 2 варианта.
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-21 10:26:01
skeletor
mak_v_ Вот расскажите мне, как можно отдельно использовать п.1 и п.2? Как можно без якорей добавить новые правила в pf? Я понимаю, что можно привести пример, где sed'ом вставляется пару строк в pf.conf, потом он перечитывается, но это такой костыль. А при опускании интерфейса их опять нужно удалять. А если случился хардрезет, то правила-то остались и при следующей загрузке уже будет по 2 одинаковых правила и они позже таким образом могут плодится. Конечно можно добавить проверку на существование правил и т.д, но это выльется в ещё больший костыль.
По сему вопрос: зачем изобретать велосипед, если уже это есть и его можно использовать? Может я не всё знаю.
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-21 10:32:16
mak_v_
например: при загрузке использовать файл настроек pf.conf, а up-скриптом pf.conf.up
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-21 11:37:27
skeletor
Ну-ну, и держать 3 копии одного файла с отличием в пару строк и вносить изменения (в случае добавления, удаления правил) так же в 3 файла вместо 1-го - действительно очень удобно (к примеру, файл с пару сотнями правил

). Думаю дальше спорить на эту тему бесполезно.
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-21 11:51:43
mak_v_
не три, а две
Думаю что "ну-нукать" - это самое правильное.
Не нравятся скрипты - юзайте якоря...а то нукальщиков много, а как надо головой поработать, так сразу в форум.
Интерфейса нет, а правила уже нужны....это как посрать не снимая штаны - штаны не снял, а посрать уже надо!!
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-09-21 15:01:45
hedgehog
skeletor писал(а):mak_v_ Вот расскажите мне, как можно отдельно использовать п.1 и п.2?
если привязка к интерфейсу не критична, то п.2 легко реализуется посредством таблиц
Re: При загрузке системы PF стартует без настроек
Добавлено: 2011-10-06 8:08:03
tom.cat
Итак, долгожданный перезагруз шлюза и проблема решена

Решена с помощью правил PF безо всяких скриптов up/down для vpn.
В правилах добавил скобочки:
Код: Выделить всё
nat on $ext_if from $trusted_lan to any -> ($ext_if)
rdr on $ext_if proto tcp from any to ($ext_if)....
pass in on $ext_if inet proto tcp from any to ($ext_if)....
И так далее по аналогии.