Автор Тема: iptables скрипт [решено]  (Прочитано 2534 раз)

Оффлайн jedi63

  • Давно тут
  • **
  • Сообщений: 43
iptables скрипт [решено]
« : 29.12.2008 14:09:31 »
Доброго времени суток.. Такая проблема.. Нужно чтобы iptables после перезагрузки network демона, использовал нужный скрипт... Что то аля rc.conf ipfw_script во фряхе..  Если использовать iptables-save, то конфиг получается кривой, т.к. использую переменные, которые изменяются при перезапуске. Есть какие либо предложения?
« Последнее редактирование: 30.12.2008 13:03:18 от Skull »

Оффлайн wRAR

  • Завсегдатай
  • *
  • Сообщений: 469
Re: iptables скрипт
« Ответ #1 : 29.12.2008 14:33:51 »
/etc/rc.d/rc.firewall

Оффлайн jedi63

  • Давно тут
  • **
  • Сообщений: 43
Re: iptables скрипт
« Ответ #2 : 29.12.2008 18:24:40 »
хмм, а разве он будет перезапускаться при service network restart?  Насколько я понимаю не катит. Если меняется значение переменной после перезапуска network, например какой то ип, то все идет к чертям, никакого существенного различия к примеру с iptables-save не вижу, ну определит значение переменной аля $inet_ip к примеру 10.1.2.3, перезапущу сервис, получу 10.1.2.4, в iptables -L будет 10.1.2.3. Или я что то не правильно понимаю?

Alexei_VM

  • Гость
Re: iptables скрипт
« Ответ #3 : 29.12.2008 18:27:57 »
хмм, а разве он будет перезапускаться при service network restart?  Насколько я понимаю не катит. Если меняется значение переменной после перезапуска network, например какой то ип, то все идет к чертям, никакого существенного различия к примеру с iptables-save не вижу, ну определит значение переменной аля $inet_ip к примеру 10.1.2.3, перезапущу сервис, получу 10.1.2.4, в iptables -L будет 10.1.2.3. Или я что то не правильно понимаю?
А это не помогает?
http://www.altlinux.org/Etcnet/firewall

Оффлайн jedi63

  • Давно тут
  • **
  • Сообщений: 43
Re: iptables скрипт
« Ответ #4 : 29.12.2008 19:29:31 »
мм, синтаксис там какой то... довольно странный, конечно согласен в крутости etcnet, но fw по моему слишком много курили... Есть ли какая нибудь возможность, или утилита какая для сохранения в etcnet обычного скрипта, что то типа
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 20 -j ACCEPT
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 21 -j ACCEPT
перегнать в новый вариант?

Alexei_VM

  • Гость
Re: iptables скрипт
« Ответ #5 : 29.12.2008 19:38:09 »
мм, синтаксис там какой то... довольно странный

Процитирую документацию:

Цитировать

#  Правила для iptables можно писать с помощью синтаксиса, подобного синтаксису ipfw и других. Сделано это с помощью простой замены слов на опции iptables. Сами замены описаны в файле /etc/net/ifaces/default/fw/iptables/syntax (там также описано некоторое количество вспомогательных слов, так что правила можно писать практически на литературном английском :). Синтаксис правила можно совмещать (то есть использовать и заданный в etcnet синтаксис и реальные опции команды iptables)

# В правилах можно использовать любые переменные окружения, выполнять любые команды shell (они должны быть указаны в одну строку). Переменная $NAME содержит имя текущего интерфейса. Переменные $IPV4ADDRESS и $IPV6ADDRESS содержат массив IPV4/IPV6 адресов текущего интерфейса (это обычные bash arrays, можно обращаться к ним по индексу: ${IPV4ADDRESS[2]} или просто $IPV4ADDRESS для первого значения). Для удобства можно использовать файлы options, в которых прописывать какие-либо переменные, к примеру, адреса gateway, ISP, сетей и т. д.

Вдогонку:

Цитировать
Прочее
Конвертор правил, точнее, дампа iptables-save (альфа! и требует ruby) в соответствующее расположение правил в etcnet
« Последнее редактирование: 29.12.2008 19:40:53 от Alexei_VM »

Оффлайн jedi63

  • Давно тут
  • **
  • Сообщений: 43
Re: iptables скрипт
« Ответ #6 : 30.12.2008 02:05:33 »
мм, синтаксис там какой то... довольно странный

Процитирую документацию:

Цитировать

#  Правила для iptables можно писать с помощью синтаксиса, подобного синтаксису ipfw и других. Сделано это с помощью простой замены слов на опции iptables. Сами замены описаны в файле /etc/net/ifaces/default/fw/iptables/syntax (там также описано некоторое количество вспомогательных слов, так что правила можно писать практически на литературном английском :). Синтаксис правила можно совмещать (то есть использовать и заданный в etcnet синтаксис и реальные опции команды iptables)

# В правилах можно использовать любые переменные окружения, выполнять любые команды shell (они должны быть указаны в одну строку). Переменная $NAME содержит имя текущего интерфейса. Переменные $IPV4ADDRESS и $IPV6ADDRESS содержат массив IPV4/IPV6 адресов текущего интерфейса (это обычные bash arrays, можно обращаться к ним по индексу: ${IPV4ADDRESS[2]} или просто $IPV4ADDRESS для первого значения). Для удобства можно использовать файлы options, в которых прописывать какие-либо переменные, к примеру, адреса gateway, ISP, сетей и т. д.

Вдогонку:

Цитировать
Прочее
Конвертор правил, точнее, дампа iptables-save (альфа! и требует ruby) в соответствующее расположение правил в etcnet

Прошу прощения, накосячил, не успел прочесть весь ман, и огромное спасибо  ;)