ALT Linux sysadmins discussion
 help / color / mirror / Atom feed
* [Sysadmins] настройка iptables в режиме все запрещено
@ 2007-04-17 11:52 Maks Re
  2007-04-17 11:59 ` Ivan Fedorov
  2007-04-17 15:02 ` Serge Polkovnikov
  0 siblings, 2 replies; 15+ messages in thread
From: Maks Re @ 2007-04-17 11:52 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

хелло

Настраиваю сервак на предмет firewall aka iptables

серваки имеет дваа интервейса: мир(eth1) и локалка(eth0).

политики для всех таблиц (INPUT, OUTPUT, FORWARD) = DROP
нат включен.

и тут стал тупить...

для того чтобы работал http (80/tcp)
надо
-открыть 80/tcp на eth1 & eth0 (чтоьы ьыло видно из двух сегментов.)

а вот чтобы работал ftp? что надо окртыть чтобы юзер из локалки легко
получил доступ во внешнюю сеть?

по факту не получается у мну... где-то туплю...
баловался с помошью fwcreator`а....
ну и где-то застрял, что не работает фтп, нтп, и так, помелочи...

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

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 11:52 [Sysadmins] настройка iptables в режиме все запрещено Maks Re
@ 2007-04-17 11:59 ` Ivan Fedorov
  2007-04-17 12:04   ` Maks Re
  2007-04-17 15:02 ` Serge Polkovnikov
  1 sibling, 1 reply; 15+ messages in thread
From: Ivan Fedorov @ 2007-04-17 11:59 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

Maks Re пишет:
> хелло
> 
> Настраиваю сервак на предмет firewall aka iptables
> 
> серваки имеет дваа интервейса: мир(eth1) и локалка(eth0).
> 
> политики для всех таблиц (INPUT, OUTPUT, FORWARD) = DROP
> нат включен.
> 
> и тут стал тупить...
> 
> для того чтобы работал http (80/tcp)
> надо
> -открыть 80/tcp на eth1 & eth0 (чтоьы ьыло видно из двух сегментов.)
> 
> а вот чтобы работал ftp? что надо окртыть чтобы юзер из локалки легко
> получил доступ во внешнюю сеть?
> 
> по факту не получается у мну... где-то туплю...
> баловался с помошью fwcreator`а....
> ну и где-то застрял, что не работает фтп, нтп, и так, помелочи...
> 
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 11:59 ` Ivan Fedorov
@ 2007-04-17 12:04   ` Maks Re
  2007-04-17 12:07     ` Alexander Volkov
  2007-04-17 12:13     ` Andrii Dobrovol`s`kii
  0 siblings, 2 replies; 15+ messages in thread
From: Maks Re @ 2007-04-17 12:04 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

разумеется присутствуют.

On 4/17/07, Ivan Fedorov <ns_alt_sysadmins@neural.ru> wrote:
> Maks Re пишет:
> > хелло
> >
> > Настраиваю сервак на предмет firewall aka iptables
> >
> > серваки имеет дваа интервейса: мир(eth1) и локалка(eth0).
> >
> > политики для всех таблиц (INPUT, OUTPUT, FORWARD) = DROP
> > нат включен.
> >
> > и тут стал тупить...
> >
> > для того чтобы работал http (80/tcp)
> > надо
> > -открыть 80/tcp на eth1 & eth0 (чтоьы ьыло видно из двух сегментов.)
> >
> > а вот чтобы работал ftp? что надо окртыть чтобы юзер из локалки легко
> > получил доступ во внешнюю сеть?
> >
> > по факту не получается у мну... где-то туплю...
> > баловался с помошью fwcreator`а....
> > ну и где-то застрял, что не работает фтп, нтп, и так, помелочи...
> >
> modprobe ip_conntrack_ftp
> modprobe ip_nat_ftp
> _______________________________________________
> Sysadmins mailing list
> Sysadmins@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/sysadmins
>


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

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 12:04   ` Maks Re
@ 2007-04-17 12:07     ` Alexander Volkov
  2007-04-17 13:48       ` Maks Re
  2007-04-17 12:13     ` Andrii Dobrovol`s`kii
  1 sibling, 1 reply; 15+ messages in thread
From: Alexander Volkov @ 2007-04-17 12:07 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

On 2007-04-17 16:04:26 +0400, Maks Re wrote:
MR> разумеется присутствуют.
тогда правила сюда, а то телепатам неколи видимо...
--
 Regards, Alexander



^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 12:04   ` Maks Re
  2007-04-17 12:07     ` Alexander Volkov
