Порт 21 відкритий, але я не можу підключитися до FTP-сервера


0

У мене дуже базовий FTP-сервер, що працює в Windows 10. Зараз у мене немає проблем із доступом до цього сервера з моєї WLAN. Однак, коли я намагаюся підключитися за межами своєї мережі - використовуючи свій загальнодоступний IP на порт 21, я отримую повідомлення про помилку від Chrome, Windows Explorer, Mozzila, Filezilla тощо.

Я кілька разів перевіряв, і порт 21 відкрито за допомогою CanYouSeeme.org . Крім того, коли я роблю тест на FTP-тест, використовуючи свій публічний IP-порт на порту 21, все здається нормальним, я навіть отримую список директорій файлів, які в даний час я маю в робочому каталозі.

Що може бути проблемою?

Додаткова інформація: Я додав правило для FTP на своєму брандмауері, але тепер брандмауер вимкнено як для приватних, так і для публічних мереж.


Використовуєте пасивний чи активний FTP? Також ви відстаєте від перекладу мережевих адрес (NAT, який зазвичай використовується на маршрутизаторах)?
CBHacking

@CBHacking так, я за службою NAT. І в іншому я не впевнений, я просто створив службу FTP за допомогою менеджера Windows IIS.
гемат

Яке повідомлення про помилку ви отримуєте? Чи є у вас проблеми з підключенням або завантаженням списку / перенесення файлів каталогів? Чи можете ви показати нам файл журналу FileZilla?
Мартін Прикрил

Відповіді:


2

Я підозрюю, що ви використовуєте Active FTP. Активний FTP вимагає, щоб клієнт міг слухати через вхідний порт. Служба на зразок CanYouSeeMe, ймовірно, налаштована так, щоб підтримувати це, автоматично відкриваючи вхідний порт при необхідності. Однак, якщо ваш клієнт знаходиться поза NAT (що відрізняється від NAT на вашому сервері), він не зможе використовувати Active FTP, оскільки порт, який клієнт повинен слухати, не буде пересилатися з NAT маршрутизатора.

Щоб уникнути цієї проблеми, потрібно використовувати пасивний FTP. Пасивний FTP має клієнт ініціювати обидва з'єднання. Це означає, що клієнту не потрібно возитися з правилами вхідного брандмауера або переадресацією NAT-портів. Однак це також означає, що вам потрібно відкрити принаймні два порти на стороні сервера: порт команд FTP (21) і один або кілька портів даних FTP (який може бути чим завгодно вище 1024), а потім сказати серверу використовувати ці порти для даних. Ці порти повинні бути дозволені як в брандмауері (коли у вас це ввімкнено), так і пересилатися через NAT (якщо ваш сервер не працює в NAT DMZ. У цьому випадку весь несподіваний трафік передається йому, але ви дійсно повинні повернути брандмауер. Повернутися на).

Ця сторінка не є найкращим поясненням активного та пасивного FTP, але вона говорить про налаштування IIS для пасивного FTP, тому, можливо, це допоможе вам: http://www.velikan.net/iis-passive-ftp/


дуже дякую! Я завтра пострілю, але дуже дякую за ваш час. Те, що ви сказали, здається, має багато сенсу.
гемат

0

Пасивний FTP допомагає, якщо ваш клієнт знаходиться за NAT-шлюзом (або брандмауером). Active FTP допомагає, якщо ваш сервер знаходиться за NAT-шлюзом (або брандмауером). Ви не можете бути активними та пасивними в одній операції.

Ви можете зробити цю роботу, якщо один з двох NAT-шлюзів містить FTP ALG (шлюз додатків рівня), щоб дозволити роботі як активного, так і пасивного FTP. Рідко можна зустріти NAT-шлюз із кодом FTP ALG, щоб дозволити доступ до сервера позаду NAT через пасивний FTP, але дещо рідше знайти NAT-шлюз із кодом ALG, щоб внутрішній клієнт мав змогу виходити на зовнішній сервер через Active FTP

Більшість сучасних FTP-клієнтів за замовчуванням пасивні FTP. Якби я був ти, я б сказав своєму клієнту спробувати Active FTP, сподіваючись, що в шлюзі NAT, у якого знаходиться мій клієнт, є код FTP ALG у стилі клієнта у своєму коді NAT шлюзу.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.