[Sysadmins] настройка iptables в режиме все запрещено

Maks Re =?iso-8859-1?q?admaks_=CE=C1_gmail=2Ecom?=
Вт Апр 17 17:48:28 MSD 2007


вы правы.


скрипт хитрой тут...

#!/bin/sh
# This firewall script was generated by fwcreator V0.11.4

################################################################
IPTABLES="/sbin/iptables"
#########################################################################
# Политика обработки пакетов по умолчанию - запретить всё, что
# не разрешено
#########################################################################

$IPTABLES -t filter -F
$IPTABLES -t nat -F
$IPTABLES -t mangle -F

$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP

#-----------------------------------------------------------------------
# Разрешить трафик через интерфейс обратной петли

$IPTABLES -A INPUT -i lo+ -j ACCEPT
$IPTABLES -A OUTPUT -o lo+ -j ACCEPT

##########################################################################
ANYWHERE="0/0"
LOOPBACK="127.0.0.0/8"
CLASS_A="10.0.0.0/8"
CLASS_B="172.16.0.0/12"
CLASS_C="192.168.0.0/16"
CLASS_D_MULTICAST="224.0.0.0/4"
CLASS_E_RESERVED_NET="240.0.0.0/5"
BROADCAST_SRC="0.0.0.0"
BROADCAST_DEST="255.255.255.255"
ANYPORTS="0:65535"
PRIVPORTS="0:1023"
UNPRIVPORTS="1024:65535"
##################################################################

# Разрешить перенаправление пакетов
echo 1 > /proc/sys/net/ipv4/ip_forward

# Разрешить защиту TCP SYN cookie
echo 1 > /proc/sys/net/ipv4/tcp_syncookies

#-----------------------------------------------------------------
# Разрешить защиту от фальсификации IP-адресов
#-----------------------------------------------------------------

 # Включить проверку исходных адресов
for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
    echo 1 > $f
done

 # Запретить ICMP-перенаправление
for f in /proc/sys/net/ipv4/conf/*/accept_redirects; do
    echo 0 > $f
done

 # Запретить пакеты с маршрутом к источнику
for f in /proc/sys/net/ipv4/conf/*/accept_source_route; do
    echo 0 > $f
done

##################################################################
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
##################################################################


#----------------------------------------------------------------------
# ICMP

# (4) Source_Quench
#     Входящие запросы с требованием замедления передачи

$IPTABLES -t filter -A INPUT -i eth1 -p icmp --icmp-type 4 --src 0/0
--dst 123.45.67.89 -j ACCEPT

# (12) Parameter_Problem
#      Входящие сообщения об ошибках

$IPTABLES -t filter -A INPUT -i eth1 -p icmp --icmp-type 12 --src 0/0
--dst 123.45.67.89 -j ACCEPT

# (3) Dest_Unreachable, Service_Unavailable
#     Входящие данные, передаваемые при
#     определении размера; сообщения о том, что узел
#     или сервер недоступны; отклик traceroute

$IPTABLES -t filter -A INPUT -i eth1 -p icmp --icmp-type 3 --src 0/0
--dst 123.45.67.89 -j ACCEPT

# (11) Time_Exceeded
#      Входящие сообщения о тайм-ауте,
#      а также TTL-сообщение traceroute

$IPTABLES -t filter -A INPUT -i eth1 -p icmp --icmp-type 11 --src 0/0
--dst 123.45.67.89 -j ACCEPT


#----------------------------------------------------------------------
# ICMP

# (4) Source_Quench
#     Исходящие запросы с требованием замедления передачи

$IPTABLES -t filter -A OUTPUT -o eth1 -p icmp  --icmp-type 4 --src
123.45.67.89 --dst 0/0 -j ACCEPT

# (12) Parameter_Problem
#      Исходящие сообщения об ошибках

$IPTABLES -t filter -A OUTPUT -o eth1 -p icmp --icmp-type 12 --src
123.45.67.89 --dst 0/0  -j ACCEPT

