
Те, кто застал эпоху диалап-модемов, знают о нём не понаслышке. Через FTP передавали файлы, заливали первые сайты на хостинги и по ночам скачивали драйверы — другого варианта тогда просто не было. Сейчас ссылки с ftp:// почти не встречаются, а сам протокол всё чаще вспоминают только при разборе легаси-систем. Под катом расскажу, почему один из столпов интернета фактически доживает свой век, и пора ли готовить для него прощальную речь.
Полвека на службе
Разработка FTP началась ещё во времена ARPANET. Первый стандарт протокола появился в 1971 году, задолго до того, как интернет стал массовым. Тогда это был просто удобный способ передавать файлы между узлами сети.
К 80-м и особенно к 90-м FTP стал привычным инструментом. Через него выкладывали файлы в открытый доступ, поднимали публичные архивы и раздавали софт. Так появилось понятие anonymous FTP — серверы, на которые можно было зайти без пароля и скачать нужные программы, дистрибутивы Linux, драйверы или документацию.

Компании поднимали собственные FTP-серверы для обмена данными между филиалами и партнёрами, а хостеры почти поголовно выдавали клиентам FTP-доступ. До появления нормальных веб-интерфейсов и тем более облаков альтернатив этому почти не было.
У сисадминов того времени были и свои культовые инструменты. WS_FTP под Windows, а позже FileZilla и похожие клиенты, через которые вручную подключались к серверу и управляли файлами. Даже первый интернет-поисковик Archie, запущенный в 1990 году, занимался индексированием файлов именно на FTP-серверах.
К концу 90-х FTP использовали для передачи больших (по тем меркам) файлов, когда почта уже не справлялась. Но веб стремительно развивался, скорости росли, а требования к безопасности становились жёстче.

К нулевым FTP начал обрастать расширениями и улучшениями, но по сути уже начал считаться «устаревшим» (в кавычках, потому что для меня это слово ассоциируется с клеймом). На это есть ряд объективных причин:
Почему FTP устарел
Отсутствие шифрования
Одна из главных проблем FTP заложена в самом протоколе — передаваемые данные не шифруются. По сети в открытом виде идут и файлы, и данные учёток. Для того времени это не считалось чем-то необычным, но в современной инфраструктуре такой подход неуместен.
Более того, FTP не проектировали с расчётом на защиту трафика, поэтому в среде, где повсеместно используется HTTPS, а требования к приватности и безопасности давно выросли, классический FTP — уязвимое звено. В 2017 году ФБР даже выпускало предупреждение для медицинских организаций, указывая, что атакующие целенаправленно ищут незащищённые FTP-серверы клиник.

Проблемы безопасности FTP не ограничиваются только отсутствием шифрования. Архитектура протокола при атаке FTP bounce attack может передать серверу команду PORT с произвольным IP-адресом. В результате FTP-сервер пытается установить соединение не с клиентом, а с указанным узлом. В прошлом хакеры использовали это для сканирования внутренних сетей или обхода правил доступа, если трафик от FTP-сервера считался доверенным.
Конечно, современные реализации вроде vsftpd или ProFTPD по умолчанию блокируют такие команды, да и на практике подобные атаки давно не являются массовой проблемой, но сам факт их существования хорошо иллюстрирует ситуацию с FTP.
Проблемы с сетевой инфраструктурой
FTP изначально проектировали для сети без NAT и сложной фильтрации трафика. Сейчас протокол использует отдельные соединения для управляющего канала и для передачи данных, поэтому требует открытия дополнительных портов. Всё это приводит к исключениям в файрволах, настройке балансировщиков и постоянным проблемам на стыках.
Даже в простом сценарии с домашним роутером классический активный FTP без дополнительной настройки не работает. Соединение для передачи данных не проходит через NAT — именно поэтому появился пассивный режим и другие обходные механизмы, позволяющие клиенту инициировать все соединения самостоятельно. Это решает часть проблем, но не меняет базовую архитектуру протокола.

