Назад | Перейти на главную страницу

FTP-соединение возможно только через командную строку

Внезапно пользователи не смогли подключиться к ftp с помощью FileZilla, и через командную строку выполнялись только ftp-соединения. Когда я искал эту проблему, я нашел здесь в serverfault пару вопросов, связанных с этой проблемой, и ответ был потому, что в командной строке используется активный режим, и решение заключалось в изменении режима передачи в filezilla с пассивного на активный, и это действительно сработало. Мне нужно знать причину, по которой это произошло, поскольку раньше он работал нормально с пассивным режимом, нужно ли это настраивать с сервера, а не заставлять всех клиентов менять свой режим передачи. Мы используем FTP-сервер на IIS 6.

заранее спасибо

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

При пассивном FTP клиент устанавливает и канал управления, и канал данных. Канал данных устанавливается от клиента к случайному высокому порту на сервере. Если эти случайные высокие порты заблокированы, пассивный режим не сработает.

С точки зрения серверного межсетевого экрана, для поддержки пассивного режима FTP необходимо открыть следующие каналы связи:

  • Порт 21 FTP-сервера из любого места (клиент инициирует соединение)
  • Порт 21 FTP-сервера на порты> 1023 (сервер отвечает на порт управления клиента)
  • Порты FTP-сервера> 1023 из любого места (клиент инициирует подключение для передачи данных на случайный порт, указанный сервером)
  • Порты FTP-сервера> 1023 на удаленные порты> 1023 (сервер отправляет ACK (и данные) на порт данных клиента)

Больше информации:

https://stackoverflow.com/questions/1699145/what-is-the-difference-between-active-and-passive-ftp

Активный FTP против пассивного FTP, окончательное объяснение
http://slacksite.com/other/ftp.html#passive