Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Невозможно прочитать каталог FTP клиентами NAT

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2

Открыть новую тему     Написать ответ в эту тему

avital

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Установили сервер ФТП (перепробовали разные сервера) на машине со статическим ip.
Если на него заходить с машины со статическим ip проблем никаких, а если на машине, которая за NATом, коннектиться логинится все ок и зависает на чтении каталога. Лог tlcmd:
 
Connect to: (30.03.2004 17:55:46)
hostname=Х.Х.Х.Х
username=vital
startdir=
220 любой фтп сервер.
USER user
331 User name okay, need password.
PASS ***********
230-Welcome user from y.y.y.y. You are now logged in to the server.
230 User logged in, proceed.
SYST
215 UNIX Type: L8
FEAT
211-Extensions Supported
 COMB
 MLST
 MLSD
 SIZE
 XCRC
 REST STREAM
 EPRT
 EPSV
211 End
Connect ok!
PWD
257 "/" is current directory.
Чтение каталога...
TYPE A
200 Type set to A.
PORT 192,168,0,9,6,147
200 PORT command successful.
LIST
150 File status okay; about to open data connection.
Загрузка
 
и здесь виснет
 
Добавлю, IIS Ftp ругается на неправильный порт после команды
PORT 192,168,0,9,6,147
Мой внутренний ip 192.168.0.9
Может в этом гдето собака порылась? Мож чего в файрволе надо отрыть/закрыть?

Всего записей: 296 | Зарегистр. 30-10-2003 | Отправлено: 15:11 30-03-2004 | Исправлено: lynx, 20:54 30-03-2004
valhalla



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Неплохо бы написать, чего за система, что за ftp.
Попробуй полностью открыть firewall, а у клиента сменить режим (passive/normal).

Всего записей: 2917 | Зарегистр. 30-10-2001 | Отправлено: 18:37 30-03-2004
avital

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Win XP, ftp куча разных. У всех одно и то же. Passive/normal и на клиентах меняли и на сервере, здесь не в этом дело.

Всего записей: 296 | Зарегистр. 30-10-2003 | Отправлено: 18:59 30-03-2004
ooptimum



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
avital

Цитата:
здесь не в этом дело.

В этом. Клиенты за обычным NAT должны работать только в пассивном режиме. А в твоем логе не наблюдается попытки переключиться в пассивный режим. В этом форуме я уже объяснял в подробностях как работает фтп-протокол и почему надо обязательно переключаться в пассивный режим. Используй поиск по форуму, если хочешь узнать детали.

----------
Голосуем за наших людей.
Номер раз.
Номер два.

Всего записей: 2898 | Зарегистр. 30-05-2002 | Отправлено: 19:40 30-03-2004 | Исправлено: ooptimum, 19:41 30-03-2004
avital

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Да, это один из логов, который без пассив мода. И с пассив модом то же самое. Почему-то я к другим фтп и без пасив мода захожу нормально. Повторяю, проблема не в этом.
Добавлю, если выходить с машины, которая за НАТом через ХТТП проксю, которая наруже (не за НАТом), заходит без проблем, пофигу пасив мод или нормал.

Всего записей: 296 | Зарегистр. 30-10-2003 | Отправлено: 19:55 30-03-2004
ooptimum



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
avital
Опиши свою конфигурацию подробно. Что за NAT, есть ли брандмауэр, какой, если есть, и т.д.
 
Добавлено
Вот, нашел, почитай эту тему, может прояснит ситуацию.

----------
Голосуем за наших людей.
Номер раз.
Номер два.

Всего записей: 2898 | Зарегистр. 30-05-2002 | Отправлено: 20:30 30-03-2004
avital

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Значит дело такое.
Сервер:
Windows XP Pro, Serv-U (пробовали ставить Titan ftp, IIS FTP Service) с реальным IP стоит за аппаратным рутером, на котором стоит допуск к этой машине только к 21 порту. Исходящих ограничений нет.
Клиент:
Windows XP Pro с внутренним IP, выходящий через NAT Windows Server 2003 + ISA 2000.
Клиенты: Wincmd, Flashget обозреватель сайтов.
 
Если ставишь IIS FTP Service, то при входе на него с машины за НАТом, говорит не правильный порт. С другими ФТП вроде все в норме, только зависает на чтении каталога.
 
