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

Исходное сообщение
"Раздел полезных советов: Корректировка вывода arptables-save..."

Отправлено auto_tips , 05-Июн-09 09:57 
Суть проблемы: в Debian Lenny arptables-save генерирует данные, синтаксически и семантически некорректные
с точки зрения arptables-restore.

Например, если в чистую таблицу filter добавить правило

   # arptables -A INPUT -s 10.128.0.100 -j DROP

а затем вызвать arptables-save, получим

   # arptables-save

   *filter
   :INPUT ACCEPT
   :OUTPUT ACCEPT
   :FORWARD ACCEPT
   -A INPUT -j DROP -i any -o any -s 10.128.0.100

Попытавшись скормить это arptables-restore, увидим

   arptables v0.0.3.3: Can't use -o with INPUT

   Try 'arptables -h' or 'arptables --help' for more information.
ERROR(line 5):

Но даже удаление -o any не сильно исправит дело. Потому что останется -i any. С точки зрения arptables-restore,
да и arptables, any ни разу не ключевое слово, а просто имя интерфейса.
Почему arptables-save считает иначе - непонятно.

Подводя итог: вывод arptables-save нужно фильтровать примерно таким образом:

   # arptables-save | sed -e 's/\(-[io]\) any *//g'
   *filter
   :INPUT ACCEPT
   :OUTPUT ACCEPT
   :FORWARD ACCEPT
   -A INPUT -j DROP -s 10.128.0.100


URL:
Обсуждается: https://www.opennet.ru/tips/info/2089.shtml


Содержание

Сообщения в этом обсуждении
"Корректировка вывода arptables-save в Debian Lenny"
Отправлено myhand , 05-Июн-09 09:57 
правильное место этому - http://bugs.debian.org/

"Корректировка вывода arptables-save в Debian Lenny"
Отправлено аноним , 05-Июн-09 10:28 
Если я им все подобные баги начну постить, у них сервер ляжет :)

Кроме того, не жду ничего хорошего от людей, которые грохнули init-скрипт для iptables и гордо считают это фичей.


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено ононим , 05-Июн-09 10:52 
что значит грохнули?
у меня он очень даже работает. лижит в /etc/init.d/iptables

"Корректировка вывода arptables-save в Debian Lenny"
Отправлено аноним , 05-Июн-09 11:02 
>что значит грохнули?
>у меня он очень даже работает. лижит в /etc/init.d/iptables

Поделитесь травой плз!
А то я тут понимаешь мучаюсь, с редхата его портирую...

Вроде в Этче или Сарже он еще лежал в виде /usr/share/doc/iptables/examples/oldinitscript.gz, а потом его выпилили. В Ленни я не нашел.


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено webbeans , 05-Июн-09 14:46 
Кто мешает поместить скрипт в /etc/network/if-pre-up.d/ следующего содержания:

iptables-restore < ${YOUR_RULES_FILE}


или вообще юзать что-то наподобие shorewall?


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено аноним , 05-Июн-09 15:00 
>Кто мешает поместить скрипт в /etc/network/if-pre-up.d/ следующего содержания:
>iptables-restore < ${YOUR_RULES_FILE}

Мне удобнее хороший init-скрипт. Гораздо удобнее. Так как он может выгружать/загружать модули, менять параметры sysctl, сохранять конфигурацию в любой момент (invoke-rc.d iptables save), закрывать (iptables panic) и открывать фаервол (iptables stop) по желанию. И все это через один простой интерфейс.

В /etc/network/if-pre-up.d/ разумно поместить разве что
invoke-rc.d iptables start

>или вообще юзать что-то наподобие shorewall?

Не люблю когда машина умничает :)


"Корректировка^Wофф про инит скрипт"
Отправлено Andrey Mitrofanov , 05-Июн-09 16:36 
>Кто мешает поместить скрипт в

Некоторым пользователям оно же ж надо http:/openforum/vsluhforumID3/42161.html#9 так, как надо _им_, и ни ментейнеры пакета в дисрибутиве, ни апстрим не могут этому помешать. Даже несмотря на то, что всё вокруг меняется, сменилось три-четыре релиза Debian -- но _надо_ именно http:/openforum/vsluhforumID1/79587.html#8 так, как оно надо и как оно было.

