Подробный гайд по настройке FTP через ViPNet HW5
Проблема, когда межсетевой экран (МЭ) ViPNet Coordinator HW5 «не пропускает» FTP, является классической.
Она возникает из-за архитектуры самого протокола FTP, который использует два отдельных соединения:
- Командный канал (обычно порт 21) — для авторизации и передачи команд.
- Канал данных (динамические порты) — для передачи самих файлов и списков директорий.
Если МЭ пропускает порт 21, но блокирует канал данных, клиент успешно подключается, но зависает на этапе получения списка папок (LIST) или передачи файла.
Шаг 1. Диагностика: Что именно блокирует ViPNet?
Прежде чем менять правила, нужно понять, на каком пакете происходит обрыв.
- Зайдите в веб-интерфейс или консоль управления ViPNet Coordinator.
- Перейдите в раздел Мониторинг -> Журнал пакетов (или Сетевой экран -> Журналы -> Пакетный фильтр).
- Запустите мониторинг (режим реального времени) и попробуйте подключиться по FTP с клиента.
- Отфильтруйте лог по IP-адресу FTP-клиента или FTP-сервера.
- Посмотрите на отброшенные (DROP) пакеты.
- Если блокируется порт 21 — проблема в базовых правилах доступа.
- Если блокируются порты >1024 (эфемерные порты) — проблема в настройке динамических каналов данных (ALG или Passive-режима).
Шаг 2. Выбор режима FTP (Активный vs Пассивный)
Для современных МЭ, включая ViPNet, настоятельно рекомендуется использовать Пассивный режим (Passive FTP / PASV).
* Активный FTP:
Сервер сам подключается к клиенту на случайный порт. МЭ клиента (или ваш HW5, если клиент за ним) воспринимает это как внешнюю атаку и блокирует (Default Drop).
* Пассивный FTP:
Клиент всегда сам инициирует оба соединения (и на 21 порт, и на порт данных). Это безопаснее и легко настраивается на МЭ.
Убедитесь, что в вашем FTP-клиенте (FileZilla, WinSCP, Total Commander) в настройках соединения выбран Пассивный режим (Passive).
Шаг 3. Настройка для ИСХОДЯЩЕГО трафика (Клиент внутри сети, сервер в Интернете)
Если ваши сотрудники находятся за ViPNet HW5 и пытаются скачать/загрузить файлы на внешний FTP-сервер.
- Использование ALG (Application Level Gateway): ViPNet HW5 поддерживает инспекцию состояний (Stateful Inspection) и ALG для FTP. ALG «читает» трафик на 21 порту, видит, какой порт сервер выделил для данных, и временно «пробивает дыру» в firewall для этого порта.
- Создание правила МЭ:
- Источник: Внутренняя сеть (или конкретный IP клиента).
- Назначение: Внешний FTP-сервер (или ANY).
- Протокол/Служба: ВАЖНО! Выбирайте из списка предустановленных служб именно FTP, а не просто создавайте кастомный
TCP 21. Если вы выберете простоTCP 21, механизм ALG может не сработать, и динамические порты не откроются. - Действие: Разрешить (Accept).
Шаг 4. Настройка для ВХОДЯЩЕГО трафика (Публикация FTP-сервера во внешний мир)
Если FTP-сервер находится в вашей локальной сети (за HW5) и к нему подключаются внешние клиенты. Это самая частая причина проблем.
Вам обязательно нужно использовать Passive FTP и жестко задать диапазон портов для канала данных.
На стороне FTP-сервера (FileZilla Server, IIS, vsftpd, ProFTPD):
- Зайдите в настройки FTP-сервера.
- Найдите раздел Passive Mode Settings (Настройки пассивного режима).
- Жестко задайте диапазон портов (например,
50000 - 50100). - Впишите внешний (белый) IP-адрес вашего ViPNet HW5 в поле External Server IP / Passive IP (иначе сервер будет отдавать клиентам свой серый внутренний IP, и соединение зависнет).
На стороне ViPNet Coordinator HW5:
- Настройка NAT (Проброс портов / Port Forwarding):
- Создайте правило DNAT (или Virtual Server), которое пробрасывает порт
21с внешнего интерфейса HW5 на внутренний IP FTP-сервера. - Создайте второе правило NAT, которое пробрасывает диапазон
50000 - 50100(TCP) с внешнего интерфейса на тот же внутренний IP FTP-сервера.
- Создайте правило DNAT (или Virtual Server), которое пробрасывает порт
- Настройка правил МЭ (Фильтрация):
- Источник: ANY (или конкретные подсети клиентов).
- Назначение: Внутренний IP FTP-сервера (или объект сети).
- Служба: Создайте кастомную службу или группу служб:
TCP 21+TCP 50000-50100. - Действие: Разрешить.
Шаг 5. Проблема FTPS (FTP over TLS / SSL)
Если вы используете FTPS (FTP с шифрованием TLS), ALG на ViPNet HW5 работать НЕ БУДЕТ.
- Почему? Межсетевой экран не может расшифровать командный канал (порт 21), чтобы узнать, какие порты сервер и клиент согласовали для передачи данных.
- Решение: При использовании FTPS работает только метод, описанный в Шаге 4. Вы должны жестко закрепить диапазон пассивных портов на сервере и открыть их на МЭ вручную. Динамическое открытие портов через ALG при шифровании невозможно.
Шаг 6. Проверка модулей UTM (IPS и Анивирус)
ViPNet HW5 — это UTM-шлюз. Если включены модули глубокого анализа трафика, они могут резать FTP-сессию:
- IPS (Система предотвращения вторжений): Убедитесь, что в политиках IPS не блокируются сигнатуры, связанные с FTP (иногда ложные срабатывания происходят на команды
PORTилиPASV). - Антивирус / Контентная фильтрация: Если включено сканирование FTP-трафика на лету, попробуйте временно отключить его в правилах для теста. Если FTP заработает, добавьте IP-адреса FTP-сервера в исключения (белый список).
Чек-лист для быстрого решения (TL;DR):
- [ ] Клиент переведен в Passive Mode (Пассивный режим).
- [ ] В правиле МЭ используется системная служба FTP (для работы ALG), а не просто TCP 21.
- [ ] Если сервер внутри сети: На FTP-сервере задан фиксированный диапазон Passive-портов (например, 50000-51000).
- [ ] Если сервер внутри сети: На ViPNet настроен NAT и Разрешающее правило МЭ на этот же диапазон (50000-51000).
- [ ] Если используется FTPS (TLS): ALG не работает, порты открываются только вручную (пункты 3 и 4 обязательны).
- [ ] Проверен Журнал пакетов (Packet Filter Log) на предмет отброшенных пакетов (DROP).
Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.