Настройка роутера для исправления ошибки 425

Содержание

Введение

Данное руководство дает возможность правильно настроить роутер с FileZilla Server (FZS) и исправить ошибку 425. В статье по Настройке сети есть некоторая информация по этой теме, но она написана таким образом, что обычный пользователь с трудом сможет разобраться и там нет точных указаний как исправить ошибку 425. В то время как в этой инструкции у вас будет возможность получить настройки для конкретного маршрутизатора.

Аннотация

Эта инструкция описывает основные технические причины возникновения ошибки 425, которая появляется после того, как FZS посылает FTP клиенту команду пассивного режима 227, независимо от того, что клиент использует в настоящее время. Все изложение происходит в повествовательной манере и написано для обычного пользователя, если у вас есть желание углубиться в технические детали, то обратитесь к статье Настройка сети

Повествование

Итак, вы настроили FZS и он работает для локального подключения в вашем доме, но вы хотите сделать ваш локальный FTP сервер доступным для всего мира, а также использовать шифрование (SSL/TLS), чтобы осуществить это. Вы настраиваете сервис Dynamic DNS (DynDNS), чтобы он указывал на FZS, через ваш внешний IP адрес. Вы перешли к руководству по настройке FZS с использованием SSL/TLS, но столкнулись с проблемой и после просмотра логов FZS, вы наблюдаете проблему "227 Passive command" после которой можно увидеть ошибку 425. Но даже после призвания колдуна, ведьмы и единорога вы не сможете исправить эту ошибку, поэтому дочитайте до конца это руководство.

Проблема

Скорее всего проблема в том, что ваш FZS делает запрос к FTP клиенту используя пассивные порты, определенные в настройках FZS. И даже если вы изменили настройки файрволла в Windows 7/8, вы все еще не можете подключиться FTP клиентом. Почему? На это сложно ответить, тип шифрования который использует FZS не дает маршрутизатору "видеть" что вы хотите разрешить соединение, и таким образом маршрутизатор блокирует передаваемые данные. Существуют и другие программы, которые можно использовать, чтобы позволить роутеру увидеть, что компьютер запросил входящую информацию, но ваш FZS настроен таким образом и во многом лучше, что никто не знает какие данные передаются, ведь в конце концов это ваша личная информация.

Почему роутер?

Да, в этом руководстве не предполагалось технических деталей, но многим из вас могло быть интересно, как работает маршрутизатор и почему он так это делает.
Роутер является важной частью вашей сетевой безопасности. Некоторые считают, что это первая линия обороны против взлома и последняя против троянов и вирусов, которая защищает ваши личные данные, другие говорят, что это волшебная коробка соединяющая вас с миром при помощи колдовства, все они правы.
Маршрутизатор получает один IP-адрес и позволяет многим устройствам подключаться к Интернету, используя сложный протокол под названием Network Address Translation (NAT). Каждый раз, когда компьютер запрашивает информацию, например к Google, он помещает запрос в "пакет", открывает роутер, ищет адреса, а затем отправляет данные на веб-страницу Google, и в свою очередь сервер Google отправляет обратно пакет с информацией, чтобы ваш браузер смог открыть страницу. Только сначала маршрутизатор вновь открывает возвращаемый пакет с данными, чтобы убедиться, что кто-то внутри частной сети сделал запрос, а затем отправляет его на соответствующий компьютер.
Что делать, если пришедший пакет никто не запрашивал? Маршрутизатор помещает его в "корзину", если говорить в технических терминах то, маршрутизатор удаляет пакет. Это позволяет избавиться от всего ненужного и дать вам то, что вы просили.
Так что же это означает для FileZilla Server? Как указано выше, FZS использует зашифрованный протокол для получения данных. Маршрутизатор не может видеть, что с зашифрованными данными "пакетами" все в порядке, чтобы впустить их на соответствующие порты, и таким образом считает, что хакер пытается совершить взлом, потому что эти порты закрыты.
В этот момент вы можете подумать "хорошо, когда я отключу часть сервиса SSL/TLS, то все заработает, так почему бы не изменить тип шифрования?" или придумать что-то другое, но после всей проделанной работы, зачем сдаваться, когда есть возможность все легко исправить. Также есть досадный факт, что вы не можете изменить использующийся тип шифрования в FZS.
Вы можете задать вопрос: "Так, как мы узнаем, что это маршрутизатор?". Взгляните на следующей лог, объяснение находиться под ним.

