Необычная проблема с пассивным режимом фтп, при политике запрета в iptables по умолчанию цепочки FORWARD.SuSe 10.3, iptables 1.3.8, 1,4,1.
1 карта 192.168.13.108 смотрит во внутренню сеть с 192.168.13.0/24, 2 карта с 192.168.0.108 смотрит в dmz со шлюзом в инет 192.168.0.201.
Вспомогательные модули подргужены:
# lsmod |grep ftp
nf_nat_ftp 7296 0
nf_conntrack_ftp 13696 1 nf_nat_ftp
nf_nat 21912 2 nf_nat_ftp,iptable_nat
nf_conntrack 61684 7 xt_conntrack,nf_nat_ftp,nf_conntrack_ftp,xt_state,iptable_nat,nf_nat,nf_conntrack_ipv4
Правила iptables такие:
#!/bin/sh
. /etc/rc.status
echo 1 > /proc/sys/net/ipv4/ip_forward
MB="/sbin/modprobe"
$MB ip_conntrack
$MB iptable_nat
$MB ip_conntrack_ftp
$MB ip_nat_ftp
ip_filter_start() {
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
iptables -A INPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
# passive ftp
iptables -A FORWARD -p tcp --sport 1024:65535 --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A FORWARD -p tcp --sport 21 --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -p tcp --sport 1024:65535 --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -p TCP --dport 20 -j ACCEPT
iptables -A FORWARD -p TCP --sport 20 -j ACCEPT
iptables -A FORWARD -p TCP --dport 21 -j ACCEPT
iptables -A FORWARD -p TCP --sport 21 -j ACCEPT
}
ip_filter_stop() {
iptables -t nat -F
iptables -F
}
# Restart IP packet forwarding:
ip_filter_restart() {
ip_filter_stop
sleep 1
ip_filter_start
}
case "$1" in
'start')
ip_filter_start
;;
'stop')
ip_filter_stop
;;
'restart')
ip_filter_restart
;;
*)
echo "usage $0 start|stop|restart"
esac