# (3) Dest_Unreachable, Service_Unavailable
#     Исходящие данные, передаваемые при
#     определении размера; сообщения о том, что узел
#     или сервер недоступны; отклик traceroute

$IPTABLES -t filter -A OUTPUT -o eth1 -p icmp  --icmp-type 3 --src
123.45.67.89 --dst 0/0 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p icmp  --icmp-type
fragmentation-needed --src 123.45.67.89 --dst 0/0 -j ACCEPT

# (11) Time_Exceeded
#      Исходящие сообщения о тайм-ауте,
#      а также TTL-сообщение traceroute

$IPTABLES -t filter -A OUTPUT -o eth1 -p icmp --icmp-type 11 --src
123.45.67.89 --dst 0/0 -j ACCEPT


###################################################################################
# Разрешить входящие запросы на локальный DNS-сервер с указанного узла (порт 53)
###################################################################################

#Разрешить обращение клиентов к серверу

$IPTABLES -t filter -A INPUT -i eth1 -p udp --src 0/0 --sport
$UNPRIVPORTS --dst 123.45.67.89 --dport 53 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p udp --src 123.45.67.89
--sport 53 --dst 0/0 --dport $UNPRIVPORTS -j ACCEPT

#Разрешить общение между серверами

$IPTABLES -t filter -A INPUT -i eth1 -p udp --src 0/0 --sport 53 --dst
123.45.67.89 --dport 53 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p udp --src 123.45.67.89
--sport 53 --dst 0/0 --dport 53 -j ACCEPT

###################################################################################
# Разрешить входящие запросы на локальный DNS-сервер с указанного узла (порт 53)
###################################################################################

#Разрешить обращение клиентов к серверу

$IPTABLES -t filter -A INPUT -i eth0 -p udp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 192.168.1.3 --dport 53 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p udp --src 192.168.1.3 --sport
53 --dst 192.168.1.0/24 --dport $UNPRIVPORTS -j ACCEPT

#Разрешить общение между серверами

$IPTABLES -t filter -A INPUT -i eth0 -p udp --src 192.168.1.0/24
--sport 53 --dst 192.168.1.3 --dport 53 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p udp --src 192.168.1.3 --sport
53 --dst 192.168.1.0/24 --dport 53 -j ACCEPT

######################################################################
# Разрешить исходящие запросы к указанному удаленному DNS-серверу (порт 53,UDP)
######################################################################


# Разрешить обращения клиентов к сереверу

$IPTABLES -t filter -A OUTPUT -o eth1 -p udp --src 123.45.67.89
--sport $UNPRIVPORTS --dst 0/0 --dport 53 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p udp --src 0/0 --sport 53 --dst
123.45.67.89 --dport $UNPRIVPORTS -j ACCEPT

# Разрешить обращения сервера к сереверу

$IPTABLES -t filter -A OUTPUT -o eth1 -p udp --src 123.45.67.89
--sport 53 --dst 0/0 --dport 53 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p udp --src 0/0 --sport 53 --dst
123.45.67.89 --dport 53 -j ACCEPT


######################################################################
# Разрешить исходящие запросы к указанному удаленному DNS-серверу (порт 53,UDP)
######################################################################


# Разрешить обращения клиентов к сереверу

$IPTABLES -t filter -A OUTPUT -o eth0 -p udp --src 192.168.1.3 --sport
$UNPRIVPORTS --dst 192.168.1.0/24 --dport 53 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth0 -p udp --src 192.168.1.0/24
--sport 53 --dst 192.168.1.3 --dport $UNPRIVPORTS -j ACCEPT

# Разрешить обращения сервера к сереверу

$IPTABLES -t filter -A OUTPUT -o eth0 -p udp --src 192.168.1.3 --sport
53 --dst 192.168.1.0/24 --dport 53 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth0 -p udp --src 192.168.1.0/24
--sport 53 --dst 192.168.1.3 --dport 53 -j ACCEPT


