* [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