Регистрация...

Eserv Forum / E3 / Eserv 3 Web and FTP Servers Support / Работа ftp-сервера строго через 21-й порт?

imported // (v1)
Продукты и услуги Скачать Документация Купить Поддержка Форумы Партнёрам Статьи О компании
Новости
12.10.2009
Переезд завершен
Доброго времени суток. Настроил у себя с помощью кода pigmail рабочий ftp-сервер с авторизацией пользователй по Auth_MD5. Однако один и тот же пользователь при коннекте из внутренней сети заходит на ftp нормально (читает каталог), то при коннекте снаружи, из-за файрвола, он авторизуется, но не может прочитать каталог. Файрвол стоит CISCO Pix, и он настроен так, что пускает внутрь только через 21-й порт. Суть проблемы, насколько я понимаю, что что во время ftp-сессии открываются дополнительные соединения клиента с сервером, причем на случайный порт выше 1024, которые и не проходят через циську. Вот пример лога сессии:

18:57:10 51 Connection from: ###.###.###.###:20297 18:57:10 51 Reply: 220 ###### Eserv/3.6739 acFTP (PigFTP/1.27a) server ready 18:57:10 51 Connected 18:57:10 51 USER ftpAndrew 18:57:10 51 Reply: 331 Password required 18:57:11 51 PASS *** 18:57:11 51 Authorized as: ftpAndrew@#####.###.## 18:57:11 51 Reply: 230 Login OK 18:57:11 51 opts utf8 on 18:57:11 51 Reply: 500 command not understood 18:57:11 51 syst 18:57:11 51 Reply: 215 Windows 18:57:11 51 site help 18:57:11 51 Reply: 500 command not understood 18:57:11 51 PWD 18:57:11 51 Reply: 257 "/" is current directory 18:57:11 51 CWD /ftpAndrew/ 18:57:11 51 Connection IP: 192.168.1.2 18:57:11 51 Resulting URI: /ftpAndrew/ 18:57:11 51 Translated file name: ..\CONF.pigmail\pub\ftproot\ftpAndrew\ 18:57:11 51 Access by ACL: -LR-- 18:57:11 51 Accepted 18:57:11 51 Reply: 250 CWD command successful 18:57:11 51 noop 18:57:11 51 Reply: 200 OK 18:57:11 51 CWD /ftpAndrew/ 18:57:11 51 Connection IP: 192.168.1.2 18:57:11 51 Resulting URI: /ftpAndrew/ 18:57:11 51 Translated file name: ..\CONF.pigmail\pub\ftproot\ftpAndrew\ 18:57:11 51 Access by ACL: -LR-- 18:57:11 51 Accepted 18:57:11 51 Reply: 250 CWD command successful 18:57:12 51 TYPE A 18:57:12 51 Reply: 200 Type set to A 18:57:12 51 PASV 18:57:12 51 Interface: 192.168.1.2, host: ###.###.###.###, selected IP: ###.###.###.### 18:57:12 51 Reply: 227 Entering Passive Mode (###,###,###,###,15,179). 18:57:13 51 STAT: 117:329:0:0:2125


Что-нибудь можно сделать, не открывая целый диапазон портов на циске?
 
Комментарии к этой версии (11.09.2006 15:49) [~tadmin] 1ed0d65d
АвторДатаТекстtags
pig11.09.2006 16:37
В активном режиме должно работать, там клиент слушающий порт открывает. А в пассивном — увы, надо провешивать порты.
imported
tadmin13.09.2006 10:30
Правильно ли я понял проблему, что виноват именно фаервол, если при пассивном коннекте из внешней сетки последняя строчка в логе ftp-сервера всегда Reply: 227 Entering Passive Mode (#,#,#,#,15,179) (здесь фигурирует внешний айпишник) а если коннектимся из внутренней, то за ней следует, например:

14:17:05 131 Reply: 227 Entering Passive Mode (192,168,0,1,14,62). 14:17:05 131 LIST -la 14:17:05 131 Connection IP: 192.168.0.1 14:17:05 131 Resulting URI: /ftpAndrew/ 14:17:05 131 Translated file name: ..\CONF.pigmail\pub\ftproot\ftpAndrew\ 14:17:05 131 Access by ACL: -LR-- 14:17:05 131 Accepted 14:17:05 131 Reply: 150 Opening data connection 14:17:05 131 Reply: 226 Transfer complete 14:17:05 131 Request completed: LIST/226 0/197


imported
pig13.09.2006 11:06
Да, файрвол не пускает. Из-за особенностей устройства FTP. Кстати, некоторые продвинутые NAT (типа аппаратного в Lucent DSLPipe) умеют отслеживать в FTP-протоколе команду PORT, и если там стоят реальные внутренние IP и порт, то они её правильно транслируют и автоматом провешивают временный маршрут для приёма. Правда, на Entering Passive Mode я его не проверял, может, там только клиентская фича реализована.
imported
tadmin13.09.2006 11:24
pig пишет: ...умеют отслеживать в FTP-протоколе команду PORT, и если там стоят реальные внутренние IP и порт, то они её правильно транслируют и автоматом провешивают временный маршрут для приёма.


По идее, именно это и реализовано на Cisco Pix 501. Но почему-то не работает... Ладно, буду копать там.
imported
pig13.09.2006 11:41
У вас сервер сейчас выдаёт какой IP — своего внешнего интерфейса или тот, что виден снаружи? Он должен быть такой, какой видит Cisco, тогда, может, и срастётся.
imported
Работает на Eserv/5.05555 (05.06.2016)