И кто мы такие в конце концов, чтобы мешать счастью http:/openforum/vsluhforumID3/42161.html#6 людей?

:-]

Некоторые, правда уже "не ждут ничего хорошего от людей"... :-/ А "счастье"-то где рядом. Ссылка выше.

2PavelR: Выложил? Где? В дистрибутиве - когда? [Поддерживать там - будет кто?..]  Пользователи по несчастью -- страдают.


"Корректировка^Wофф про инит скрипт"
Отправлено аноним , 05-Июн-09 16:55 
Меж прочим человек правильно мыслит...

Насчет проблем с тем что было в дебиане раньше - не знаю, не видел.
Однако ж портировал аналогичный скрипт с RHEL, потестировал и остался доволен.
Если еще кому-то, кроме меня, это нужно - могу выложить в виде пакетов.

Аналогичным образом поступил с arptables. Только зря наверное. В отличие от RHEL'а в дебиане arptables кривой и страшный как моя смерть (что наглядно иллюстрируется сией заметкой).

Насчет "не ждать от людей хорошего" - я уже неоднократно видел последствия употребления сильнодействующих веществ мейнтейнерами ключевых пакетов дебиана. Думаю, если запостить этот баг на их багтрекер, в лучшем случае они его проигнорируют, в худшем - грохнут весь пакет. И пофигу, что он кому-то нужен.


"Корректировка^Wофф про инит скрипт"
Отправлено PavelR , 05-Июн-09 17:12 
Чож ждать, вот оно, забирайте, портированный редхат "service iptables":

http://debian.nikolas.ru/debian/


"Корректировка^Wофф про инит скрипт"
Отправлено аноним , 05-Июн-09 17:18 
>Чож ждать, вот оно, забирайте, портированный редхат "service iptables":
>
>http://debian.nikolas.ru/debian/

Спс. На досуге посмотрю.


"Корректировка^Wофф про инит скрипт"
Отправлено аноним , 06-Июн-09 17:23 
>Чож ждать, вот оно, забирайте, портированный редхат "service iptables":
>http://debian.nikolas.ru/debian/

Посмотрел.
Есть маленькое замечание, можно сказать стилистическое.

В postinst скрипте вы суете ссылку на инит-скрипт с rcS.d с приоритетом 38. Однако в том же rcS.d инит-скрипт networking, поднимающий сеть, числится с приоритетом 14. Что в принципе может создать очень неприятный момент при загрузке, когда интерфейсы подняты, а фаервол еще не сконфигурирован. Мелочь, конечно... Но большая проблема обычно как раз и складывается из мелких.

Совет: забить на update-rc.d, и сунуть в /etc/network/if-pre-up.d/ скриптик вида
#!/bin/sh
/etc/init.d/iptables start

и не нужно будет никаких update-rc.d в postinst/postrm :)


"офф про письма в ООН"
Отправлено Andrey Mitrofanov , 05-Июн-09 17:13 
>Насчет "не ждать от людей хорошего" - я уже неоднократно видел последствия
>употребления сильнодействующих веществ мейнтейнерами ключевых пакетов дебиана.

И продолжаете пользоваться. "Мыши плакали, кололись, но продолжали есть кактус" или плюём в колодец?

>запостить этот баг на их багтрекер, в лучшем случае они его

Вы полагаете, что OpenNET место получше для "выкладывания" пакетов-патчиков для?


"офф про письма в ООН"
Отправлено аноним , 05-Июн-09 17:17 
>И продолжаете пользоваться. "Мыши плакали, кололись, но продолжали есть кактус" или плюём в колодец?

Ну, в дебиане ведь и много хорошего есть :)

>Вы полагаете, что OpenNET место получше для "выкладывания" пакетов-патчиков для?

Это не патч. Это debian way. Да, местами он проходит через задницу. Ну то тут поделать, если мейнтейнер - ...?


"офф: уже начинайте извиняться"
Отправлено Andrey Mitrofanov , 05-Июн-09 17:32 
>или плюём в колодец?
>Ну, в дебиане ведь и много хорошего есть :)

