ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
* [sisyphus] [feature request] загрузка нужных модулей iptables
@ 2002-11-14 12:58 Андрей Булава
  2002-11-14 13:16 ` Konstantin Volckov
  2002-11-15 10:26 ` [sisyphus] " Michael Shigorin
  0 siblings, 2 replies; 8+ messages in thread
From: Андрей Булава @ 2002-11-14 12:58 UTC (permalink / raw)
  To: ALT Sisyphus mail list; +Cc: Konstantin Volckov

Hi!

Пишу в надежде на поддержку со стороны сообщества следующего feature
request

Исходная задача: нужно сделать SNAT для обращений в мир по ftp из
локальной сети.

После настройки пытаемся увековечить результат с помощью service iptables
save и получаем в /etc/sysconfig/iptables строчку вида

-A POSTROUTING -s GR.EY.IP.AD -p tcp -m tcp --dport 20:21 -j SNAT
--to-source RE.AL.IP.AD

Однако для нормальной работы этой цепочки в процессе настройки было
необходимо выполнить команды

modprobe ip_conntrack_ftp
modprobe ip_nat_ftp

каковые нужно выполнять при старте системы.

Вопрос: как сделать выполнение при старте системы с минимальными
затратами сил?

Наиболее часто используемый вариант: поганить скрипт /etc/init.d/iptables,
благо в Сети примеров завались. Это _плохие_ примеры, потому что

# ls -l /lib/modules/2.4.18-alt8-up/kernel/net/ipv4/netfilter/|grep
conntrack_|wc -l
     9

И что, для каждого из 9-ти вариантов лезть в инитскрипт?

Предлагаемый ниже патч к /etc/init.d/iptables позволит обойтись внесением
в /etc/modules.conf строк

above ip_tables ip_conntrack_ftp ip_nat_ftp [you name it]

Там же (в /etc/modules.conf) место и опциям загружаемых модулей.

Есть аргументированные возражения?

--- iptables    Tue Apr 16 17:25:11 2002
+++ iptables.NEW        Thu Nov 14 14:10:23 2002
@@ -45,6 +45,7 @@
            #  pre-existing rules.
            action "Flushing all current rules and user defined chains:"
iptables -F
            action "Clearing all current rules and user defined chains:"
iptables -X
+           action "Loading necessary netfilter modules:" /sbin/modprobe
ip_tables
            iptables -Z
            echo $"Applying iptables firewall rules: "
                grep -v "^[[:space:]]*#" $IPTABLES_CONFIG | grep -v
'^[[:space:]]*$' | /sbin/iptables-restore && \

--
С наилучшими пожеланиями,
 Андрей Булава [ AB1002-UANIC ]
Информационный центр ДонНТУ



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [sisyphus] [feature request] загрузка нужных модулей iptables
  2002-11-14 12:58 [sisyphus] [feature request] загрузка нужных модулей iptables Андрей Булава
@ 2002-11-14 13:16 ` Konstantin Volckov
  2002-11-14 16:38   ` Андрей Булава
  2002-11-15 10:26 ` [sisyphus] " Michael Shigorin
  1 sibling, 1 reply; 8+ messages in thread
From: Konstantin Volckov @ 2002-11-14 13:16 UTC (permalink / raw)
  To: sisyphus

On Thu, 14 Nov 2002 14:58:49 +0200 (EET)
Андрей Булава <raven@dgtu.donetsk.ua> wrote:

> Hi!

Hi!

> Пишу в надежде на поддержку со стороны сообщества следующего feature
> request
> 
> Исходная задача: нужно сделать SNAT для обращений в мир по ftp из
> локальной сети.
> 
> После настройки пытаемся увековечить результат с помощью service
> iptables save и получаем в /etc/sysconfig/iptables строчку вида
> 
> -A POSTROUTING -s GR.EY.IP.AD -p tcp -m tcp --dport 20:21 -j SNAT
> --to-source RE.AL.IP.AD
> 
> Однако для нормальной работы этой цепочки в процессе настройки было
> необходимо выполнить команды
> 
> modprobe ip_conntrack_ftp
> modprobe ip_nat_ftp
> 
> каковые нужно выполнять при старте системы.
> 
> Вопрос: как сделать выполнение при старте системы с минимальными
> затратами сил?
> 
> Наиболее часто используемый вариант: поганить скрипт
> /etc/init.d/iptables, благо в Сети примеров завались. Это _плохие_
> примеры, потому что
> 
> # ls -l /lib/modules/2.4.18-alt8-up/kernel/net/ipv4/netfilter/|grep
> conntrack_|wc -l
>      9
> 
> И что, для каждого из 9-ти вариантов лезть в инитскрипт?
> 
> Предлагаемый ниже патч к /etc/init.d/iptables позволит обойтись
> внесением в /etc/modules.conf строк
> 
> above ip_tables ip_conntrack_ftp ip_nat_ftp [you name it]
> 
> Там же (в /etc/modules.conf) место и опциям загружаемых модулей.
> 
> Есть аргументированные возражения?
> 
> --- iptables    Tue Apr 16 17:25:11 2002
> +++ iptables.NEW        Thu Nov 14 14:10:23 2002
> @@ -45,6 +45,7 @@
>             #  pre-existing rules.
>             action "Flushing all current rules and user defined chains:"
> iptables -F
>             action "Clearing all current rules and user defined chains:"
> iptables -X
> +           action "Loading necessary netfilter modules:" /sbin/modprobe
> ip_tables
>             iptables -Z
>             echo $"Applying iptables firewall rules: "
>                 grep -v "^[[:space:]]*#" $IPTABLES_CONFIG | grep -v
> '^[[:space:]]*$' | /sbin/iptables-restore && \


Можно и так, но, IMHO, лучше список дополнительный модулей хранить в
отдельном файле, например, /etc/sysconfig/iptables. Не могли бы Вы
добавить этот feature request в BTS?

> --
> С наилучшими пожеланиями,
>  Андрей Булава [ AB1002-UANIC ]
> Информационный центр ДонНТУ


-- 
Успехов,
Konstantin


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [sisyphus] [feature request] загрузка нужных модулей iptables
  2002-11-14 13:16 ` Konstantin Volckov
@ 2002-11-14 16:38   ` Андрей Булава
  2002-11-15  7:34     ` Владимир
  0 siblings, 1 reply; 8+ messages in thread
From: Андрей Булава @ 2002-11-14 16:38 UTC (permalink / raw)
  To: ALT Sisyphus mail list

On Thu, 14 Nov 2002, Konstantin Volckov wrote:

<skip>

> > Предлагаемый ниже патч к /etc/init.d/iptables позволит обойтись
> > внесением в /etc/modules.conf строк
> >
> > above ip_tables ip_conntrack_ftp ip_nat_ftp [you name it]
> >
> > Там же (в /etc/modules.conf) место и опциям загружаемых модулей.

<skip>

>
>
> Можно и так, но, IMHO, лучше список дополнительный модулей хранить в
> отдельном файле, например, /etc/sysconfig/iptables. Не могли бы Вы
> добавить этот feature request в BTS?

Готово. http://bugs.altlinux.ru/view_bug_page.php?f_id=0001559 :-)

Там же в bugnotes мои соображения по поводу размещения списка загружаемых
модулей в /etc/sysconfig/iptables.modules

--
С наилучшими пожеланиями,
 Андрей Булава [ AB1002-UANIC ]
Информационный центр ДонНТУ



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [sisyphus] [feature request] загрузка нужных модулей iptables
  2002-11-14 16:38   ` Андрей Булава
@ 2002-11-15  7:34     ` Владимир
  0 siblings, 0 replies; 8+ messages in thread
From: Владимир @ 2002-11-15  7:34 UTC (permalink / raw)
  To: sisyphus

Привет всем.

На это несоответствие я давно обратил внимание.
Но дело еще в том, что простым выносом списка требуемых для
загрузки модулей не обойтись.
Если проанализировать работу startup сценария iptables по
модулям есть большое несоответствие реалиям. А именно.
Команда service iptables restart де факто выполняет reload.
Иначе, стек загруженный модулей не перегружается и все
ESTABLISHED соединения таковыми остаются.
Для "кошарности" было бы необходимо при restart
1. выгрузить правила
2. проанализировать список дополнительных загруженных модулей
по маске ip_conntrack_* (или список таковых в конфигурационном файле)
3. выгрузить дополнительные модули
4. выгрузить модуль ip_conntrack
5. только после этого вновь загрузить правила.
Пункты 1-4 (п.1 с политикой DROP) необхоимы и для
service iptables panic

