Поделитесь скриптами инициализации iptables, кому не жалко.

Все о программировании под *nix
LRS
Заглянувший
Сообщения: 29
Зарегистрирован: 17 сен 2005, 22:45
Откуда: Минск

Поделитесь скриптами инициализации iptables, кому не жалко.

Сообщение LRS »

Народ, у кого есть скрипты для инициализации iptables? Те, что выполняются при запуске, подгружают модули, задают политики и правила. Я учу свою прогу их читать, и хотелось бы побольше разных примеров для прогона. Может, кто своими поделится?
(Прога представляет собой некий эмулятор iptables, для тестирования наборов правил и для изучения принципа работы. Проект был принят к участию в Google Summer of Code 2005. Альфа-версия есть на SourceForge: http://sourceforge.net/projects/iptview.)

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

У меня, в нескольк порезаном виде - вот так примерно...

Код: Выделить всё

modprobe ip_conntrack_ftp
modprobe ip_queue
iptables -P INPUT ACCEPT        #accept all to prevent ssh session fail
iptables -F INPUT               #Flush INPUT
iptables -N BANNEDIP            #Create chain for ip ban
iptables -F BANNEDIP            #Flush chain, if script run second time
fetchipac -S                    #Create ipac-ng counter chains
iptables -A INPUT -p tcp --dport 2222 -j ACCEPT                                 #ACCEPT all to SSHd anyway
iptables -A INPUT -j BANNEDIP                                                   #PASS to BANNEDIP filter chain
iptables -A INPUT -j QUEUE
#pass all to IDS first
iptables -A INPUT -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT         #ACCEPT all established tcp  sessions
iptables -A INPUT -p icmp -j ACCEPT                                             #ACCEPT all ICMP. TODO: Pass only routing messages
iptables -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT              #ACCEPT incoming connection s to HTTP
iptables -A INPUT -p udp --dport 53 -j ACCEPT                                   #ACCEPT all DNS udp. 
iptables -A INPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT              #ACCEPT incoming DNS tcp
iptables -A INPUT -p tcp --dport 20 -m state --state NEW -j ACCEPT                                   #ACCEPT incoming ftp-data
iptables -A INPUT -p tcp --dport 21 -m state --state NEW -j ACCEPT              #ACCEPT incoming ftp control
iptables -A INPUT -i lo -j ACCEPT                                               #ACCEPT all from local iface
iptables -A INPUT -p tcp --dport 25 -m state --state NEW -j ACCEPT              #ACCEPT SMTP
iptables -A INPUT -p tcp --dport 143 -m state --state NEW -j ACCEPT             #ACCEPT new IMAP
iptables -A INPUT -p tcp --dport 110 -m state --state NEW -j ACCEPT             #ACCEPT new POP3
iptables -P INPUT DROP          #DROP everything that is not allowed above


#Now, add banned ip's
iptables -F BANNEDIP            #FLUSHH BANNEDIP chains
cat ip_to_ban |sort -u |xargs -n1 -iX iptables -A BANNEDIP -s X -j DROP   #DROP each ip listed in  ip_to_ban
2All - скрипт не подлежит для использованию на сколь-нибудь серьезном сервере, т.к. с такими настройками первый же DDOS положит систему.
Опыт растет прямо пропорционально выведенному из строя оборудованию

LRS
Заглянувший
Сообщения: 29
Зарегистрирован: 17 сен 2005, 22:45
Откуда: Минск

Сообщение LRS »

Спасибо! :)

Ответить