Что разрешить в squid, чтобы не было такого:

vlfdimir58

Socket connected waiting for login sequence.
220 ChgNet FTP server ready.
USER anonymous
331 Guest login ok, send your complete e-mail address as password.
PASS (hidden)
230- Welcome to FTP.Chg.RU - the biggest Russian ftp-archive
230-
230- This computer is Pentium4 1800 MHz with 1024 MB of RAM and
230- 2000 GB of total disk space working under FreeBSD-4.7
230- Total size of FTP archive is about 1800 GB
230-
230- NOTE:
230- Our archive is also accessible via WWW: http://ftp.chg.ru/
230-
230 Guest login ok, access restrictions apply.
SYST
215 UNIX Type: L8 Version: BSD-199506
FEAT
500 'FEAT': command not understood.
REST 100
350 Restarting at 100. Send STORE or RETRIEVE to initiate transfer.
REST 0
350 Restarting at 0. Send STORE or RETRIEVE to initiate transfer.
PWD
257 "/" is current directory.
TYPE A
200 Type set to A.
PORT 195,128,99,99,11,212
500 Illegal PORT Command
------------------
PS 195.128.99.99 - мой айпи.

vlfdimir58

для начала решил присоединиться в passive mode
помогло пока...

sergey_m

то есть на курсах Cisco не рассказывают ничего про протокол ftp? Наверное говорят, что достаточно написать "fixup protocol ftp" и все будет работать, а что при этом происходит знать Вам не обязательно.

abrek

а причём здесь это? разве есть подозрение на NAT?
команда PORT вполне нормальная
да, и squid здесь причём? это он такие команды выдаёт?

vlfdimir58

я на курсы cisco не хожу и не ходил вообще-то.

sergey_m

squid здесь не причем. Серверу было сказано PORT, сервер попытался установить соединение, получил RST и ответил Illegal port. Конечно есть подозрения на NAT,

abrek

> Серверу было сказано PORT, сервер попытался установить соединение
Это ты "из книг и/или RFC" такое почерпнул? Каких, если не секрет?
Подозрения на NAT есть, так именно об этом и стоит ответить. Но и проблема на сервере не исключена, с ним же всё время что-то происходит.
> squid здесь не причем
Это у автора вопроса надо бы уточнить, мало ли...

sergey_m

> Серверу было сказано PORT, сервер попытался установить соединение
Это ты "из книг и/или RFC" такое почерпнул? Каких, если не секрет?

Нет, это я с рождения знал. ;>
Подозрения на NAT есть, так именно об этом и стоит ответить. Но и проблема на сервере не исключена, с ним же всё время что-то происходит.

Я вижу 3 варианта;
1) NAT и порт на клиенте закрыт (как я описал постом выше)
1,1) просто порт на клиенте закрыт
2) сервер настроен параноидально и не хочет делать PORT на порт 3028, потому как он не попадает в диапазон 49152..65535.
3) кривой NAT, который пытается сделать fixup. На самом деле серверу приходит уже не та команда, которую мы видим в клиенте. Тогда остается только
догадываться что серверу не понравилось.

abrek

> Нет, это я с рождения знал. ;>
Странно, а том RFC, которое я сейчас почитал, написано, что соединение открывается после команды на пересылку файла (например STOR или RETR а вовсе не после команды PORT.
Да и все сервера именно так и делают.
Наверное, ты в каком-то другом мире родился, и только потом к нам пришёл

sergey_m

Странно, а том RFC, которое я сейчас почитал, написано, что соединение открывается после команды на пересылку файла (например STOR или RETR а вовсе не после команды PORT.
Да и все сервера именно так и делают.
Наверное, ты в каком-то другом мире родился, и только потом к нам пришёл

Спасибо, я в курсе. Но какое это имеет отношение к обсуждению? Может ты хочешь сказать, что клиент не сказал ни STOR ни RETR?

abrek

> Может ты хочешь сказать, что клиент не сказал ни STOR ни RETR?
Сначала должен прийти ответ от PORT.

sergey_m

Верно. Поэтому STOR и RETR тут не причем. Остаются три варианта, которые я перечислил выше.

abrek

Сервер не может проверить, открыт ли порт на клиенте, пока не попытается открыть соединение.
А соединение он не станет открывать, пока клиент не отдаст команду на передачу.
Клиент не отдаст команду на передачу, пока не получит ответ на PORT.
Следовательно, ответ "Illegal PORT" не может быть из-за того, что порт на клиенте не открыт.
И скорее всего, это глюк сервера, сейчас вот вообще connection refused, а в прошлом и более забавные проблемы наблюдались,
это же крупнейшая российская помойка, там наверняка своя ветка wuftpd с локальными изменениями.

sergey_m

Сервер не может проверить, открыт ли порт на клиенте, пока не попытается открыть соединение.
А соединение он не станет открывать, пока клиент не отдаст команду на передачу.
Клиент не отдаст команду на передачу, пока не получит ответ на PORT.
Следовательно, ответ "Illegal PORT" не может быть из-за того, что порт на клиенте не открыт.

Логично. Значит остается два варианта.

abrek

О! Я кажется понял.
ftp.chg.ru пеерезжает обратно на место, у него снова IP 193.233.9.194
На новом сервере ftp ещё не поднято по-нормальному.
Когда поднимется, снова трафик бесплатный будет.
Оставить комментарий
Имя или ник:
Комментарий: