Iptables
Версия от 14:20, 22 сентября 2008; Ilis (обсуждение | вклад) (→К вопросу об использовании rc.firewall vs "как обычно")
Конфигурирование файрвола при помощи iptables
К вопросу об использовании rc.firewall vs "как обычно"
Файл /etc/rc.d/rc.firewall изначально отсутствует, но если его создать (руками или каким-то инструментом для автоматизированной настройки), он будет вызываться из /etc/rc.d/rc.sysinit.
Sergey Vlasov
> А он нужен там? Конечно нужен. Без него в правилах без поллитра уже через неделю не разберешься. А насчет rc.firewall - надо просто создать такой файл и он при загрузке будет подхватываться.
Maxim Tyurin
[...] в незамороченных случаях (обычно) проще применять /etc/sysconfig/iptables, service iptables, iptables-save и iptables-restore. Бишь создать чем угодно устраивающую конфигурацию в рантайме (т.е. когда iptables в ядре настроены любой последовательностью вызовов /sbin/iptables, которая привела к удовлетворительному результату) и записать командой iptables-save. Она попадёт в первый из вышеупомянутых файлов и будет использоваться сервисом iptables при загрузке. [про rc.firewall] опять же куча всяких древних (и даже не очень, но слаквареобразных) мануалов рекомендует туда пихать развесистые скрипты, в которых единственное осмысленное -- это параметризация. Бывают менее тривиальные конфигурации, правда, отнюдь не всегда они нужны.
скрипт имеет преимущество, которого нет в sysconfig/iptables - переменные и комментарии. я пришел к такой схеме: * пишем скрипт (очистить_все; установить_нужное). * запускаем. * если понравилось - service iptables save. * скрипт остается лежать в /sbin. процедуру повторить. смысла в этом целых три: * редактируя файрвол, проще работать с макросами : $lan_iface, $lan_ip, $outerface и т.д. если админов более одного и/или сложные правила, то опять же легче разбираться в скрипте с комментариями, чем в голых цепочках. * если вдруг что-то начудил до невозможности входа по ssh, можно пнуть ящик, после ребута будет рабочая конфигурация. иначе пришлось бы подключать монитор с клавой.
Nick S. Grechukh
Кстати, в etcnet начиная с 0.7.9 содержится некоторая поддержка конфигурирования iptables в стиле SysV, поинтерфейсно/таблично.
Ссылки
- http://gazette.lrn.ru/rus/articles/index-iptables-tutorial.html
- http://linux.kiev.ua/~mike/docs/iptables-sample4router (дублирую здесь)
- http://radlinux.org -- router appliance distribution