Это не единственное несоответствие в startup сценарии iptables.
Может кто уже замечал, он "криво" работает, если кроме
таблицы filter используются nat и-или mangle
У себя я внес исправления, протестировал и мог бы переслать свой "рабочий"
сценарий тому, кто взялся бы его доработать "под модули", restart и panic и
сделать общим достоянием. Доделывать самому сейчас времени нет.

>>>Предлагаемый ниже патч к /etc/init.d/iptables позволит обойтись
>>>внесением в /etc/modules.conf строк
>>>
>>>above ip_tables ip_conntrack_ftp ip_nat_ftp [you name it]
>>>
>>>Там же (в /etc/modules.conf) место и опциям загружаемых модулей.
>>>      
>>>
>
><skip>
>
>  
>
>>Можно и так, но, IMHO, лучше список дополнительный модулей хранить в
>>отдельном файле, например, /etc/sysconfig/iptables. Не могли бы Вы
>>добавить этот feature request в BTS?
>>    
>>
>
>Готово. http://bugs.altlinux.ru/view_bug_page.php?f_id=0001559 :-)
>
>Там же в bugnotes мои соображения по поводу размещения списка загружаемых
>модулей в /etc/sysconfig/iptables.modules
>
>  
>
-- 
Best regards
Vladimir





^ permalink raw reply	[flat|nested] 8+ messages in thread

* [sisyphus] Re: [feature request] загрузка нужных модулей iptables
  2002-11-14 12:58 [sisyphus] [feature request] загрузка нужных модулей iptables Андрей Булава
  2002-11-14 13:16 ` Konstantin Volckov
@ 2002-11-15 10:26 ` Michael Shigorin
  2002-11-15 15:38   ` Dmitry Lebkov
  1 sibling, 1 reply; 8+ messages in thread
From: Michael Shigorin @ 2002-11-15 10:26 UTC (permalink / raw)
  To: ALT Sisyphus mail list

[-- Attachment #1: Type: text/plain, Size: 331 bytes --]

On Thu, Nov 14, 2002 at 02:58:49PM +0200, Андрей Булава wrote:
> modprobe ip_conntrack_ftp
> modprobe ip_nat_ftp
> каковые нужно выполнять при старте системы.

echo "ip_conntrack_ftp
ip_nat_ftp" >> /etc/modules

пойдет?

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/

[-- Attachment #2: Type: application/pgp-signature, Size: 187 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [sisyphus] Re: [feature request] загрузка нужных модулей iptables
  2002-11-15 10:26 ` [sisyphus] " Michael Shigorin
@ 2002-11-15 15:38   ` Dmitry Lebkov
  2002-11-18 14:58     ` Андрей Булава
  0 siblings, 1 reply; 8+ messages in thread
From: Dmitry Lebkov @ 2002-11-15 15:38 UTC (permalink / raw)
  To: sisyphus

On Fri, 15 Nov 2002 12:26:57 +0200
Michael Shigorin <mike@osdn.org.ua> wrote:

> On Thu, Nov 14, 2002 at 02:58:49PM +0200, Андрей Булава wrote:
> > modprobe ip_conntrack_ftp
> > modprobe ip_nat_ftp
> > каковые нужно выполнять при старте системы.
> 
> echo "ip_conntrack_ftp
> ip_nat_ftp" >> /etc/modules
> 
> пойдет?

Шаман! Мысли читаешь! ;)) Только что сам хотел
это предложить ... В таком варианте вполне штатно
все отрабатывается.