@ 2007-04-17 12:13     ` Andrii Dobrovol`s`kii
  1 sibling, 0 replies; 15+ messages in thread
From: Andrii Dobrovol`s`kii @ 2007-04-17 12:13 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

[-- Attachment #1: Type: text/plain, Size: 1173 bytes --]

Maks Re пишет:
> разумеется присутствуют.
> 
> On 4/17/07, Ivan Fedorov <ns_alt_sysadmins@neural.ru> wrote:
>> Maks Re пишет:
>>>
>>> для того чтобы работал http (80/tcp)
>>> надо
>>> -открыть 80/tcp на eth1 & eth0 (чтоьы ьыло видно из двух сегментов.)
>>>
>>> а вот чтобы работал ftp? что надо окртыть чтобы юзер из локалки легко
>>> получил доступ во внешнюю сеть?
>>>
А grep ftp /etc/services ничего не подсказывает? И если это активный
фтп то он любит свободный доступ в верхнем диапазоне портов.
>>> баловался с помошью fwcreator`а....
Лучше просто прочтите туториал по iptables. Еще здорово просветляет
запуск tcpdump или его родственников на сессию фтп.
>>> ну и где-то застрял, что не работает фтп, нтп, и так, помелочи...
>>>
>> modprobe ip_conntrack_ftp
>> modprobe ip_nat_ftp
-- 
Rgrds,
Andriy
*********************************************************************
email: dobr at iop dot kiev dot ua            Kyiv, Ukraine
Phone: (380-44)   525-7824            Department of Gas Electronics
Fax:   (380-44)   525-2329             Institute of Physics of NASU
*********************dobrATjabber.iop.kiev.ua************************


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 12:07     ` Alexander Volkov
@ 2007-04-17 13:48       ` Maks Re
  2007-04-17 14:00         ` Alexey Shabalin
  0 siblings, 1 reply; 15+ messages in thread
From: Maks Re @ 2007-04-17 13:48 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

вы правы.


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

#!/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
>


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

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 13:48       ` Maks Re
@ 2007-04-17 14:00         ` Alexey Shabalin
  2007-04-17 14:25           ` Maks Re
  0 siblings, 1 reply; 15+ messages in thread
From: Alexey Shabalin @ 2007-04-17 14:00 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

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

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 14:00         ` Alexey Shabalin
@ 2007-04-17 14:25           ` Maks Re
  0 siblings, 0 replies; 15+ messages in thread
From: Maks Re @ 2007-04-17 14:25 UTC (permalink / raw)
  To: shaba, ALT Linux sysadmin discuss

дык оно даже на внутренний фтп сервак коннектится (192.168.1.1), а
данные не идут...
в этом случае до ната дело не доходит...


On 4/17/07, Alexey Shabalin <a.shabalin@gmail.com> wrote:
> 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
> _______________________________________________
> Sysadmins mailing list
> Sysadmins@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/sysadmins
>


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

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 11:52 [Sysadmins] настройка iptables в режиме все запрещено Maks Re
  2007-04-17 11:59 ` Ivan Fedorov
@ 2007-04-17 15:02 ` Serge Polkovnikov
  2007-04-17 15:11   ` Maks Re
  1 sibling, 1 reply; 15+ messages in thread
From: Serge Polkovnikov @ 2007-04-17 15:02 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

В сообщении от Вторник 17 Апрель 2007 14:52 Maks Re написал(a):
> а вот чтобы работал ftp? что надо окртыть чтобы юзер из локалки легко
> получил доступ во внешнюю сеть?
>
> по факту не получается у мну... где-то туплю...
> баловался с помошью fwcreator`а....

Примеры смотрели? Там есть
-- 
Serge Polkovnikov

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 15:02 ` Serge Polkovnikov
@ 2007-04-17 15:11   ` Maks Re
  2007-04-17 15:20     ` Serge Polkovnikov
  0 siblings, 1 reply; 15+ messages in thread
From: Maks Re @ 2007-04-17 15:11 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

на основании примеров и делал.

On 4/17/07, Serge Polkovnikov <serge.polkovnikov@gmail.com> wrote:
> В сообщении от Вторник 17 Апрель 2007 14:52 Maks Re написал(a):
> > а вот чтобы работал ftp? что надо окртыть чтобы юзер из локалки легко
> > получил доступ во внешнюю сеть?
> >
> > по факту не получается у мну... где-то туплю...
> > баловался с помошью fwcreator`а....
>
> Примеры смотрели? Там есть
> --
> Serge Polkovnikov
> _______________________________________________
> Sysadmins mailing list
> Sysadmins@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/sysadmins
>


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

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 15:11   ` Maks Re
@ 2007-04-17 15:20     ` Serge Polkovnikov
  2007-04-17 15:24       ` Maks Re
  0 siblings, 1 reply; 15+ messages in thread
From: Serge Polkovnikov @ 2007-04-17 15:20 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

В сообщении от Вторник 17 Апрель 2007 18:11 Maks Re написал(a):
> на основании примеров и делал.

покажите ваш конфиг, пожалуйта

-- 
Serge Polkovnikov

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 15:20     ` Serge Polkovnikov
@ 2007-04-17 15:24       ` Maks Re
  2007-04-17 15:50         ` Serge Polkovnikov
  0 siblings, 1 reply; 15+ messages in thread
