Официальный сайт студ.городка НГТУ
Software » Проблема с пассивным режимом ftp через iptables 

#1  19.11.06 13:23

Проблема с пассивным режимом ftp через iptables

Система: FC-6, iptables v1.3.5.
Ниже содержимое iptables:
Chain INPUT (policy DROP 15349 packets, 2133K bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1      312 46889 ACCEPT     all  --  lo     any     anywhere             anywhere           
2      390 74210 ACCEPT     all  --  any    any     crossroad.hostel.nstu.ru  anywhere           
3        0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:smtp
4        0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp spt:smtp
5        0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp spt:pop3
6      258  231K ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp spt:http
7        0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp spt:aol
8       30  2465 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp spt:ftp
9        0     0 ACCEPT     udp  --  any    any     anywhere             anywhere            udp spt:ftp
10       0     0 ACCEPT     udp  --  any    any     anywhere             anywhere            udp spt:ftp-data
11       0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp spt:ftp-data
12       0     0 ACCEPT     icmp --  any    any     anywhere             anywhere           

Chain FORWARD (policy DROP 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy DROP 18 packets, 2560 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1      312 46889 ACCEPT     all  --  any    lo      anywhere             anywhere           
2      120  8373 ACCEPT     all  --  any    any     anywhere             crossroad.hostel.nstu.ru
3        0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp spt:smtp
4        0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:smtp
5        0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:pop3
6      260 55326 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:http
7        0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:aol
8       39  2214 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:ftp
9        0     0 ACCEPT     udp  --  any    any     anywhere             anywhere            udp dpt:ftp
10       0     0 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:ftp-data
11       0     0 ACCEPT     udp  --  any    any     anywhere             anywhere            udp dpt:ftp-data
12       0     0 ACCEPT     icmp --  any    any     anywhere             anywhere   
Что нужно добавить, чтобы заработало пассивное соединение ftp?
К примеру, подключаюсь к ftp://best:
ftp> open best
Connected to best.hostel.nstu.ru.
220 (vsFTPd 2.0.1)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (best:root): ftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (217,71,142,1,142,216)
Далее всё виснет...

Offline

#2  19.11.06 13:56

Re: Проблема с пассивным режимом ftp через iptables

напиши правила в нормальном виде
разреши все коннекты от своего компа

Offline

#3  19.11.06 15:37

Re: Проблема с пассивным режимом ftp через iptables

А как работают режимы пассивный или активный, только отдельно или они каким-то образом сочетаютcя?

Offline

#4  19.11.06 21:38

Re: Проблема с пассивным режимом ftp через iptables

Dmitri написал(а):

А как работают режимы пассивный или активный, только отдельно или они каким-то образом сочетаютcя?

либо тот либо другой

Offline

#5  20.11.06 09:08

Re: Проблема с пассивным режимом ftp через iptables

Dmitri, если режим активный то второе соединение для данных идет от сервера к клиенту, в пассивном наоборот.

Offline

#6  20.11.06 14:11

Re: Проблема с пассивным режимом ftp через iptables

Мож надо conntrack и conntrack_ftp загрузить?

Offline

#7  21.11.06 10:19

Re: Проблема с пассивным режимом ftp через iptables

в активном режиме:
1. происходит коннект от клиента к серверу на порт 21
2. отдача данных происходит от сервера клиенту с порта 20
(это в общем)

пассивный режим - это режим, как вэб-браузер... т.е. соединился на 21 порт - с ним и работаешь...

AleXXX написал(а):

Мож надо conntrack и conntrack_ftp загрузить?

хм... это надо для проходящего сервера-шлюза... и для NAT, вроде...

Dmitri, попробуй сделать так... очисти все цепочки файера и попробуй пообщаться с фтп-сервером... так-то вроде правила все верные, если ты на конкретные сетевки их не раскидывал... но тут это не показано...

Offline

#8  21.11.06 11:10

Re: Проблема с пассивным режимом ftp через iptables

Спасибо всем за помощь, я тут накопал кое-что:
Active FTP :
     command : client >1023 -> server 21
     data    : client >1023 <- server 20

Passive FTP :
     command : client >1023 -> server 21
     data    : client >1023 -> server >1023
Схемы работы ftp в активном и пассивном режимах соответственно.
С активным режимом всё понятно.
Для работы в пассивном режиме в моей таблице не хватает правила, которое разрешает обмен пакетами с портом >1023:
iptables -A INPUT -p tcp --sport 1023: -j ACCEPT
iptables -A OUTPUT -p tcp --dport 1023: -j ACCEPT
- чтобы принимать и отправлять пакеты от/на сервера с его непривилегированного порта (>1023). Меня вот что волнует: я открываю большой диапазон портов, это ведь не лучшее решение. Есть более оптимальное решение? Как точно определить порт, который откроет сервер?

Исправлено Dmitri (21.11.06 11:12)

Offline

#9  22.11.06 09:08

Re: Проблема с пассивным режимом ftp через iptables

iptables -F

Offline

#10  23.11.06 14:24

Re: Проблема с пассивным режимом ftp через iptables

Код: bash:

#Правила для пакетов из инета - впускать только если соединение уже установлено или связано
/sbin/iptables -A INPUT -d <IP на внешней сетевой> -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A INPUT -d <IP на внешней сетевой> -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

Dmitri, не забывай, что если ты будешь делать еще одно соединение по фтп, то порт на клиенте будет уже другой...

Offline

#11  24.11.06 11:37

Re: Проблема с пассивным режимом ftp через iptables

Jaguar, спасибо за помощь.

Offline

Software » Проблема с пассивным режимом ftp через iptables 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.056 сек.
Выполнено 14 запросов.