#########################################################################
# Разрешить переброску пакетов через интерфейс для получения доступа к
# удаленному SSH-серверу (порт 22,TCP)
#########################################################################

$IPTABLES -t filter -A FORWARD -o eth0 -p tcp --src 0/0 --sport
$UNPRIVPORTS --dst 0/0 --dport 22 -j ACCEPT
$IPTABLES -t filter -A FORWARD -i eth0 -p tcp ! --tcp-flags
SYN,ACK,FIN SYN --src 0/0 --sport 22 --dst 0/0 --dport $UNPRIVPORTS -j
ACCEPT


##############################################################
# Разрешить входящие запросы на локальный SSH-сервер
# с указанного узла (порт 22,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth1 -p tcp --src 0/0 --sport
$UNPRIVPORTS --dst 123.45.67.89 --dport 22 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 123.45.67.89 --sport 22 --dst 0/0 --dport $UNPRIVPORTS -j
ACCEPT


##############################################################
# Разрешить входящие запросы на локальный SSH-сервер
# с указанного узла (порт 22,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth0 -p tcp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 192.168.1.3 --dport 22 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 192.168.1.3 --sport 22 --dst 192.168.1.0/24 --dport
$UNPRIVPORTS -j ACCEPT


######################################################################
# Разрешить исходящие запросы к указанному удаленному SSH-серверу
# (порт 22,TCP)
######################################################################

$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp --src 123.45.67.89
--sport $UNPRIVPORTS --dst 0/0 --dport 22 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 0/0 --sport 22 --dst 123.45.67.89 --dport $UNPRIVPORTS -j
ACCEPT


######################################################################
# Разрешить исходящие запросы к указанному удаленному SSH-серверу
# (порт 22,TCP)
######################################################################

$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp --src 192.168.1.3 --sport
$UNPRIVPORTS --dst 192.168.1.0/24 --dport 22 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 192.168.1.0/24 --sport 22 --dst 192.168.1.3 --dport
$UNPRIVPORTS -j ACCEPT


#########################################################################
# Разрешить переброску пакетов через интерфейс для получения доступа к
# удаленному NTP-серверу (порт 123,UDP)
#########################################################################

$IPTABLES -t filter -A FORWARD -o eth0 -p udp --src 0/0 --sport 123
--dst 0/0 --dport 123 -j ACCEPT
$IPTABLES -t filter -A FORWARD -i eth0 -p udp --src 0/0 --sport 123
--dst 0/0 --dport 123 -j ACCEPT

###############################################################
# Разрешить входящие запросы на локальный NTP-сервер
# с указанного узла (порт 123,UDP)
###############################################################

$IPTABLES -t filter -A INPUT -i eth1 -p udp --src 0/0 --sport 123
--dst 123.45.67.89 --dport 123 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p udp --src 123.45.67.89
--sport 123 --dst 0/0 --dport 123 -j ACCEPT


###############################################################
# Разрешить входящие запросы на локальный NTP-сервер
# с указанного узла (порт 123,UDP)
###############################################################

$IPTABLES -t filter -A INPUT -i eth0 -p udp --src 192.168.1.0/24
--sport 123 --dst 192.168.1.3 --dport 123 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p udp --src 192.168.1.3 --sport
123 --dst 192.168.1.0/24 --dport 123 -j ACCEPT


######################################################################
# Разрешить исходящие запросы к указанному удаленному
# NTP-серверу (порт 123,UDP)
######################################################################

$IPTABLES -t filter -A OUTPUT -o eth1 -p udp --src 123.45.67.89
--sport 123 --dst 0/0 --dport 123 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p udp --src 0/0 --sport 123
--dst 123.45.67.89 --dport 123 -j ACCEPT


##############################################################
# Разрешить входящие запросы на локальный SQUID-сервер
# с указанного узла (порт 3128,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth0 -p tcp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 192.168.1.3 --dport 3128 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 192.168.1.3 --sport 3128 --dst 192.168.1.0/24 --dport
$UNPRIVPORTS -j ACCEPT