В 2005 году рабочая группа IETF FTPEXT попыталась добавить к FTP поддержку шифрования, что привело к появлению FTPS, описанного в RFC 4217. Стандарт закрепил явный режим работы, при котором клиент подключается к порту 21 и переводит управляющий канал в зашифрованное состояние командой AUTH TLS. Однако сейчас из-за шифрования управляющего канала роутеры и файрволы теряют возможность анализировать FTP-команды, а работа за NAT требует ручной настройки пассивных диапазонов портов и пробросов на всех промежуточных узлах.
К слову, неявный вариант FTPS с отдельным портом, обычно 990, появился ещё до RFC 4217 — как практическое решение и широко использовался де-факто. В самом стандарте IETF этот подход не закреплён и считается устаревшим, тогда как предпочтение отдаётся явному режиму с AUTH TLS.
Проблему с NAT пытались решить и производители сетевого оборудования. Они внедрили в роутеры FTP ALG, который позволяет не просто пересылать пакеты, а анализировать FTP-команды на прикладном уровне, подменяя адреса и порты в управляющем канале. Работоспособно, но механизм сразу перестаёт работать при включении шифрования управляющего канала.
В Linux для FTP вообще появился отдельный «костыль» — модуль ip_conntrack_ftp. Он анализирует FTP-команды в управляющем канале, извлекает IP-адреса и порты для передачи данных и динамически пробрасывает их через firewall. Однако модуль нарушает границы сетевых уровней, плохо переживает нестандартные сценарии и полностью ломается при включении шифрования управляющего канала.
Неэффективность
FTP сложно ускорять и масштабировать. В протоколе нет механизмов кэширования и поддержки CDN, поэтому он плохо приспособлен для массовой раздачи данных. Из-за этого нагрузка на FTP-инфраструктуру распределяется неравномерно, а скачивание крупных файлов нередко идёт медленнее, чем по HTTP или HTTPS.

С точки зрения эксплуатации FTP тоже выглядит тяжеловесно. Для работы нужны отдельные клиентские программы, логины, пароли и понимание того, как вообще устроено соединение. По удобству развёртывания и масштабирования FTP-сервер также проигрывает современным решениям.
Стагнация разработки и падение востребованности
В последние годы FTP-клиенты и серверы почти не развиваются. Большинство проектов давно в режиме поддержки — обновления выходят редко и, как правило, только при обнаружении критических уязвимостей. Новых возможностей не появляется, а интерес к протоколу со стороны разработчиков постепенно сошёл на нет.
Все вышеперечисленные проблемы привели к тому, что от FTP начали отказываться. В 2017 году проект Debian закрыл публичные FTP-зеркала, указав на низкую популярность протокола и сложности с его сопровождением. К тому моменту установщик Debian уже давно не предлагал выбирать FTP-зеркало — пользователей такого сценария просто не осталось.
Почти одновременно начался процесс выпиливания FTP из браузеров. Google несколько раз откладывала решение, но в итоге полностью удалила поддержку ftp:// в Chrome, начиная с 88 версии в 2021 году. С середины 2021 года Firefox также перестал работать с FTP, ссылаясь на соображения безопасности и устаревший код. Не поддерживают протокол уже и «Яндекс Браузер», и даже Microsoft Edge.

