URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 88410
[ Назад ]

Исходное сообщение
"Запуск ipfw после openvpn"

Отправлено Snake , 15-Мрт-10 11:22 
Всем доброго времени суток!

Имеется сервер FreeBSD 7.1, работающий как шлюз во внешнюю сеть. Соединение с внешкой - через openvpn (интерфейс tap0). Соответственно пользователи из локалки натятся через этот интерфейс (tap0) посредством ipfw и natd. Проблем с натированием нет никаких. Единственная проблема возникает при перезагрузке сервера. Правила ipfw стартуют раньше, чем поднимается интерфейс tap0. Естественно в этом случае natd отказывается работать корректно и ситуацию спасает только передергивание ipfw руками. Попытка засунуть в стартовый скрипт /etc/rc.d/ipfw директиву #REQUIRE: openvpn к желаемому результату не приводит. Демон openvpn стартует до ipfw, но сам интерфейс tap0 не хочет подниматься, даже если в стартовом скрипте openvpn дописать sleep 180. Он честно спит три минуты, но том не менее интерфейс не поднимает. Если кто сталкивался с подобной проблемой - буду признателен за подсказку. Заранее всем спасибо!

P.S. Просьба не предлагать в качестве решения заменить ipfw на pf. Здесь проблем нет, проверено. Но по ряду причин я не могу юзать на указанной машине pf.


Содержание

Сообщения в этом обсуждении
"Запуск ipfw после openvpn"
Отправлено Alex , 15-Мрт-10 11:55 
Немного странный вопрос.
Я бы сделал так:
1) Сделал бы настройки в скрипте /etc/rc.firewall что-то типа OPEN из дефолтного /etc/rc.firewall
2) В конце скрипта который запускает OpenVPN запускал бы уже нужный скрипт с нужными правилами ipfw.

Вроде все просто.


"Запуск ipfw после openvpn"
Отправлено Snake , 15-Мрт-10 12:19 
>Немного странный вопрос.
>Я бы сделал так:
>1) Сделал бы настройки в скрипте /etc/rc.firewall что-то типа OPEN из дефолтного
>/etc/rc.firewall
>2) В конце скрипта который запускает OpenVPN запускал бы уже нужный скрипт
>с нужными правилами ipfw.
>
>Вроде все просто.

Не катит этот вариант. Как я уже писал, openvpn стартует до ipfw. Но сам интерфейс tap0 поднимается ПОСЛЕ того, как загружаются правила ipfw. Причем не спасает даже директива задержки выполнения sleep в стартовом скрипте openvpn. Ну и кроме того, просто хочется выяснить, каким образом можно заставить отрабатывать правила ipfw после того, как поднимется интерфейс tap0. Есть похожая проблема с pf:
http://guruway.wordpress.com/ (Заголовок FreeBSD: как заставить pf ждать подъема mpd(интерфейсов ngX))

Но предложенное в статье решение не работает для ipfw


"Запуск ipfw после openvpn"
Отправлено ws , 15-Мрт-10 13:23 
>[оверквотинг удален]
>в стартовый скрипт /etc/rc.d/ipfw директиву #REQUIRE: openvpn к желаемому результату не
>приводит. Демон openvpn стартует до ipfw, но сам интерфейс tap0 не
>хочет подниматься, даже если в стартовом скрипте openvpn дописать sleep 180.
>Он честно спит три минуты, но том не менее интерфейс не
>поднимает. Если кто сталкивался с подобной проблемой - буду признателен за
>подсказку. Заранее всем спасибо!
>
>P.S. Просьба не предлагать в качестве решения заменить ipfw на pf. Здесь
>проблем нет, проверено. Но по ряду причин я не могу юзать
>на указанной машине pf.

ipfw стартуешь без привязки ната к tap0. А в openvpn есть директива выполения скрипта при поднятии интерфейса --up cmd.
В этом скрипте проипсывается поднятие ната.

man openvpn



"Запуск ipfw после openvpn"
Отправлено Snake , 15-Мрт-10 15:06 
>[оверквотинг удален]
>>
>>P.S. Просьба не предлагать в качестве решения заменить ipfw на pf. Здесь
>>проблем нет, проверено. Но по ряду причин я не могу юзать
>>на указанной машине pf.
>
>ipfw стартуешь без привязки ната к tap0. А в openvpn есть директива
>выполения скрипта при поднятии интерфейса --up cmd.
>В этом скрипте проипсывается поднятие ната.
>
>man openvpn

Спасибо.


"Запуск ipfw после openvpn"
Отправлено microbash , 16-Мрт-10 08:51 
В продолжение тему вопрос:

а разве нельзя устройства tap создавать заранее (при еще не поднятом впн канале) ?
и вешать на них ипишники?
тогда их можно запросто использовать в статических правилах фаервола.



"Запуск ipfw после openvpn"
Отправлено ws , 17-Мрт-10 13:13 
>В продолжение тему вопрос:
>
>а разве нельзя устройства tap создавать заранее (при еще не поднятом впн
>канале) ?
>и вешать на них ипишники?
>тогда их можно запросто использовать в статических правилах фаервола.

Можно. При этом нат вешать на интерфейс динмически, т.е. без привязки к ip.
Но вариант через запуска скрипта из openvpn будет логически более правильным.