Исходная задача: нужно сделать 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 Прилагаемый патч к /etc/init.d/iptables позволит обойтись внесением в /etc/modules.conf строк above ip_tables ip_conntrack_ftp ip_nat_ftp [you name it] Там же (в /etc/modules.conf) место и опциям загружаемых модулей. --- ---
Если задаться целью хранить список модулей с опциями в отдельном файле, то лучше не подмешивать модули в /etc/sysconfig/iptables, т.к. в него падает результат работы iptables-save, который после этого обязан читаться iptables-restore. Некоторое время назад я реализовал хранение списка модулей (без опций - в них не было нужды) для ipchains в файле /etc/sysconfig/ipchains.modules, правда прилагаемый патч делался для ipchains из asp7.2, но главное - идея.
In new iptables