Значит, в колодец... :(

>Это debian way. Да, местами он проходит через задницу.

Гм, извините, я "пешком постою": это _Ваш_ way.

>Ну то тут поделать, если мейнтейнер - ...?

Может, не плевать в колодец -- глядишь, и он [когда-нибудь] перестанет плевать в ответ.


"офф: уже начинайте извиняться"
Отправлено аноним , 05-Июн-09 17:45 
>Гм, извините, я "пешком постою": это _Ваш_ way.

Единственно верный путь не подскажете?

>>Ну то тут поделать, если мейнтейнер - ...?
>
>Может, не плевать в колодец -- глядишь, и он [когда-нибудь] перестанет плевать
>в ответ.

Не суди по словам, суди по делам. Учтя результаты деятельности мейнтейнера iptables, я к нему даже соваться не стал. Не буди зверя... А то еще чего-нибудь нужное грохнет.


"офф: уже начинайте извиняться"
Отправлено pavlinux , 06-Июн-09 01:59 
Вот пока вы тут  с 09:57 до 17:45 флудили, какой Дебиан ху...ый,  
можно было столько скриптов написать, на полноценный брандмауэр хватило бы!!! :)



"офф: уже начинайте извиняться"
Отправлено аноним , 06-Июн-09 15:00 
Ога. Тонкое наблюдение.

Вот представь: каждому десятому (или даже двадцатому) пользователю дебиана нужен инит-скрипт для iptables. И он его пишет. Итого: несколько тысяч инит-скриптов. Может лучше сразу идти пустыню подметать? Или хотя бы фонтаны стричь?


"офф: уже начинайте извиняться"
Отправлено pavlinux , 07-Июн-09 04:36 
>Ога. Тонкое наблюдение.
>
>Вот представь: каждому десятому (или даже двадцатому) пользователю дебиана нужен инит-скрипт для
>iptables. И он его пишет. Итого: несколько тысяч инит-скриптов. Может лучше
>сразу идти пустыню подметать? Или хотя бы фонтаны стричь?

А зачем Вам Linux?


"офф: уже начинайте извиняться"
Отправлено аноним , 07-Июн-09 15:09 
>А зачем Вам Linux?

Работать в нем.

Нет, работать в моем понимании - это не стричь фонтаны.


"офф: уже начинайте извиняться"
Отправлено pavlinux , 07-Июн-09 16:09 
>>А зачем Вам Linux?
>
>Работать в нем.

В нём нельзя работать, он работает за Вас, только надо один раз настроить.


"пирожки"
Отправлено Аноним , 07-Июн-09 16:13 
>В нём нельзя работать, он работает за Вас, только надо один раз
>настроить.

Ага, и сам пирожки ест.


"офф: уже начинайте извиняться"
Отправлено аноним , 07-Июн-09 20:25 
>В нём нельзя работать

Неужели?

>он работает за Вас, только надо один раз настроить.

А как бы его так настроить, чтобы он сам писал инит-скрипты, грохнутые неадекватными мейнтейнерами?


"офф: уже начинайте извиняться"
Отправлено pavlinux , 09-Июн-09 16:09 
>>В нём нельзя работать
>
>Неужели?
>
>>он работает за Вас, только надо один раз настроить.
>
>А как бы его так настроить, чтобы он сам писал инит-скрипты, грохнутые
>неадекватными мейнтейнерами?

Нейронная сеть и искусственный интеллект вам в помощь... :)


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено Одмин , 06-Июн-09 19:35 
> Если я им все подобные баги начну постить, у них сервер ляжет :)

ну так сделай это. Вот потому что все забивают на написание багов мы имеем то что имеем. Я никогда не стеснялся багрепорты писать. Даже если не уверен что это баг всё равно пишу, разрабы разберуться что к чему.


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено аноним , 06-Июн-09 21:44 
Делай-не делай - толку никакого. Мейнтейнер arptables впал в нирвану в две тыщи лохматом году. С тех пор он ни на что не реагирует и ничем не занимается.

