Author Topic: 6 level выносит модули iptables  (Read 3757 times)

0 Members and 1 Guest are viewing this topic.

Offline Bill Tomson

  • Jr. Member
  • **
  • Posts: 75
  • Karma: +0/-0
6 level выносит модули iptables
« on: April 08, 2008, 19:54:19 »
Приветствую, Господа!
Позвольте молодому начинающему линуксоиду немного сколлектировать знаний у продвинутых.
Ситуевина:

Что хотим получить:
1.   NAT из двух машин на Винде и сервак на Linux FC. На серваке vsftpd, httpd.
2.   NAT’овские машины проходят FORWARD только по 80,21,22,1723,53 портам. Остальное – низя. Знаю, мало, но пока пусть обламываются – буду открывать по необходимости.
3.   На серваке порты в INPUT 21,22,80,1723. Все остальное DROP.
4.   Ну для пиналок icmp 8, 11 проход разрешить и серваку и NAT’у.
5.   На виндузятниках VPN нужен иногда рабочий для внехи.

Что имеем:
1.   Один (ну зато реальный!) IP смотрящий в славный город Томск.
2.   2 машины на WindowsXP
3.   Сервер Linux FC8
4.   Энтузиазм  

Что хочу спросить:
1. Проблема с Unloading iptables modules       [FAILED]
2. Куда лучше заливать скрипт с правилами iptables? Логично ли юзать /etc/init.d/iptables и раздел старта демона iptables start? В какое конкретно место лучше заткнуть описание правил?
2. Хочу, чтобы знающие проверили мои iptables rules и подсказали, если что не так.