Если раньше FTP-сайт можно было открыть прямо в окне браузера, то сейчас для этого требуется отдельный клиент или специальные обходные решения. Для массового пользователя протокол просто исчез из повседневного опыта.
Параллельно удалили архивы драйверов и обновлений на ftp.hp.com, ftp.adobe.com и подобных ресурсах. Им на смену пришли веб-порталы и CDN, которые проще масштабируются и не требуют от пользователя отдельного инструментария. Предчувствуя закрытие архивов, их архивированием занялись энтузиасты.
Однако FTP ещё можно встретить и сегодня…
Ещё жив, но смена подросла
Есть узкие области, где он задержался дольше остальных. Например, TFTP — упрощённый вариант FTP — до сих пор используется для загрузки прошивок и конфигураций сетевого оборудования, в том числе в сценариях PXE-загрузки. Правда, такие решения работают почти исключительно в локальных сетях и решают строго прикладные задачи. Кроме того, протокол выбирают по иным причинам:
В инфраструктурах всё ещё достаточно много старых приложений и скриптов, изначально заточенных под FTP. Если обмен файлами между двумя устаревшими системами уже настроен и не доставляет проблем, менять его часто нет ни желания, ни бюджета.
Зачастую FTP можно встретить и в промышленной среде (для передачи логов, конфигураций или прошивок между контроллерами или ЧПУ-станками), и в офисах, где админы поднимают внутри сети FTP-сервер для приёма сканов с МФУ, и даже в медоборудовании.
Кроме того, FTP до сих пор привлекателен своей концепцией — открытый протокол, множество бесплатных клиентов и минимум требований к настройке, если не задумываться о защите. Начинающие разрабы нередко продолжают загружать сайты на хостинг по FTP просто потому, что так написано в старых инструкциях. Популярные CMS вроде WordPress и Joomla до сих пор поддерживают обновления через этот протокол, а некоторые провайдеры выдают FTP-доступ по умолчанию.
В итоге FTP ещё какое-то время будет существовать фоном. Но у каждого сценария использования FTP сегодня есть современная замена. Например, для защищённой передачи файлов администраторы давно предпочитают SCP или SFTP — решения на базе SSH. Если доступ по SSH уже есть, файлы передаются по тому же каналу, без открытия дополнительных портов и без передачи паролей в открытом виде. Близкий по идее FTPS широкого распространения так и не получил.
А когда речь идёт о раздаче файлов пользователям, проще отдать ссылку по HTTPS и положиться на браузер. Такой подход позволяет использовать кэширование, зеркала и CDN, а серверу — масштабироваться без экзотических настроек. HTTP изначально проектировался в том числе как более удобная альтернатива FTP для массового скачивания, и со временем полностью вытеснил его из публичного интернета.
Для автоматизированных сценариев появились свои инструменты — объектные хранилища вроде S3 изначально создавались не для людей, а для сервисов и скриптов. Они лучше вписываются в современную инфраструктуру.
Для визуализации составил таблицу:
Характеристика |
FTP |
FTPS |
SFTP |
HTTPS / S3 (можно было бы разделить, но поставил так) |
Транспорт |
TCP (21/20 + range) |
TCP (21/990 + range) |
TCP (22) |
TCP / QUIC (443) |
Проход через NAT |
Проблемный (активный/пассивный, ALG) |
Очень проблемный (ALG не работает из-за TLS) |
Без проблем |
Без проблем |
Шифрование |
Нет |
TLS |
SSH |
TLS |
Архитектура |
Control + data каналы |
Control + data каналы |
Один канал |
Один канал |
Масштабирование |
Плохое |
Плохое |
Среднее |
Хорошее (CDN, кеши) |
Скорость (LAN) |
Высокая |
Высокая (overhead TLS) |
Средняя (CPU) |
Высокая |
Скорость (WAN) |
Зависит от сети |
Зависит от сети |
Зависит от буферов SSH |
Высокая (HTTP/2, HTTP/3) |
Аутентификация |
Пароль (часто plaintext) |
Пароль + TLS |
SSH-ключи |
Токены, OAuth2, IAM |
Где применяется |
Легаси, внутренние сети |
Легаси с требованиями ИБ |
Администрирование |
Пользователи и сервисы |
Кроме того, облачные хранилища и мессенджеры закрывают большинство сценариев без какой-либо настройки. Вряд ли сегодня кто-то станет поднимать FTP-сервер, чтобы передать пару фотографий.
Похожая ситуация и с веб-хостингом. Вместо ручной загрузки файлов по FTP всё чаще используют панели управления с веб-интерфейсом, деплой через Git и CI/CD или встроенные механизмы хостинга.
Долгая жизнь и тихий уход
FTP прожил долгую жизнь и сыграл заметную роль в становлении интернета. За это время сменилось не одно поколение технологий, и сегодня его место заняли более подходящие инструменты.

Нужно ли оплакивать? Нет, для большинства пользователей исчезновение этого протокола пройдёт незаметно, а для сисадминов скорее станет облегчением — одной устаревшей и небезопасной технологией станет меньше. Что ж, поднимем кружку кофе за старичка FTP.
А вы ещё используете FTP-сервер? Если да — для чего, если нет — делитесь историями, связанными с этим протоколом.
© 2026 ООО «МТ ФИНАНС»
horribile
Использую для переписывания файлов с домашней файлопомойки в локальной сети + double commander. Очень удобно