ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] FTP и Firewall
@ 2002-09-23  7:45 Прокопьев Евгений
  2002-09-23  7:50 ` Mr.Ghost
  0 siblings, 1 reply; 6+ messages in thread
From: Прокопьев Евгений @ 2002-09-23  7:45 UTC (permalink / raw)
  To: community

Здравствуйте!

Настроен iptables, ходить по www можно, а с ftp такие проблемы:

$ ftp ftp.rmts.donpac.ru
Connected to ftp.rmts.donpac.ru (195.161.172.86).
220-RMTS FTP service
     WarFTPd 1.71-b.01 (Jan  8 2000) Ready
     (C)opyright 1996 - 2000 by Jarle (jgaa) Aase - all rights reserved.
220 Please enter your user name.
Name (ftp.rmts.donpac.ru:john): john
331 User name okay, Need password.
Password:
230 User  logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> dir
200 PORT command successful.
150 Opening ASCII mode data connection for /bin/ls (238 bytes).

И здесь ftp зависает

Скрипт, загружающий правила firewall выглядит так

#!/bin/sh
#
# file /etc/sysconfig/iptable_ppp.sh - Initial IP Firewall script for 2.4.x
#
# Author: Vladimir Kholmanov, Eugene Prokopiev
# use at your own risk
#
################################################################################
# Конфигурационные параметры.
# При необходимости - отредактируйте.
#
# Script не требует указания ни статического, ни "подхвата"
# динамического IP адреса.
# Правила фильтрации привязаны к интерфейсам.
#
# Проверьте правильность пути к iptables.
################################################################################
EXTERNAL_IFACE="ppp0"
INTERNAL_IFACE="eth0"
LOCAL_IFACE="lo"
VIRTUAL_IFACE="vmnet1"
IPTABLES="/sbin/iptables"
################################################################################
# Проверка зависимостей в загружаемых IPTables modules
#
/sbin/depmod -a
#
################################################################################
# Устанавливаем default policies для INPUT, FORWARD и OUTPUT chains
#
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD DROP
################################################################################
# Создаем дочерние chains для ICMP, TCP и UDP протоколов.
#
$IPTABLES -N icmp_in_ppp
$IPTABLES -N tcp_in_ppp
$IPTABLES -N udp_in_ppp
################################################################################
# Загружаем ICMP rules для входящих потоков
#
$IPTABLES -A icmp_in_ppp -p ICMP --icmp-type 3 -j ACCEPT
$IPTABLES -A icmp_in_ppp -p ICMP --icmp-type 0 -j ACCEPT
$IPTABLES -A icmp_in_ppp -p ICMP --icmp-type 11 -j ACCEPT
$IPTABLES -A icmp_in_ppp -m limit --limit 6/minute --limit-burst 1 -p 
ICMP --icmp-type 8 -j ACCEPT
$IPTABLES -A icmp_in_ppp -m limit --limit 2/minute --limit-burst 4 -j 
LOG --log-prefix "ICMP in ppp died: "
$IPTABLES -A icmp_in_ppp -p ICMP -j DROP
################################################################################
# Загружаем TCP rules для входящих потоков
#
$IPTABLES -A tcp_in_ppp -p TCP --syn --dport 80 -j ACCEPT
$IPTABLES -A tcp_in_ppp -p TCP --syn --dport 22 -j ACCEPT
$IPTABLES -A tcp_in_ppp -p TCP --syn --dport 53 -j ACCEPT
$IPTABLES -A tcp_in_ppp -p TCP --syn --sport 53 -j ACCEPT
$IPTABLES -A tcp_in_ppp -p TCP -m state --state ESTABLISHED,RELATED -j 
ACCEPT
$IPTABLES -A tcp_in_ppp -m limit --limit 2/minute --limit-burst 4 -j LOG 
--log-prefix "TCP in ppp died: "
$IPTABLES -A tcp_in_ppp -p TCP -j DROP
################################################################################
# Загружаем UDP rules для входящих потоков
#
$IPTABLES -A udp_in_ppp -p UDP --dport 53 -j ACCEPT
$IPTABLES -A udp_in_ppp -p UDP --sport 53 -j ACCEPT
$IPTABLES -A udp_in_ppp -m limit --limit 3/minute --limit-burst 6 -j LOG 
--log-prefix "UDP in ppp died: "
$IPTABLES -A udp_in_ppp -p UDP -j DROP
################################################################################
# INPUT chain
#
# Регистрируем и удаляем "проблемные" TCP пакеты.
#
$IPTABLES -A INPUT -i $EXTERNAL_IFACE -p tcp ! --syn -m state --state 
NEW -j LOG --log-prefix "New not syn:"
$IPTABLES -A INPUT -i $EXTERNAL_IFACE -p tcp ! --syn -m state --state 
NEW -j DROP
################################################################################
# "Направляющие" для локальных и "перенаправляющие" для inet пакетов rules.
#
$IPTABLES -A INPUT -p TCP -i $LOCAL_IFACE -j ACCEPT
$IPTABLES -A INPUT -p TCP -i $VIRTUAL_IFACE -j ACCEPT
$IPTABLES -A INPUT -p TCP -i $INTERNAL_IFACE -j ACCEPT
$IPTABLES -A INPUT -p TCP -i $EXTERNAL_IFACE -j tcp_in_ppp

$IPTABLES -A INPUT -p UDP -i $LOCAL_IFACE -j ACCEPT
$IPTABLES -A INPUT -p UDP -i $VIRTUAL_IFACE -j ACCEPT
$IPTABLES -A INPUT -p UDP -i $INTERNAL_IFACE -j ACCEPT
$IPTABLES -A INPUT -p UDP -i $EXTERNAL_IFACE -j udp_in_ppp

$IPTABLES -A INPUT -p ICMP -i $LOCAL_IFACE -j ACCEPT
$IPTABLES -A INPUT -p ICMP -i $VIRTUAL_IFACE -j ACCEPT
$IPTABLES -A INPUT -p ICMP -i $INTERNAL_IFACE -j ACCEPT
$IPTABLES -A INPUT -p ICMP -i $EXTERNAL_IFACE -j icmp_in_ppp
################################################################################
# Регистрирующее rule для "неохваченных" пакетов.
#
$IPTABLES -A INPUT -m limit --limit 3/minute --limit-burst 6 -j LOG 
--log-prefix "IP INPUT packet died: "
################################################################################
# Корректировка уязвимости NAT
#
$IPTABLES -A OUTPUT -m state -p icmp --state INVALID -j DROP

-- 
С уважением, Прокопьев Евгений



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

end of thread, other threads:[~2002-09-23 10:33 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-09-23  7:45 [Comm] FTP и Firewall Прокопьев Евгений
2002-09-23  7:50 ` Mr.Ghost
2002-09-23  8:52   ` Прокопьев Евгений
2002-09-23  9:45     ` Прокопьев Евгений
2002-09-23 10:13       ` Dmitry Lebkov
2002-09-23 10:33         ` Прокопьев Евгений

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

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

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


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