На сервью попробовали включить PAS mode. Только не знаю, правильно или нет. В поле адрес написали внешний адрес этой же машины (фтп), а порты 0-255.
 
Еще добавлю, что либо сделать с роутером нельзя. Если работаешь с прямого IP, что в пасмоде, что в нормал - все ок
 
Вот лог с пасмодом:

Цитата:
Connect to: (31.03.2004 12:12:40)
hostname=xx.xx.xx.xx
username=user
startdir=/
220-Serv-U FTP Server v5.0 for WinSock ready...
220-You are trying to connect to Hydride-FTP
220 Sorry, anonumous access is closed.
USER user
331 User name okay, need password.
PASS ***********
230 User logged in, proceed.
SYST
215 UNIX Type: L8
FEAT
211-Extension supported
 CLNT
 MDTM
 MDTM YYYYMMDDHHMMSS[+-TZ];filename
 SIZE
 SITE PSWD;EXEC;SET;INDEX;ZONE;CHMOD;MSG
 REST STREAM
 XCRC filename;start;end
211 End
CWD /
250 Directory changed to /
Connect ok!
PWD
257 "/" is current directory.
Чтение каталога...
TYPE A
200 Type set to A.
PASV
227 Entering Passive Mode (192,168,0,9,5,20)
PORT 192,168,0,9,5,20
200 PORT Command successful.
LIST
150 Opening ASCII mode data connection for /bin/ls.
Загрузка    здесь виснет
Прервано пользователем.


Всего записей: 296 | Зарегистр. 30-10-2003 | Отправлено: 09:15 31-03-2004 | Исправлено: avital, 09:26 31-03-2004
valhalla



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
avital

Цитата:
с реальным IP стоит за аппаратным рутером, на котором стоит допуск к этой машине только к 21 порту.

Если я не ошибаюсь, то для листинга используется порт передачи данных (20 в случае normal). В любом случае, если для сервера открыт только один порт, то доступа по ftp к нему не будет.

Всего записей: 2917 | Зарегистр. 30-10-2001 | Отправлено: 09:27 31-03-2004 | Исправлено: valhalla, 09:29 31-03-2004
avital

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Да 20 порт тоже открыт.

Всего записей: 296 | Зарегистр. 30-10-2003 | Отправлено: 09:31 31-03-2004 | Исправлено: avital, 09:54 31-03-2004
ooptimum



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
avital
Во-первых, как я уже писал, тебя спасет только пассивный режим. Хотя в данной конфигурации тебя скорее всего не спасет ничего. Ты не обижайся, в этом нет ничего зазорного, но ты просто не понимаешь как работает протокол FTP. Перечитай еще раз внимательно мои сообщения по ссылке, которую я дал выше. Начнем с того, что ты почему-то сказал, что твой FTP-сервер имеет реальный IP, хотя в твоем логе черным по белому написано, что его основной адрес -- 192.168.0.9. Во-вторых, командой PORT, которая не только не нужна в данном контексте, но и является явно ошибочной, ты переводишь сервер обратно в активный режим работы. В-третьих, на маршрутизаторе надо открывать далеко не 20-й порт для того, чтобы установить соединение данных с сервером, работающим в пассивном режиме. В случае, описанном твоим логом, сервер ожидал соединения на порту 1300. И т.д. В общем, тебе надо курить RFC959 до полного понимания особенностей протокола FTP, особенностей работы за NATом и того, как вообще все работает. От этого понимания ты только выиграешь, поверь моему опыту.

Всего записей: 2898 | Зарегистр. 30-05-2002 | Отправлено: 13:13 31-03-2004
avital

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Уже прочитал, всмысле вчера.
 
227 Entering Passive Mode (192,168,0,9,5,20) - здесь неправильно, я просто скопировал со своего сервака внутреннего когда тестировал. Приношу извинения за дизинформацию.
 
Я уже понял, что почему-то клиент начинает входить опять напрямую. Сначало PASV вроде проходит, потом опять появляет PORT, не пойму - почему. Может сам сервер как-то не так настроен. Фиг его знает. Но вообщем такая вот ерунда.
 
Короче, я так понял, что нужно порт какой-нибудь 2-х байтный открыть, чтоб в ПАС мод заходить, а этот порт прописать в серв-ю. Да уж, вот это уже проблема.
 