#########################################################################
# Разрешить переброску пакетов через интерфейс для получения доступа к
# удаленному HTTP-серверу (порт 80,TCP)
#########################################################################

$IPTABLES -t filter -A FORWARD -o eth0 -p tcp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 0/0 --dport 80 -j ACCEPT
$IPTABLES -t filter -A FORWARD -i eth0 -p tcp ! --tcp-flags
SYN,ACK,FIN SYN --src 0/0 --sport 80 --dst 192.168.1.0/24 --dport
$UNPRIVPORTS -j ACCEPT

##############################################################
# Разрешить входящие запросы на локальный HTTP-сервер
# с указанного узла (порт 80,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth1 -p tcp --src 0/0 --sport
$UNPRIVPORTS --dst 123.45.67.89 --dport 80 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 123.45.67.89 --sport 80 --dst 0/0 --dport $UNPRIVPORTS -j
ACCEPT


##############################################################
# Разрешить входящие запросы на локальный HTTP-сервер
# с указанного узла (порт 80,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth0 -p tcp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 192.168.1.3 --dport 80 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 192.168.1.3 --sport 80 --dst 192.168.1.0/24 --dport
$UNPRIVPORTS -j ACCEPT


######################################################################
# Разрешить исходящие запросы к указанному удаленному HTTP-серверу
# (порт 80,TCP)
######################################################################

$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp --src 123.45.67.89
--sport $UNPRIVPORTS --dst 0/0 --dport 80 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 0/0 --sport 80 --dst 123.45.67.89 --dport $UNPRIVPORTS -j
ACCEPT

######################################################################
# Разрешить исходящие запросы к указанному удаленному HTTP-серверу
# (порт 80,TCP)
######################################################################

$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp --src 192.168.1.3 --sport
$UNPRIVPORTS --dst 192.168.1.0/24 --dport 80 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 192.168.1.0/24 --sport 80 --dst 192.168.1.3 --dport
$UNPRIVPORTS -j ACCEPT

##############################################################
# Разрешить входящие запросы на локальный SMTP-сервер
# с указанного узла (порт 25,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth1 -p tcp --src 0/0 --sport
$UNPRIVPORTS --dst 123.45.67.89 --dport 25 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 123.45.67.89 --sport 25 --dst 0/0 --dport $UNPRIVPORTS -j
ACCEPT


##############################################################
# Разрешить входящие запросы на локальный SMTP-сервер
# с указанного узла (порт 25,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth0 -p tcp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 192.168.1.3 --dport 25 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 192.168.1.3 --sport 25 --dst 192.168.1.0/24 --dport
$UNPRIVPORTS -j ACCEPT


######################################################################
# Разрешить исходящие запросы к указанному удаленному SMTP-серверу
# (порт 25,TCP)
######################################################################

$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp --src 123.45.67.89
--sport $UNPRIVPORTS --dst 0/0 --dport 25 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 0/0 --sport 25 --dst 123.45.67.89 --dport $UNPRIVPORTS -j
ACCEPT


##############################################################
# Разрешить входящие запросы на локальный FTP-сервер
# с указанного узла (порт 20,21,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth1 -p tcp --src 0/0 --sport
$UNPRIVPORTS --dst 123.45.67.89 --dport 21 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 123.45.67.89 --sport 21 --dst 0/0 --dport $UNPRIVPORTS -j
ACCEPT

#Разрешить локальному серверу сделать ответный канал для передачи
данных в нормальном режиме
$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp -m state --state
RELATED,ESTABLISHED --src 123.45.67.89 --sport 20 --dst 0/0 --dport
$UNPRIVPORTS -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p tcp -m state --state
RELATED,ESTABLISHED ! --tcp-flags SYN,ACK,FIN SYN --src 0/0 --sport
$UNPRIVPORTS --dst 123.45.67.89 --dport 20 -j ACCEPT