From: Maks Re @ 2007-04-17 15:24 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

#
# Простой Интернет-сервер со следующими сервисами:
# SMTP,POP3,POP3S,SQUID,DNS

alias	UNPRIVPORTS	1024:65535
#alias	admins		192.168.1.15,192.168.1.13
#alias	localnet	192.168.1.0/24,192.168.10.0/24
alias	admins		192.168.1.15
alias	localnet	192.168.1.0/24
########## Внешний сетевой интерфейс ###############
interface eth1 123.45.67.89
####################################################

 # Разрешить устанавливать входящие соединения из интернета к
 # нашему серверу только для протоколов SMTP, POP3S и DNS
smtp_input		0/0
#pop3s_input		0/0
imaps_input		0/0
dns_input		0/0
ssh_input		0/0
ntp_input		0/0
#icq_input		0/0
ftp_input		0/0
http_input		0/0
https_input		0/0
icmp-inet_input		0/0

 # Разрешить нашему серверу устанавливать исходящие соединения с
 # внешними серверами для протоколов SMTP, DNS, HTTP, HTTPS, FTP
smtp_output		0/0
#pop3s_output		0/0
imaps_output		0/0
dns_output		0/0
ssh_output		0/0
ntp_output		0/0
#icq_output		0/0
ftp_output		0/0
http_output		0/0
https_output		0/0
traceroute_output	0/0
icmp-inet_output	0/0


 # Разрешить администраторской машине выход в интернет мимо прокси-сервера
 # путём маскарадинга соответствующих запросов
#http_masq		$admins		0/0
#https_masq		$admins		0/0
#ftp_masq		$admins		0/0
#whois_masq		$admins		0/0
#traceroute_masq		$admins		0/0
#icmp-inet_masq		$admins		0/0

########### Интерфейс в локальную сеть ##############
interface eth0 192.168.1.3
#####################################################

 # Разрешить устанавливать входящие соединения из локальной сети
 # к нашему серверу для протоколов SMTP, POP3, POP3S, PROXY, DNS
smtp_input		$localnet
#pop3_input		$localnet
#pop3s_input		$localnet
imap_input		$localnet
imaps_input		$localnet
dns_input		$localnet
ssh_input		$localnet
ntp_input		$localnet
#icq_input		$localnet
ftp_input		$localnet
http_input		$localnet
https_input		$localnet
squid_input		$localnet
#vnc_input		$localnet
#whois_input		$localnet
#mysql_input		$localnet

ssh_output		$localnet
http_output		$localnet
https_output		$localnet
dns_output		$localnet

#####################################################
 # Forward`s
 #
 #форвардим ХТТП
 #
http_forward		$localnet	0/0
https_forward		$localnet	0/0

 #форвардим icmp
 #
#icmp-inet_forward	0/0	0/0

ntp_forward		0/0	0/0
ssh_forward		0/0	0/0

 # Разрешить только администраторской машине доступ к серверу
 # по протоколу SSH
#ssh_input	192.168.1.10
#ssh_input	$admins,$localnet


#####################################################
 #Работа ДНАТ
 #
#any_dnat $localnet $UNPRIVPORTS 0/0 80,443 192.168.1.1:3128

########### Интерфейс в lo ##############
#interface lo 127.0.0.1
#####################################################

#ntp_forward		0/0	0/0
#ssh_forward		0/0	0/0
#http_forward		0/0	0/0
#https_forward		0/0	0/0