Вопрос, если я все правильно понял. Если один порт будет открыт, то значит максимум один юзер будет заходить?

Всего записей: 296 | Зарегистр. 30-10-2003 | Отправлено: 14:08 31-03-2004 | Исправлено: avital, 14:18 31-03-2004
ooptimum



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
avital

Цитата:
нужно порт какой-нибудь 2-х байтный открыть, чтоб в ПАС мод заходить, а этот порт прописать в серв-ю.  

да.

Цитата:
Да уж, вот это уже проблема.

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

Цитата:
Если один порт будет открыт, то значит максимум один юзер будет заходить?  

да.
 
 
Добавлено

Цитата:
почему-то клиент начинает входить опять напрямую

наверное потому, что он не может создать соединение с сокетом, переданным сервером в ответе на команду PASV.

Всего записей: 2898 | Зарегистр. 30-05-2002 | Отправлено: 14:56 31-03-2004 | Исправлено: ooptimum, 15:03 31-03-2004
avital

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
Цитата:Да уж, вот это уже проблема.  
 
нет, это не проблема, т.к. тут это уже описывалось как минимум один раз.  

Проблема админам объяснить, что нужно пул портов открыть на роутере. А вообще спасибо за объяснение.

Всего записей: 296 | Зарегистр. 30-10-2003 | Отправлено: 15:49 31-03-2004
lukyanetc

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну что я могу сказать, вечная проблема FTP server и NAT. Из внутри всё ок, фтп сервер работает, из вне не хочет. Я уже и так делал:
 
    цитата:For Windows 2003 Server
 
    a) To Enable Direct Metabase Edit
    1. Open the IIS Microsoft Management Console (MMC).
    2. Right-click on the Local Computer node.
    3. Select Properties.
    4. Make sure the Enable Direct Metabase Edit checkbox is checked.
 
 
    b) Configure PassivePortRange via ADSUTIL script
    1. Click Start, click Run, type cmd, and then click OK.
    2. Type cd Inetpub\AdminScripts and then press ENTER.
    3. Type the following command from a command prompt.
    adsutil.vbs set /MSFTPSVC/PassivePortRange "5500-5700"
    4. Restart the FTP service.
 
    You'll see the following output, when you configure via ADSUTIL script:
 
    Microsoft (R) Windows Script Host Version 5.6
 
    Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.
 
    PassivePortRange : (STRING) "5500-5700"
    http://support.microsoft.com/?id=555022
 
Правда после этой проделанной операции мне как бы показалось, что заработало. Был доволен, как слон. А после обновления винсервера перестало работать. ....а может оно и тогда не работало?
21 порт в брандмауэре открыт. Что еще нужно, чтоб фтп из вне заработал?
Вот ссылка на фтп: ftp://94.240.132.11
Логин: Lisica
Пароль: 123789
...как видите конектится, просит пароль ...вводишь и всё, не работает. Хотя внутри с этим логином и паролем все замечательно работает. Вообщем я в шоке.
Система: винсервер 2003 СП2 Р2
 
Добавление от 09.12.2008 22:20:
 
ALG отключал ..ведь по - русски это называется служба шлюза уровня приложения?

Всего записей: 9 | Зарегистр. 09-12-2008 | Отправлено: 23:16 09-12-2008
navadmin



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lukyanetc
425 Can't open data connection. - Вот и подумай теперь ,что открыть кроме 21 порта , ещё 20 и ещё UDP порты нужны до кучи

Всего записей: 109 | Зарегистр. 28-04-2008 | Отправлено: 01:51 10-12-2008
lukyanetc

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
[q][/q]
Я так понимаю нужно открыть пул портов 5500 - 5700, верно? Еще и 20, а какие UDP? И еще вопрос, можно ли как-то в винсервере 2003 в брандмауэре NAT пул портов открыть одним разом, а не по одному?

Всего записей: 9 | Зарегистр. 09-12-2008 | Отправлено: 10:46 10-12-2008
lukyanetc

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Господа, скажите, хоть у кого-то здесь получилось сделать фтп доступным через внешний ип? если да, то расскажите, пожалуйста, как? не уж-то нужно вручную открывать порты с 5500 до 5700?
Или посоветуйте файрвол, прост в использовании работающий по принципу всё можно, а вот это и эти порты нельзя.

Всего записей: 9 | Зарегистр. 09-12-2008 | Отправлено: 19:13 10-12-2008
Aushkin

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну смотри, у тебя аппаратный фаервол с внешним IP, за которым твоя машина с фтп.
На аппаратном фаерволе создаешь правила:
Для активного режима.
1. Все входящие с любого IP с любого порта на внешний адрес твоего фаервола на порт 21 перенаправлять на IP твоего компа на порт 21.
Для пасивного режима дополнительно
2. Все входящие с любого IP с любого порта на внешний адрес твоего фаервола на группу портов с 10200 по 10210(ну или больше портов, если оно тебе надо, да ещё если ты и разрешил многоканальные подключения) перенаправлять на IP твоего компа.
 
На компе соответственно в фаерволе открываешь порты 21, и с 10100 по 10125.
Если используешь просто брандмауэр Windows, то всё это можно проделать батником примерно такого содержания(меняй на свой вкус, если надо):
 

Код:
 
netsh firewall set portopening protocol = TCP port = 21 name = MyFtpPort
netsh firewall set portopening protocol = TCP port = 10200 name = MyFtpPASV10200
netsh firewall set portopening protocol = TCP port = 10201 name = MyFtpPASV10201
netsh firewall set portopening protocol = TCP port = 10202 name = MyFtpPASV10202
netsh firewall set portopening protocol = TCP port = 10203 name = MyFtpPASV10203
netsh firewall set portopening protocol = TCP port = 10204 name = MyFtpPASV10204
netsh firewall set portopening protocol = TCP port = 10205 name = MyFtpPASV10205
netsh firewall set portopening protocol = TCP port = 10206 name = MyFtpPASV10206
netsh firewall set portopening protocol = TCP port = 10207 name = MyFtpPASV10207
netsh firewall set portopening protocol = TCP port = 10208 name = MyFtpPASV10208
netsh firewall set portopening protocol = TCP port = 10209 name = MyFtpPASV10209
netsh firewall set portopening protocol = TCP port = 10210 name = MyFtpPASV10210
 

 
Ну и наконец в настройках своего FTP-сервера для пасивного режима указываешь именно ту группу портов, которую открыл выше (10200-10210). Возможность забиндить порты для пасивного режима есть практически в любом приличном FTP-серере.
 
Рекомендую G6FTP Server если надо понавороченее или, если нужно просто, удобно и бытро, бесплатный FileZilla Server.
 
Если на компе фаервол(или модули антивиря и т.п.) сильно умные, не забудь разрешить своему ft-серваку общаться с инетом.
 
Удачных раздач

Всего записей: 387 | Зарегистр. 06-05-2004 | Отправлено: 21:05 10-12-2008 | Исправлено: Aushkin, 21:11 10-12-2008
lukyanetc

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору


Цитата:
На компе соответственно в фаерволе открываешь порты 21, и с 10100 по 10125.  
 
Я сейчас использую встроенный брандмауэр в NAT винсервера 2003, батник не катит. Просто чтоб открыть PASV порты, нужно вручную их добавлять. А это очень неудобно, вот мне нужно открыть пул портов с 5000 д0 5700, ахринеть можно, пока их откроешь. Там ведь не только порты указываешь, но и ип частного интерфейса, кто юзал НАТ на винсервере 2003 знает.

Всего записей: 9 | Зарегистр. 09-12-2008 | Отправлено: 21:47 10-12-2008
Aushkin

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А зачем тебе NAT на серваке, если у тебя стоит аппаратный роутер(?) перед серваком?
Используй его возможности, разгрузи сервак от ненужной работы.
И кстати, 700 портов не слишком ли много? Ты действительно расчитываешь на такую немеряную активность, да ещё и многоканальные подключения? Чтобы нормально и без ограничений тянуть такую серьёзную нагрузку, у тебя должен быть очень сильный сервак и очень широкий канал в инет, в противном случае, 50 портов уже много

Всего записей: 387 | Зарегистр. 06-05-2004 | Отправлено: 22:35 10-12-2008 | Исправлено: Aushkin, 22:45 10-12-2008
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Невозможно прочитать каталог FTP клиентами NAT


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru