URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 5452
[ Назад ]

Исходное сообщение
"Не работает активный режим ftp, только пассивный"

Отправлено pavel_vz , 29-Мрт-18 18:16 
Здравствуйте! Не могу никак разобраться в проблеме.
Данная конфигурация ipfw не дает возможности для подключения к ftp в активном режиме, работает только пассивный режим. Что я сделал не так? Заранее благодарю за ответ!
Активные режим - это подключение между 20 портом и портом клиента > 1023 (сначала 21, затем 20 - >1023).

em0 - внеш. сетевой интерфейс
igb0 - внутр. сет. инт.


00100    42     4570 allow ip from any to any via lo0
00101     0        0 check-state


00350     8      416 allow tcp from any to me dst-port 80,443 setup
00370     1       52 allow tcp from any to me dst-port 21,50000-60000 setup

00400  7109  1179738 allow ip from 192.168.1.0/24 to any in recv igb0
00500 11673 10432842 allow ip from me to any keep-state


00600  6325   873729 divert 8668 ip from 192.168.1.0/24 to any out xmit em0
00610  7557  8748806 divert 8668 ip from any to {внешний ip} in recv em0
00620     0        0 deny icmp from any to any in icmptypes 5,9,13,14,15,16,17
00630     6      504 allow icmp from any to any

65535   552    39649 deny ip from any to any


Содержание

Сообщения в этом обсуждении
"Не работает активный режим ftp, только пассивный"
Отправлено Аноним , 02-Апр-18 12:25 
> Активные режим - это подключение между 20 портом и портом клиента >
> 1023 (сначала 21, затем 20 - >1023).

В активном режиме клиент сообщает серверу номер порта (из динамического диапазона 1024-65535) для того, чтобы сервер мог подключиться К КЛИЕНТУ для установки соединения для передачи данных. FTP-сервер подключается к заданному номеру порта КЛИЕНТА, используя со своей стороны номер TCP-порта 20 для передачи данных.

> 52 allow tcp from any to me dst-port 21,50000-60000 setup

Вы разрешили клиенту подключаться к СЕРВЕРУ, да еще и зарезали диапазон портов. У вас и пассивный ftp через ж#опу работать будет.


"Не работает активный режим ftp, только пассивный"
Отправлено pavel_vz , 02-Апр-18 12:54 
>> Активные режим - это подключение между 20 портом и портом клиента >
>> 1023 (сначала 21, затем 20 - >1023).
> В активном режиме клиент сообщает серверу номер порта (из динамического диапазона 1024-65535)
> для того, чтобы сервер мог подключиться К КЛИЕНТУ для установки соединения
> для передачи данных. FTP-сервер подключается к заданному номеру порта КЛИЕНТА, используя
> со своей стороны номер TCP-порта 20 для передачи данных.
>> 52 allow tcp from any to me dst-port 21,50000-60000 setup
> Вы разрешили клиенту подключаться к СЕРВЕРУ, да еще и зарезали диапазон портов.
> У вас и пассивный ftp через ж#опу работать будет.

Для пассивного режима я прописал в конфиге ftp сервера именно порты 50000-60000. С этим проблем нет.

Подключение с 20 порта к любому порту клиента > 1023 должно обеспечить правило

allow ip from me to any keep-state

Вот тут я что-то могу не знать.  



"Не работает активный режим ftp, только пассивный"
Отправлено Аноним , 02-Апр-18 13:23 
> Для пассивного режима я прописал в конфиге ftp сервера именно порты 50000-60000.
> С этим проблем нет.

Воля ваша, у себя наступал на какие-то грабли с этими ограничениями, в итоге пришел к выводу, что нужно открывать все > 1023

> allow ip from me to any keep-state
> Вот тут я что-то могу не знать.

Упростите конфиг

# Можно все на localhost
allow ip from any to any via lo0
# Можно icmp
allow icmp from any to any
# Можно все от меня куда угодно
allow ip from me to any setup keep-state
# Активный FTP
allow tcp from any to any 21 setup keep-state
allow tcp from any to any 20 setup keep-state
# www
allow tcp from any to any 80 setup keep-state
allow tcp from any to any 443 setup keep-state
# Пассивный FTP
allow tcp from any to any 50000-60000 setup keep-state
# Все остальное нельзя
deny all from any to any

Должно взлететь, потом допилите nat.
Если не взлетает - tcpdump в руки, и смотрите, что где застревает.

у ipfw помнится еще какая-то своеобразная логика обработки правил по порядку.


"Не работает активный режим ftp, только пассивный"
Отправлено pavel_vz , 02-Апр-18 17:38 
>[оверквотинг удален]
> # www
> allow tcp from any to any 80 setup keep-state
> allow tcp from any to any 443 setup keep-state
> # Пассивный FTP
> allow tcp from any to any 50000-60000 setup keep-state
> # Все остальное нельзя
> deny all from any to any
> Должно взлететь, потом допилите nat.
> Если не взлетает - tcpdump в руки, и смотрите, что где застревает.
> у ipfw помнится еще какая-то своеобразная логика обработки правил по порядку.

Думаю, активный режим у меня не может работать из-за попыток подключения через NAT. Надо попробовать с какого-нибудь реального ip адреса подключиться без NAT.