Пример лога ошибки 425

  1. (000015)12/28/2013 20:43:55 PM - (not logged in) (72.174.118.74)> Connected, sending welcome message...
    • (000015)12/28/2013 20:43:55 PM - (not logged in) (72.174.118.74)> SSL connection established
    • (000015)12/28/2013 20:43:55 PM - (not logged in) (72.174.118.74)> HOST **********.mooo.com
    • (000015)12/28/2013 20:43:55 PM - (not logged in) (72.174.118.74)> 500 Syntax error, command unrecognized.
  2. (000015)12/28/2013 20:43:55 PM - (not logged in) (72.174.118.74)> USER RCSTEST
    • (000015)12/28/2013 20:43:55 PM - (not logged in) (72.174.118.74)> 331 Password required for rcstest
    • (000015)12/28/2013 20:43:55 PM - (not logged in) (72.174.118.74)> PASS *********
    • (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> 230 Logged on
    • *Output Omitted*
  3. (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> AUTH SSL
    • (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> AUTH TLS
    • *Output Omitted*
  4. (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> MKD Cobian Backup 11 test directory-2013-12-28 20;43;42
    • (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> 257 "/Cobian Backup 11 test directory-2013-12-28 20;43;42" created successfully
    • (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> CWD Cobian Backup 11 test directory-2013-12-28 20;43;42
    • (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> 250 CWD successful. "/Cobian Backup 11 test directory-2013-12-28 20;43;42" is current directory.
    • (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> PWD
    • (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> 257 "/Cobian Backup 11 test directory-2013-12-28 20;43;42" is current directory.
    • *Output Omitted*
  5. (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> PROT P
    • (000015)12/28/2013 20:43:55 PM - rcstest (72.174.118.74)> 200 Protection level set to P
    • (000015)12/28/2013 20:43:56 PM - rcstest (72.174.118.74)> PASV
    • (000015)12/28/2013 20:43:56 PM - rcstest (72.174.118.74)> 227 Entering Passive Mode (84,25,240,74,206,88)
    • (000015)12/28/2013 20:43:56 PM - rcstest (72.174.118.74)> STOR Test file.txt
  6. (000015)12/28/2013 20:44:06 PM - rcstest (72.174.118.74)> 425 Can't open data connection for transfer of ""
  7. (000015)12/28/2013 20:44:17 PM - rcstest (72.174.118.74)> QUIT
    • (000015)12/28/2013 20:44:17 PM - rcstest (72.174.118.74)> 221 Goodbye
    • (000015)12/28/2013 20:44:17 PM - rcstest (72.174.118.74)> disconnected.

Согласно представленному выше логу, можно увидеть:

  1. FTP-клиент (Cobian Backup 11 в данном случае) устанавливает соединение с FZS используя стандартные порты 21 (без шифрования) или 990 (с шифрованием) в зависимости от настроек.
  2. FTP-клиент предоставляет FZS данные для аунтефикации (логин и пароль).
  3. Сервер и клиент устанавливают, что для дальнейшего соединения нужно использовать SSL.
  4. FTP-клиент делает запрос на создание директории. FZS создает ее и т.д.
  5. Теперь FZS и FTP-клиент используют пассивный режим (код 227)
    • FZS сообщает клиенту, что пассивные порты расположены на (84,25,240,74,206,88).
    • В расшифрованном виде это будет преобразовано в IP адрес 84.25.240.74 (первые 4-е группы чисел), номер порта 52824 (последние два множества чисел приравненные как: 206*256=52736+88=52824).
  6. Вот где проявляется ошибка 425.
  7. Соединение заканчивается без каких-либо передаваемых данных.

Следует помнить, что ваш лог можете отличаться по многим аспектам.

Мы нашли проблему, что теперь?

Решение: В маршрутизаторе вам необходимо открыть эти порты для зашифрованного трафика.

Разъяснения по DynDNS

Примечание: Обратите пристальное внимание к тому, что здесь написано.
Так что представляет собой этот DynDNS? Это сервис, который вы можете настроить, чтобы обойти ограничения, когда у вас динамический внешний IP-адрес или он изменяется время от времени, как в случае с большинством общественных IP-адресов предоставленных поставщиком услуг интернета.

Внешний IP-адрес

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

Внутренний vs внешний IP-адрес

Внутренний "частный" IP адрес сети "обычно" начинается с 192.168.X.X (где "Х" может варьироваться), и присваивается вашему компьютеру, чтобы он мог общаться с интернетом через внешний "публичный" IP адрес. Внешний адрес может быть каким угодно и в реальности, для этого руководства мы сделаем вид, что внешний адрес 84.25.240.74.

Инструкции для конкретных устройств

Apple Airport Extreme

  1. На вкладке сеть Airport Utility есть раздел под названием "настройки порта".
  2. Нажмите кнопку "+", чтобы добавить параметр, либо выберите "FTP доступ" в раскрывающемся списке, или добавьте его.
  3. Установите 21 (стандартный FTP порт) в "Private TCP ports" и "Public TCP Ports".
    • Примечание: Вам не нужны UDP порты, поскольку они не используются для FTP.
  4. В поле приватного IP-адреса укажите IP-адрес компьютера получателя (FTP-сервер).
    • Примечание: Настоятельно рекомендуется вводить статический IP-адрес на FTP сервер.
  5. Повторите шаг 3 и установите порт 990 (стандартный порт SSL).
  6. Повторите в последний раз шаг 3
    • Под портами TCP заполните диапазон пассивных портов FZS "60000-65000"
    • Используйте ваши порты FZS. Без пробелов и других символов.
  7. Примените настройки маршрутизатора и дайте ему возможность сделать перезагрузку.
  8. Проверьте соединение.