Ответ
FTP использует несколько портов в зависимости от режима работы:
- Порт 21 (TCP) — Канал управления (Control Channel). Используется для отправки команд (LOGIN, LIST, RETR) и получения ответов сервера.
- Порт 20 (TCP) — Канал данных (Data Channel) в активном режиме (Active Mode). Сервер сам инициирует соединение с клиента для передачи файлов или списков каталогов.
Пассивный режим (Passive Mode) решает проблемы с фаерволом на стороне клиента:
- Клиент подключается к порту 21 для управления.
- Клиент отправляет команду
PASV. - Сервер отвечает, открыв случайный высокий порт (например, 49152) и сообщая его клиенту.
- Клиент инициирует второе соединение к этому случайному порту для передачи данных.
Пример проверки доступности FTP-сервера:
# Проверка канала управления
telnet ftp.example.com 21
Важно: Для работы FTP в активном режиме фаервол клиента должен разрешать входящие соединения на высокие порты. Пассивный режим часто предпочтительнее, так как все соединения инициирует клиент.