Ход Мыслей:
Написал скрипт для iptables. Кинул в /root/firewall. Сначала сделал без модулей. Просто запустил раз, потом service iptables save и все. Поработали 2 дня. Естесно не попер пассивный ftp с nat`овских машин.
Ладно. Сделал поддержку модулей. Пришлось в стартовый скрипт iptables залить – чтобы модули работали. Ладно, модули теперь загружаются.
Но когда идем на перезагрузку или рестартуем iptables, то получаем

Unloading iptables modules   [FAILED]

С гугла понял, что теоретически все просто объясняется – ну типа некоторые модули в работе сейчас, а тут блин вы их пытаетесь остановить – нехорошо – вот и пишет, что failed – не может выгрузить. Вроде не страшно.
Можно даже посмотреть какие модули отказались подчиниться 6 левлу. Ну блин мне-то  от этого не легче - красный FAILED.
Залазил в /etc/init.d/iptables там смотрел IPTABLES_MODULES_UNLOAD – было YES, поставил NO и все также. Только теперь рестарт iptables быстрее, а факинговый FAILED остается.
Добрые и Знающие Господа РУТЫ! Помогите!
Прикладываю скрипт iptables – знаю, простой, но мне сейчас именно так и нужно:

Code: [Select]
#!/bin/bash

INET_IP=”111.111.111.111”
#modules
/sbin/depmod -a
/sbin/modprobe ip_conntrack
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_nat
/sbin/modprobe ipt_state
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp

#deleting rules
iptables -F
iptables -X
iptables -t nat -F

#default policies
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

#loopback
iptables -A INPUT -i lo -j ACCEPT

#input firewall rules
iptables -A INPUT -p TCP --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j DROP
iptables -A INPUT -p ALL -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT
iptables -A INPUT -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT
iptables -A INPUT -p TCP -s 0/0 -m multiport --dport 21,22,80,1723 -j ACCEPT
iptables -A INPUT -p UDP -i eth1 --dport 53 -j ACCEPT

#forwarding
iptables -A FORWARD -p ALL -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -p ICMP --icmp-type 8 -j ACCEPT
iptables -A FORWARD -p ICMP --icmp-type 11 -j ACCEPT
iptables -A FORWARD -p TCP -m multiport --dport 21,22,80,1723 -j ACCEPT
iptables -A FORWARD -p UDP --dport 53 -j ACCEPT
iptables -A FORWARD -p GRE -j ACCEPT

#NAT
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source $INET_IP

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

Offline demiurg

  • Hero Member
  • *****
  • Posts: 1014
  • Karma: +0/-0
    • http://larin.tomsk.ru
6 level выносит модули iptables
« Reply #1 on: April 08, 2008, 22:28:24 »
Quote from: Bill Tomson
Приветствую, Господа!
Позвольте молодому начинающему линуксоиду немного сколлектировать знаний у продвинутых.
Ситуевина:

Что хотим получить:
1.   NAT из двух машин на Винде и сервак на Linux FC. На серваке vsftpd, httpd.
2.   NAT’овские машины проходят FORWARD только по 80,21,22,1723,53 портам. Остальное – низя. Знаю, мало, но пока пусть обламываются – буду открывать по необходимости.
3.   На серваке порты в INPUT 21,22,80,1723. Все остальное DROP.
4.   Ну для пиналок icmp 8, 11 проход разрешить и серваку и NAT’у.
5.   На виндузятниках VPN нужен иногда рабочий для внехи.

Что имеем:
1.   Один (ну зато реальный!) IP смотрящий в славный город Томск.
2.   2 машины на WindowsXP
3.   Сервер Linux FC8
4.   Энтузиазм  

Что хочу спросить:
1. Проблема с Unloading iptables modules       [FAILED]
2. Куда лучше заливать скрипт с правилами iptables? Логично ли юзать /etc/init.d/iptables и раздел старта демона iptables start? В какое конкретно место лучше заткнуть описание правил?
2. Хочу, чтобы знающие проверили мои iptables rules и подсказали, если что не так.

Посмотрите, пожалуйста, что можно подпраить и как бороться с выгрузкой модулей.
Вообще-то в FC предполагается что правила сохраняются в /etc/sysconfig/iptables вызовом /etc/init.d/iptables save.
с помощью /etc/sysconfig/iptables-config осуществляется управление поведением и загрузка модулей.
IPTABLES_MODULES="" в указанном файле
В Вашем случае /sbin/modprobe ip_conntrack
IPTABLES_MODULES="ip_conntrack_ftp ip_nat_ftp" остальные модули вроде бы должны загружаться автоматом.
« Last Edit: April 08, 2008, 22:33:06 by demiurg »

Offline Bill Tomson

  • Jr. Member
  • **
  • Posts: 75
  • Karma: +0/-0
6 level выносит модули iptables
« Reply #2 on: April 09, 2008, 09:14:02 »
Quote from: demiurg
IPTABLES_MODULES="ip_conntrack_ftp ip_nat_ftp" остальные модули вроде бы должны загружаться автоматом.
Спасибо огромное - стало немного яснее! Управление модулями есть там, где Вы сказали и еще в файле /etc/init.d/iptables
Все круто работает.
Однако проблема с Unloading iptables modules   [FAILED ] осталась...
Может это и не проблема...
« Last Edit: April 09, 2008, 09:16:39 by Bill Tomson »

Offline demiurg

  • Hero Member
  • *****
  • Posts: 1014
  • Karma: +0/-0
    • http://larin.tomsk.ru
6 level выносит модули iptables
« Reply #3 on: April 09, 2008, 09:58:19 »
Quote from: Bill Tomson
Спасибо огромное - стало немного яснее! Управление модулями есть там, где Вы сказали и еще в файле /etc/init.d/iptables
Все круто работает.
Однако проблема с Unloading iptables modules   [FAILED ] осталась...
Может это и не проблема...
В /etc/init.d/iptables ничего править не надо, специально для особо одаренных написано
Code: [Select]
# Default firewall configuration:
IPTABLES_MODULES=""
IPTABLES_MODULES_UNLOAD="yes"
IPTABLES_SAVE_ON_STOP="no"
IPTABLES_SAVE_ON_RESTART="no"
IPTABLES_SAVE_COUNTER="no"
IPTABLES_STATUS_NUMERIC="yes"
# Load firewall configuration.
[ -f "$IPTABLES_CONFIG" ] && . "$IPTABLES_CONFIG"
И кроме того, как видно из приведенного кода, значения в /etc/sysconfig/iptables-config перекрывают указанные в /etc/init.d/iptables
А в IPTABLES_MODULES="" Вы чего написали? И главное в какой файл?

Offline Bill Tomson

  • Jr. Member
  • **
  • Posts: 75
  • Karma: +0/-0
6 level выносит модули iptables
« Reply #4 on: April 09, 2008, 10:08:20 »
Quote from: demiurg
А в IPTABLES_MODULES="" Вы чего написали? И главное в какой файл?
IPTABLES_MODULES="ip_conntrack_ftp ip_nat_ftp"
Как Вы сказали записал в /etc/sysconfig/iptables-config
Работает. Но вот все ли это? И почему ругаются модули при выгрузке (хотя и выгружаются нормально) непонятно...
« Last Edit: April 09, 2008, 10:12:22 by Bill Tomson »