#Разрешить удаленному клиенту создать канал для передачи данных в
пассивном режиме
$IPTABLES -t filter -A INPUT -i eth1 -p tcp -m state --state
RELATED,ESTABLISHED --src 0/0 --sport $UNPRIVPORTS --dst 123.45.67.89
--dport $UNPRIVPORTS -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp -m state --state
RELATED,ESTABLISHED ! --tcp-flags SYN,ACK,FIN SYN --src 123.45.67.89
--sport $UNPRIVPORTS --dst 0/0 --dport $UNPRIVPORTS -j ACCEPT

##############################################################
# Разрешить входящие запросы на локальный FTP-сервер
# с указанного узла (порт 20,21,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth0 -p tcp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 192.168.1.3 --dport 21 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 192.168.1.3 --sport 21 --dst 192.168.1.0/24 --dport
$UNPRIVPORTS -j ACCEPT

#Разрешить локальному серверу сделать ответный канал для передачи
данных в нормальном режиме
$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp -m state --state
RELATED,ESTABLISHED --src 192.168.1.3 --sport 20 --dst 192.168.1.0/24
--dport $UNPRIVPORTS -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth0 -p tcp -m state --state
RELATED,ESTABLISHED ! --tcp-flags SYN,ACK,FIN SYN --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 192.168.1.3 --dport 20 -j ACCEPT

#Разрешить удаленному клиенту создать канал для передачи данных в
пассивном режиме
$IPTABLES -t filter -A INPUT -i eth0 -p tcp -m state --state
RELATED,ESTABLISHED --src 192.168.1.0/24 --sport $UNPRIVPORTS --dst
192.168.1.3 --dport $UNPRIVPORTS -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp -m state --state
RELATED,ESTABLISHED ! --tcp-flags SYN,ACK,FIN SYN --src 192.168.1.3
--sport $UNPRIVPORTS --dst 192.168.1.0/24 --dport $UNPRIVPORTS -j
ACCEPT

######################################################################
# Разрешить исходящие запросы к указанному удаленному FTP-серверу
# (порт 20,21,TCP)
######################################################################

$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp --src 123.45.67.89
--sport $UNPRIVPORTS --dst 0/0 --dport 21 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 0/0 --sport 21 --dst 123.45.67.89 --dport $UNPRIVPORTS -j
ACCEPT

#Разрешить удаленному серверу создать канал передачи данных в нормальном режиме
$IPTABLES -t filter -A INPUT -i eth1 -p tcp -m state --state
RELATED,ESTABLISHED --src 0/0 --sport 20 --dst 123.45.67.89 --dport
$UNPRIVPORTS -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp -m state --state
RELATED,ESTABLISHED ! --tcp-flags SYN,ACK,FIN SYN --src 123.45.67.89
--sport $UNPRIVPORTS --dst 0/0 --dport 20 -j ACCEPT

#Разрешить локальному клиенту создать канал передачи данных в пассивном режиме
$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp -m state --state
RELATED,ESTABLISHED --src 123.45.67.89 --sport $UNPRIVPORTS --dst 0/0
--dport $UNPRIVPORTS -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p tcp -m state --state
RELATED,ESTABLISHED ! --tcp-flags SYN,ACK,FIN SYN --src 0/0 --sport
$UNPRIVPORTS --dst 123.45.67.89 --dport $UNPRIVPORTS -j ACCEPT


##############################################################
# Разрешить входящие запросы на локальный IMAP-сервер
# с указанного узла (порт 143,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth0 -p tcp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 192.168.1.3 --dport 143 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 192.168.1.3 --sport 143 --dst 192.168.1.0/24 --dport
$UNPRIVPORTS -j ACCEPT


######################################################################
# Разрешить исходящие запросы к указанному удаленному IMAP-серверу
# (порт 143,TCP)
######################################################################

$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp --src 123.45.67.89
--sport $UNPRIVPORTS --dst 0/0 --dport 143 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 0/0 --sport 143 --dst 123.45.67.89 --dport $UNPRIVPORTS -j
ACCEPT