WBR, Dmitry Lebkov


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [sisyphus] Re: [feature request] загрузка нужных модулей iptables
  2002-11-15 15:38   ` Dmitry Lebkov
@ 2002-11-18 14:58     ` Андрей Булава
  2002-11-18 23:17       ` Dmitry Lebkov
  0 siblings, 1 reply; 8+ messages in thread
From: Андрей Булава @ 2002-11-18 14:58 UTC (permalink / raw)
  To: ALT Sisyphus mail list

On Sat, 16 Nov 2002, Dmitry Lebkov wrote:

> On Fri, 15 Nov 2002 12:26:57 +0200
> Michael Shigorin <mike@osdn.org.ua> wrote:
>
> > On Thu, Nov 14, 2002 at 02:58:49PM +0200, Андрей Булава wrote:
> > > modprobe ip_conntrack_ftp
> > > modprobe ip_nat_ftp
> > > каковые нужно выполнять при старте системы.
> >
> > echo "ip_conntrack_ftp
> > ip_nat_ftp" >> /etc/modules
> >
> > пойдет?
>
> Шаман! Мысли читаешь! ;)) Только что сам хотел
> это предложить ... В таком варианте вполне штатно
> все отрабатывается.

Вопрос: до сего дня мне не было нужды использовать ip_conntrack_xxx, а
сегодня выяснилось, что нужно. Я делаю modprobe ip_conntrack_xxx, вношу
его в /etc/modules и спокойно иду спать? Как бы не так! Проверить, что всё
действительно пройдёт гладко при следующей перезагрузке, можно только
перезагрузкой.

Мне больше по душе убедиться, что работает service iptables restart на
соседней машинке, где в нормальном положении firewall'а нет, следовательно
модули iptables можно _выгрузить_ для получения точной картины, не
искажённой текущим набором модулей. Потому идея /etc/modules мне в голову
и не пришла ;-) Ждать до ухода последнего пользователя для проведения
модельных испытаний у меня возможности нету. И лишних машинок, которые
можно перезагрузить без предупреждения, - тоже ;-(

--
С наилучшими пожеланиями,
 Андрей Булава [ AB1002-UANIC ]
Информационный центр ДонНТУ



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [sisyphus] Re: [feature request] загрузка нужных модулей iptables
  2002-11-18 14:58     ` Андрей Булава
@ 2002-11-18 23:17       ` Dmitry Lebkov
  0 siblings, 0 replies; 8+ messages in thread
From: Dmitry Lebkov @ 2002-11-18 23:17 UTC (permalink / raw)
  To: sisyphus

On Mon, 18 Nov 2002 16:58:54 +0200 (EET)
Андрей Булава <raven@dgtu.donetsk.ua> wrote:

> On Sat, 16 Nov 2002, Dmitry Lebkov wrote:
> 
> > On Fri, 15 Nov 2002 12:26:57 +0200
> > Michael Shigorin <mike@osdn.org.ua> wrote:
> >
> > > On Thu, Nov 14, 2002 at 02:58:49PM +0200, Андрей Булава wrote:
> > > > modprobe ip_conntrack_ftp
> > > > modprobe ip_nat_ftp
> > > > каковые нужно выполнять при старте системы.
> > >
> > > echo "ip_conntrack_ftp
> > > ip_nat_ftp" >> /etc/modules
> > >
> > > пойдет?
> >
> > Шаман! Мысли читаешь! ;)) Только что сам хотел
> > это предложить ... В таком варианте вполне штатно
> > все отрабатывается.
> 
> Вопрос: до сего дня мне не было нужды использовать ip_conntrack_xxx, а
> сегодня выяснилось, что нужно. Я делаю modprobe ip_conntrack_xxx, вношу
> его в /etc/modules и спокойно иду спать? Как бы не так! Проверить, что всё
> действительно пройдёт гладко при следующей перезагрузке, можно только
> перезагрузкой.
... или проанализировать стартовые скрипты ... ;)

См. /etc/rc.d/scripts/load_modules и /etc/rc.d/rc.sysinit на предмет вызова
этого скрипта.

> Мне больше по душе убедиться, что работает service iptables restart на
> соседней машинке, где в нормальном положении firewall'а нет, следовательно
> модули iptables можно _выгрузить_ для получения точной картины, не
> искажённой текущим набором модулей. Потому идея /etc/modules мне в голову
> и не пришла ;-) Ждать до ухода последнего пользователя для проведения
> модельных испытаний у меня возможности нету. И лишних машинок, которые
> можно перезагрузить без предупреждения, - тоже ;-(

Из опыта повседневной эксплуатации - схема с /etc/modules работает ;)

WBR, Dmitry Lebkov


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2002-11-18 23:17 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-11-14 12:58 [sisyphus] [feature request] загрузка нужных модулей iptables Андрей Булава
2002-11-14 13:16 ` Konstantin Volckov
2002-11-14 16:38   ` Андрей Булава
2002-11-15  7:34     ` Владимир
2002-11-15 10:26 ` [sisyphus] " Michael Shigorin
2002-11-15 15:38   ` Dmitry Lebkov
2002-11-18 14:58     ` Андрей Булава
2002-11-18 23:17       ` Dmitry Lebkov

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sisyphus


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git