Не подскажете, почему когда я удаленно через сессию SSH делаю sh /etc/rc.firewall меня отключает, и перестает работать руотер, так как не грузятся все правила. Естественно, чтобы очистить список в начале пишу:
/sbin/ipfw -f flush
/sbin/ipfw add 3 check-state
#Razresaem vsio cerez lo0
/sbin/ipfw add 4 allow all from any to any via lo0
и так далее...но как только все flush то и с концами...
А как перегружать правила без такой заморочки, потому что не очень удобно если работаешь из дому а за 50 км виснет роутер???
>Не подскажете, почему когда я удаленно через сессию SSH делаю sh /etc/rc.firewall
>меня отключает, и перестает работать руотер, так как не грузятся все
>правила. Естественно, чтобы очистить список в начале пишу:
>/sbin/ipfw -f flush
>/sbin/ipfw add 3 check-state
>#Razresaem vsio cerez lo0
>/sbin/ipfw add 4 allow all from any to any via lo0
>и так далее...но как только все flush то и с концами...
>А как перегружать правила без такой заморочки, потому что не очень удобно
>если работаешь из дому а за 50 км виснет роутер???
делай вот так :)
/etc/rc.firewall &
ns# /etc/rc.firewall &
[1] 57028
ns# /etc/rc.firewall: Permission denied.
>ns# /etc/rc.firewall &
>[1] 57028
>ns# /etc/rc.firewall: Permission denied.
В натуре, sh /etc/rc.firewall &
>Не подскажете, почему когда я удаленно через сессию SSH делаю sh /etc/rc.firewall
>меня отключает, и перестает работать руотер, так как не грузятся все
>правила. Естественно, чтобы очистить список в начале пишу:
>/sbin/ipfw -f flush
>/sbin/ipfw add 3 check-state
>#Razresaem vsio cerez lo0
>/sbin/ipfw add 4 allow all from any to any via lo0
>и так далее...но как только все flush то и с концами...
>А как перегружать правила без такой заморочки, потому что не очень удобно
>если работаешь из дому а за 50 км виснет роутер???
Оключай firewall перед перезапуском. Или настрой ядро чтобы правилом по дефолту было allow all а не deny all . И прочти мануал - там об этом вроде тоже что-то говорится ( если мне память не изменяет :)
>А как перегружать правила без такой заморочки, потому что не очень удобно
>если работаешь из дому а за 50 км виснет роутер???
Такой эффект возникает при "default to deny" настройках ipfw. Суть эффекта примерно такова, что при загрузке правила выводятся экран, т.е. создают некий ssh-трафик. После flush еще нет разрешающего правила для ssh и их дальнейшая загрузка отваливается из-за ошибки вывода. Возможное решение
1) использовать firewall_quiet="YES" при "родном" rc.firewall (совместно с описанием правил в файле указанном в firewall_type=)
2) Добавление -q в строку запуска ipfw в случае самописного rc.firewall, т.е. при запуске этот скрипт не должен производить какого-либо выводаТакже неплохо учесть, что если в пп.1 встретилась ошибка в правилах, описанных во внешнем файле, то это может привести к остановке их дальнейшей загрузки, что вызовет подобный эффект. Варианты лечения -
1) Внимательно изменять правила, не допуская синтаксических ошибок
2) Добавить в начало файла правил минимальный набор для доступа к нему по ssh и ниогда не менять этот фрагмент (кроме ssh возможно потребуется разрешить DNS-трафик)Ну и различные вариации на эту тему
Спасибо всем откликнувшимся, работает как FIREWALL TYPE = QUEIT так и sh /etc/rc.firewall & . Только вот ради себя хочется узнать что все-таки за магический символ & , позволяющий загружать все правила до конца?
>Только вот ради себя хочется узнать что все-таки
>за магический символ & , позволяющий загружать все правила до конца?man sh :)
Запуск программы в фоне.Еще есть хороший скрипт именно для этих целей:
/usr/share/examples/ipfw/change_rules.sh