#######################################################################
# Разрешить входящие traceroute-запросы от удаленных клиентов
# Обычно traceroute использует -S 32769:65535 -D 33434:33523
#######################################################################

$IPTABLES -t filter -A OUTPUT -o eth1 -p udp --src 123.45.67.89
--sport 32769:65535 --dst 0/0 --dport 33434:33523 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p icmp --icmp-type 11 --src 0/0
--dst 123.45.67.89 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p icmp --icmp-type 3 --src 0/0
--dst 123.45.67.89 -j ACCEPT

#########################################################################
# Разрешить переброску пакетов через интерфейс для получения доступа к
# удаленному HTTP-серверу через защтщенное соединение (порт 443,TCP)
#########################################################################

$IPTABLES -t filter -A FORWARD -o eth0 -p tcp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 0/0 --dport 443 -j ACCEPT
$IPTABLES -t filter -A FORWARD -i eth0 -p tcp ! --tcp-flags
SYN,ACK,FIN SYN --src 0/0 --sport 443 --dst 192.168.1.0/24 --dport
$UNPRIVPORTS -j ACCEPT

##############################################################
# Разрешить входящие запросы на локальный HTTP-сервер
# с указанного узла через защищенное соединение(порт 443,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth1 -p tcp --src 0/0 --sport
$UNPRIVPORTS --dst 123.45.67.89 --dport 443 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 123.45.67.89 --sport 443 --dst 0/0 --dport $UNPRIVPORTS -j
ACCEPT


##############################################################
# Разрешить входящие запросы на локальный HTTP-сервер
# с указанного узла через защищенное соединение(порт 443,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth0 -p tcp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dst 192.168.1.3 --dport 443 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 192.168.1.3 --sport 443 --dst 192.168.1.0/24 --dport
$UNPRIVPORTS -j ACCEPT


######################################################################
# Разрешить исходящие запросы к указанному удаленному HTTP-серверу
# через защищенное соединение (порт 443,TCP)
######################################################################

$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp --src 123.45.67.89
--sport $UNPRIVPORTS --dst 0/0 --dport 443 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 0/0 --sport 443 --dst 123.45.67.89 --dport $UNPRIVPORTS -j
ACCEPT

######################################################################
# Разрешить исходящие запросы к указанному удаленному HTTP-серверу
# через защищенное соединение (порт 443,TCP)
######################################################################

$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp --src 192.168.1.3 --sport
$UNPRIVPORTS --dst 192.168.1.0/24 --dport 443 -j ACCEPT
$IPTABLES -t filter -A INPUT -i eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --src 192.168.1.0/24 --sport 443 --dst 192.168.1.3 --dport
$UNPRIVPORTS -j ACCEPT

##############################################################
# Разрешить входящие запросы на локальный IMAP-сервер
# с указанного узла через защищенное соединение (порт 993,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth1 -p tcp --src 0/0 --sport
$UNPRIVPORTS --dport 993 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth1 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --sport 993 --dst 0/0 --dport $UNPRIVPORTS -j ACCEPT


##############################################################
# Разрешить входящие запросы на локальный IMAP-сервер
# с указанного узла через защищенное соединение (порт 993,TCP)
##############################################################

$IPTABLES -t filter -A INPUT -i eth0 -p tcp --src 192.168.1.0/24
--sport $UNPRIVPORTS --dport 993 -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o eth0 -p tcp ! --tcp-flags SYN,ACK,FIN
SYN --sport 993 --dst 192.168.1.0/24 --dport $UNPRIVPORTS -j ACCEPT




On 4/17/07, Alexander Volkov <alt на vladregion.ru> wrote:
> On 2007-04-17 16:04:26 +0400, Maks Re wrote:
> MR> разумеется присутствуют.
> тогда правила сюда, а то телепатам неколи видимо...
> --
>  Regards, Alexander
>
> _______________________________________________
> Sysadmins mailing list
> Sysadmins на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/sysadmins
>


-- 
С уважением,
  Макс.


Подробная информация о списке рассылки Sysadmins