On 4/17/07, Serge Polkovnikov <serge.polkovnikov@gmail.com> wrote:
> В сообщении от Вторник 17 Апрель 2007 18:11 Maks Re написал(a):
> > на основании примеров и делал.
>
> покажите ваш конфиг, пожалуйта
>
> --
> Serge Polkovnikov
> _______________________________________________
> Sysadmins mailing list
> Sysadmins@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/sysadmins
>


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

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 15:24       ` Maks Re
@ 2007-04-17 15:50         ` Serge Polkovnikov
  2007-04-17 16:13           ` Maks Re
  0 siblings, 1 reply; 15+ messages in thread
From: Serge Polkovnikov @ 2007-04-17 15:50 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

В сообщении от Вторник 17 Апрель 2007 18:24 Maks Re написал(a):
> #
> # Простой Интернет-сервер со следующими сервисами:
> # SMTP,POP3,POP3S,SQUID,DNS
>
> alias   UNPRIVPORTS     1024:65535
> #alias  admins          192.168.1.15,192.168.1.13
> #alias  localnet        192.168.1.0/24,192.168.10.0/24
> alias   admins          192.168.1.15
> alias   localnet        192.168.1.0/24
> ########## Внешний сетевой интерфейс ###############
> interface eth1 123.45.67.89
> ####################################################
>
>  # Разрешить устанавливать входящие соединения из интернета к
>  # нашему серверу только для протоколов SMTP, POP3S и DNS
> smtp_input              0/0
> #pop3s_input            0/0
> imaps_input             0/0
> dns_input               0/0
> ssh_input               0/0
> ntp_input               0/0
> #icq_input              0/0
> ftp_input               0/0
> http_input              0/0
> https_input             0/0
> icmp-inet_input         0/0
>
>  # Разрешить нашему серверу устанавливать исходящие соединения с
>  # внешними серверами для протоколов SMTP, DNS, HTTP, HTTPS, FTP
> smtp_output             0/0
> #pop3s_output           0/0
> imaps_output            0/0
> dns_output              0/0
> ssh_output              0/0
> ntp_output              0/0
> #icq_output             0/0
> ftp_output              0/0
> http_output             0/0
> https_output            0/0
> traceroute_output       0/0
> icmp-inet_output        0/0
>
>
>  # Разрешить администраторской машине выход в интернет мимо прокси-сервера
>  # путём маскарадинга соответствующих запросов
> #http_masq              $admins         0/0
> #https_masq             $admins         0/0
> #ftp_masq               $admins         0/0
> #whois_masq             $admins         0/0
> #traceroute_masq                $admins         0/0
> #icmp-inet_masq         $admins         0/0
>
Вместо этого блока поставте этот:

http_masq              $localnet         0/0
https_masq             $localnet         0/0
ftp_masq               $localnet         0/0



> ########### Интерфейс в локальную сеть ##############
> interface eth0 192.168.1.3
> #####################################################
>
>  # Разрешить устанавливать входящие соединения из локальной сети
>  # к нашему серверу для протоколов SMTP, POP3, POP3S, PROXY, DNS
> smtp_input              $localnet
> #pop3_input             $localnet
> #pop3s_input            $localnet
> imap_input              $localnet
> imaps_input             $localnet
> dns_input               $localnet
> ssh_input               $localnet
> ntp_input               $localnet
> #icq_input              $localnet
> ftp_input               $localnet
> http_input              $localnet
> https_input             $localnet
> squid_input             $localnet
> #vnc_input              $localnet
> #whois_input            $localnet
> #mysql_input            $localnet
>
> ssh_output              $localnet
> http_output             $localnet
> https_output            $localnet
> dns_output              $localnet

-- 
Serge Polkovnikov

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 15:50         ` Serge Polkovnikov
@ 2007-04-17 16:13           ` Maks Re
  2007-04-18  9:07             ` Serge Polkovnikov
  0 siblings, 1 reply; 15+ messages in thread
From: Maks Re @ 2007-04-17 16:13 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

> >
> Вместо этого блока поставте этот:
>
> http_masq              $localnet         0/0
> https_masq             $localnet         0/0
> ftp_masq               $localnet         0/0
>
>

а как это будет согласоваться с тем, что http&https&ftp&etc должны
быть доступны извне?

после бключения данного блока как-то не доступны...


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

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [Sysadmins] настройка iptables в режиме все запрещено
  2007-04-17 16:13           ` Maks Re
@ 2007-04-18  9:07             ` Serge Polkovnikov
  0 siblings, 0 replies; 15+ messages in thread
From: Serge Polkovnikov @ 2007-04-18  9:07 UTC (permalink / raw)
  To: ALT Linux sysadmin discuss

В сообщении от Вторник 17 Апрель 2007 19:13 Maks Re написал(a):
>  Вместо этого блока поставте этот:
> > http_masq              $localnet         0/0
> > https_masq             $localnet         0/0
> > ftp_masq               $localnet         0/0
>
> а как это будет согласоваться с тем, что http&https&ftp&etc должны
> быть доступны извне?
>
> после бключения данного блока как-то не доступны...

Этот блок не влияет на фунциональность доступа извне.
Он служит лишь для того, чтобы дать доступ к внешним ресурсам 
клиентам из локадьной сети посредством маскарадинга их запросов.

На доступ "извне" влияют правила вида *_input на интерфейсе к
которому подключен инет.

-- 
Serge Polkovnikov

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2007-04-18  9:07 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-04-17 11:52 [Sysadmins] настройка iptables в режиме все запрещено 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
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

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