ALT Linux sysadmins discussion
 help / color / mirror / Atom feed
From: "Alexey Shabalin" <a.shabalin@gmail.com>
To: "ALT Linux sysadmin discuss" <sysadmins@lists.altlinux.org>
Subject: Re: [Sysadmins] настройка iptables в режиме все запрещено
Date: Tue, 17 Apr 2007 18:00:38 +0400
Message-ID: <b966c1e40704170700i48502a40o8d3953b073b05813@mail.gmail.com> (raw)
In-Reply-To: <f041fbd00704170648g6cf63750m770486263152277f@mail.gmail.com>

17.04.07, Maks Re<admaks@gmail.com> написал(а):
> вы правы.
>
>
> скрипт хитрой тут...
>
> #!/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 mailing list
> Sysadmins@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/sysadmins
>

и как 192.168.1.0/24 будут без nat ходить наружу? правил маскарадинга
я не увидел.


-- 
Alexey Shabalin

  reply	other threads:[~2007-04-17 14:00 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-04-17 11:52 Maks Re
2007-04-17 11:59 ` Ivan Fedorov
2007-04-17 12:04   ` Maks Re
2007-04-17 12:07     ` Alexander Volkov
2007-04-17 13:48       ` Maks Re
2007-04-17 14:00         ` Alexey Shabalin [this message]
2007-04-17 14:25           ` Maks Re
2007-04-17 12:13     ` Andrii Dobrovol`s`kii
2007-04-17 15:02 ` Serge Polkovnikov
2007-04-17 15:11   ` Maks Re
2007-04-17 15:20     ` Serge Polkovnikov
2007-04-17 15:24       ` Maks Re
2007-04-17 15:50         ` Serge Polkovnikov
2007-04-17 16:13           ` Maks Re
2007-04-18  9:07             ` Serge Polkovnikov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b966c1e40704170700i48502a40o8d3953b073b05813@mail.gmail.com \
    --to=a.shabalin@gmail.com \
    --cc=shaba@altlinux.ru \
    --cc=sysadmins@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux sysadmins discussion

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sysadmins/0 sysadmins/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 sysadmins sysadmins/ http://lore.altlinux.org/sysadmins \
		sysadmins@lists.altlinux.org sysadmins@lists.altlinux.ru sysadmins@lists.altlinux.com
	public-inbox-index sysadmins

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


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