Это конечно лучше, чем в случае с iptables - там мейнтейнер просто-таки профессиональный вредитель, принципиально уничтожающий все хорошее. Один libipt_psd.so чего стоит :(


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено User294 , 07-Июн-09 02:07 
> Если я им все подобные баги начну постить, у них сервер ляжет :)

Ничего страшного, поднимут и сделают выводы :).Подходов есть два - да, можно мыкаться с тем что есть, молча в тряпочку, а о том что у вас проблемы никто кроме вас возможно и не узнает.А можно багов понаписать.Что явно увеличивает шансы на то что проблема бузет изучена причастными и даже возможно, починена.

Если вам нравится самопальное костылестроение - вам первый подход.А если нужна нормальная система которая работает без подстановки левых костылей и подпорочек, тогда второй.


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено аноним , 07-Июн-09 15:11 
>Ничего страшного, поднимут и сделают выводы :).Подходов есть два - да, можно
>мыкаться с тем что есть, молча в тряпочку, а о том
>что у вас проблемы никто кроме вас возможно и не узнает.А
>можно багов понаписать.Что явно увеличивает шансы на то что проблема бузет
>изучена причастными и даже возможно, починена.
>
>Если вам нравится самопальное костылестроение - вам первый подход.А если нужна нормальная
>система которая работает без подстановки левых костылей и подпорочек, тогда второй.

Я уже четко и внятно объяснил, что мейнтейнер arptables в нирване. И вообще официальное сообщество положило на этот пакет большой-большой прибор.


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено debianuser , 10-Июн-09 23:56 
Так станьте сами мейнтрейнером

"Корректировка вывода arptables-save в Debian Lenny"
Отправлено Аноним , 07-Июн-09 02:40 
> Если я им все подобные баги начну постить, у них сервер ляжет :)

не ляжет, я проверял.

> Кроме того, не жду ничего хорошего от людей, которые грохнули init-скрипт для iptables и гордо считают это фичей.

видите ли в чём дело... в хорошем дистрибутиве все части системы должны быть совместимы между собой. если есть скрипт загружающий конфигурацию файрвола, то он должен быть совместим с hotplug, hal и udev. добится этой совместимости простым init скриптом который выполняется один раз при старте системы и никак не реагирует на подключение/отключение в процессе работы сетевых интерфейсов - невозможно. поэтому то что этот несовместимый с другими частями ОС скрипт грохнули - это правильно.


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено аноним , 07-Июн-09 15:20 
>не ляжет, я проверял.

Знаете ли вы столько багов дебиана, сколько знаю я? Вряд ли. Так что проверить не могли :)

>видите ли в чём дело... в хорошем дистрибутиве все части системы должны
>быть совместимы между собой. если есть скрипт загружающий конфигурацию файрвола, то
>он должен быть совместим с hotplug, hal и udev. добится этой
>совместимости простым init скриптом который выполняется один раз при старте системы
>и никак не реагирует на подключение/отключение в процессе работы сетевых интерфейсов
>- невозможно. поэтому то что этот несовместимый с другими частями ОС
>скрипт грохнули - это правильно.

Простите, но ваши аргументы - детский лепет.

Во-первых, сейчас в линуксе нет метода конфигурирования фаервола, учитывающего "hotplug, hal и udev". Сломать все и ничего не построить - пять баллов.
Во-вторых, iptables глубоко наплевать, существует или нет интерфейс, описанный в его правилах. Нет интерфейса - значит правило для него просто не будет срабатывать.
В-третьих, динамическое переконфигурирование при подъеме/опускании отдельных интерфейсов можно делать через pre-up и post-down в /etc/network/interfaces, но необходимости загружать базовую конфигурацию это ни разу не отменяет.


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено Аноним , 05-Июн-09 10:39 
Почему arp-то?

"Корректировка вывода arptables-save в Debian Lenny"
Отправлено аноним , 05-Июн-09 10:58 
>Почему arp-то?

Помимо IP-фаервола iptables, в линухе есть ARP-фаервол arptables.
И с ним тоже иногда надо работать :)


"Корректировка вывода arptables-save в Debian Lenny"
Отправлено daevy , 05-Июн-09 13:09 
кто не вкурсе, еще есть ebtables :-)