Обновить

Почему FTP умирает, и нужно ли уже начинать его оплакивать

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели25K
Всего голосов 41: ↑41 и ↓0+58
Комментарии84

Комментарии 84

Использую для переписывания файлов с домашней файлопомойки в локальной сети + double commander. Очень удобно

Еще 20 лет назад перешел с FTP на SFTP. Вот тогда и надо было статью писать.

Лет 15 использую SFTP для доступа к данным на домашнем сервере. Есть в этом случае какие-то альтернативы?

У меня нет SFTP дома. Я читаю свои данные через связку VPN + SMB (Synology).

WebDAV

Можете посоветовать какой нибудь легкий сервер(не apach2)? К lighttpd клиенты не подключаются, что им надо так и не понял. nginx надо ставить расширенный, что как бы тоже не охота.

Давненько использовал hacdias/webdav

Спасибо, именно то что надо

Sftpgo

Angie

Samba?

FTP умирает

Без ftp будет грустно ...

НЛО прилетело и опубликовало эту надпись здесь

Дык а чего ему NAT, порт кастомный прокинул через роутер (при условии если белый ip).

Это только в passive mode.
Native mode делает обратный callback, который ломается от NAT, если нет специальных костылей.

А зачем использовать активный режим?

Потому что это и есть FTP ))
passive mode - это уже специальный костыль

Иногда даже он не помогает, судя по обращениям в техподдержку.

Для домашнего сервера есть vpn+smb. Для всего остального либо vpn+sftp(linux) либо vpn+rdp(windows).
FTP никогда не был удобным. Windows share (Samba) всегда была гораздо удобнее

FTP всегда удобнее Samba. Особенно если вы под Linux.

У меня сейчас debian 13 и Samba работает идеально. Я бы даже сказал что работает лучше чем в любой windows старше 10. Linux и Windows в домашней сети работают в абсолютной синергии

Ага, а права на файлы вы как передаете через Samba?
FTP почти нативно поддерживает файловые атрибуты.

права на файлы передаются стандартно там где они нужны через tar+bz2. В пользовательских файлах которые вы копируете (документы и прочее) вам нафиг не нужны linux файловые атрибуты (а права доступа у samba свои), а там где они нужны вам нужно копировать несколько файлов и tar решает вашу проблему

Если же вам нужна синхронизация, то в мире linux это решается через rsync+ssh

И кстати быстрее чем в windows, что заметно на многогигабитных сетях.

Если при копировании 60-80 гигового файла произойдет дисконект, в вашей ситуации докачать получится?

FTP никогда не был удобным.

Возможность докачки файлов (во всяком случае FTP без поддержки докачки мне не попадались).

Возможность докачки файлов для очень полезной была во времена dial-up. Сейчас этот же механизм работает из коробки в любом web-сервере (обработка http range запросов), Но для домашнего применения такая штука избыточна.

нестабыльный wifi делает её полезной и не избыточной :)

Сейчас протокол использует отдельные соединения для управляющего канала и для передачи данных, поэтому требует открытия дополнительных портов. Всё это приводит к исключениям в файрволах, настройке балансировщиков и постоянным проблемам на стыках.

Автор вы в коном году статью писали?

Два канала передачи данных это на баг а фича.

В отличии от рекламируемого вами http-based протоколов для передачи данных, ftp из коробки умеет передавать данные по частям при обрыве канала.

Попытайтесь дсистрибутив того же дебианатсаачать по плохому каналу, да ее и периодически прерывая соединение.

Ещё веселее, попытайтесь залить дистрибутив куда-нибудь на удаленный сервер при плохом канале и обрывах соединений.

Удачи….

Еже можете попробовать автоматизировать работу по загрузке/скачиванию файлов с помощью http решений - поделитесь опытом.

Вы о чем вообще?
Докачкой файлов по хттп мы пользуемся уже более четверти века. Если говорить более подробно о недостатках протокола, то отдельные каналы (их может быть не два!) зависящие от стейтфул контрол коннекшена и бедность функций в нем это основной недостаток протокола и почему от него стали отходить.

Надо понимать, что хттп это протокол уровня соединения, поэтому сравнивать его с файловым сервисом несколько не корректно. Зато хттп легко расширяется и на его базе значительно проще строить такие сервисы, которые нужно. И там все прекрасно автоматизируется.

Если вы в 2026 году что-то говорите про использование ftp, то возможно вам интересно будет узнать про такие вещи, как WebDAV или специальный вариант для файлопомоек - S3 (уже два десятка лет с нами!).

Ну давайте, разберем use case.

У меня клиенты в Китае - системы управления производством.

Доступ через VPN который из Европой ещё то удовольствие, поскольку Китайские товарищи свой великий фаервол обнят день и ночь.

Сервер под виндой. Мне туда надо дистрибутивы заливать регулярно и оттуда данные периодически скачивать для дебаггинга.

Что мне надо чтобы поднять там ftp или любое из ваших решений?

Для ftp: загрузить туда golang ftp server -около 2 Mb. И стартануть его.

Теперь ваш ход: давайте настроим там WebDAV или s3….

Выставляете наружу простой фтп с доступом до ключевых компонентов АСУТП? Серьёзно?

Повторюсь еще раз - мир не стоял на месте 30 лет, много что придумали и сделали удобного. Посмотрите, что такое ssh и работающие поверх нее rsync или rclone. Ну или на caddy на хрудой конец, если вот прямо хочется видеть "окошечко с файликами, как фтп".

Так у вас хотябы какой-то TLS будет, чтобы весьма критичные данные не торчали наружу голой задницей.

Опять же, rsync отродясь умеет докачки/перекачки/обновления файлов не так криво, как это реализовано в фтп.

Вы внимательно читали? Там vpn. Как вы планируете в закрытой сети сертификаты разорвать? Будете удостоверяющий центр настраивать?

ssh и file transfer over ssh, то бишь sftp

На виндовый сервер даже загружать ничего не надо, там ftp-сервер в составе IIS из коробки

универсальный вариант — sftpgo. Тоже один бинарник, но толще (15Mb). Но умеет в кучу протоколов.
точечный вариант — hacdias/webdav. Один бинарник (3.5Mb)

но, обычно всё проще — sftp ставить не нужно, ssh сейчас и в линукс, и в винде есть. Возможно нужно включить.

Я не знаю как это работает внутри, но когда в браузере (файрфокс) что-то скачиваю, то периодически наблюдаю забавный эффект. При обрыве связи файл может несколько раз продолжить скачиваться с прерванного места, а потом все ломается и скачивание начинается сначала. Не знаю, с чем это связано.

Автор вы в коном году статью писали?

Автор не писал эту статью, обращаться не имеет смысла.

Не нужен никакой отдельный клиент. explorer.exe отлично открывает ftp. И с nat нет никаких проблем, если ftp выставлен наружу как надо. А с клиентской стороны PASSV решил все вопросы тыщу лет назад. А вопросы безопасности решаются организационно - отдельной базой юзеров, чрутом и разделением аплоада и даунлоада.

Почему FTP умирает

Кто такое сказал? Не вижу чтобы в статье на этот счет были подробности.

Максимум что с ним стало, так это то, что его крайне редко стали использовать обыватели.
(Они просто смекнули, что Облачные диски и ФайлоОбменники куда проще для обмена файлами)

Debian закрыл публичные FTP-зеркала

Они перешли на HTTP, так как у него по сравнению с FTP ++Возможностей и --Гемороев.

Google несколько раз откладывала решение, но в итоге полностью удалила поддержку

Правильно, FTP обыватели мало используют и его муторно поддерживать и невозможно продавать. (Другое дело Google Drive)

FireFox, Яндекс Браузер, Edge, ...

Им это просто не нужно, т.к. полно полноценных клиентских FTP приложений (тот же FileZilla) которые обрели массовую популярность и которых по функционалу просто бессмысленно пытаться догонять.

Можно и дальше тыкать пальцем по пунктам данной статьи, которая собственно из этого же пальца и высосана, но нужно заканчивать и тут как нельзя кстати подойдут слова из фильма Джон Уик.

А, FTP такой читает статью и говорит: I have served. I will be of service.

Оспаривая тезис о том, что FTP умирает, вы привели много неоспоримых доводов, почему FTP умирает.

Вчера только по фтп на хостинг сайт заливал файлзиллой. У любого хостера он есть, фтп.

Как так !?
Из-за таких как ты FTP до сих пор не может помереть и упокоиться на задворках истории )))

Вот из-за ретроградов и есть до сих пор.

Оплакивать? Да он недостижим по "аптайму" любому из современных протоколов. Надо кричать ава!

Постоянно только им и пользуемся для разработки продвижения и обслуживания сайтов.

Других доступов обычно нет. Самый удобный способ. Открыл VS Code, подключился через расширение FS Remote по ftp.

Ssh не каждый может предоставить. Из 50 по-моему только двое смогли дать ssh.

Единственная причина, по которой умирает FTP - безрукие погромисты Google, которые не сумели/не захотели его полноценно реализовать. Или, как вариант, безголовые менеджеры Google, которые продавили это. Плюс монополия движка в мире современных браузеров.

Протокол сам по себе живее всех живых. Что, если Вам нужно иметь стабильную возможность забирать с рабочего компьютера большие файлы (допустим, образы развёрнутых OS с предустановленным/преднастроенным софтом)? Или, скажем, в области полиграфии, загрузить/забрать пару десятков файлов, каждый по 5G? FTPS чудесно работает, тем более с появлением/тотальным внедрением LetsEncrypt.

ProFTPD чудесно умеет аутентифицироваться через mySQL, LDAP, Windows Domain. FileZilla Pro Server то же самое - умеет локальных пользователей, умеет системных - и всё это настраивается быстрее и гораздо удобнее, чем apache/nginx, тем более с закачкой/докачкой.

А идею отказа от FTP толкают исключительно продавцы облаков - типа хранить свои файлы не пойми у кого, кого завтра братки закроют/арестуют - ни разу не опасно, а качать по FTPS со своего рабочего/домашнего компьютера - ужас как опасно.

Вроде как FTPS это не совсем FTP.

Вы не путаете, случайно, FTPS (т.е. FTP + SSL) с SFTP (который часть SSH2)? А то так можно договориться до того, что HTTPS это не совсем HTTP, IMAPS не совсем IMAP, POP3S не совсем POP3, а SMTPS не совсем SMTP :-)

FTPS - это FTP + implicit/explicit SSL. Implicit SSL обычно "вывешивают" на порт 990, explicit работает как расширение на стандартном порту. Обычно некоторым пользователям (тому самому anonymous) дают качать без SSL, а всем остальным нужен SSL.

Для визуализации составил таблицу:

Таблицы любят учителя истории и нейронки.
И я сильно сомневаюсь, что эту статью писал учитель истории.

Приветствую чудное поколение зумеров!

А какие ему альтернативы?

  • Samba - хорошо работает только на винде, в остальных местах с костылями и проблемами.

  • NFS - работает только в линуксах, в остальных случаях или не поддерживается, или требует грязных хаков. Да и в линуксах при не очень стабильном канале клиент склонен к глухому зависанию до перезагрузки.

  • FTP - работатет хорошо везде, на всех платформах. Нет шифрования, но не нужно - в интернете FTP использовать уже сто лет как страшный харам, зато для приватных сетей самое то.

  • Webdav - во многих случаях есть косяки реализации, например, в винде кеширует списки файлов, и потом не показывает изменения.

  • S3/hdfs/... - кровавый ынтерпрайз, сложный в настройке и поддержке, да и не предназначеный для файлопомоек.

  • ssh - красиво, но медленно, и в отдельных сценариях небезопасно (при косяках с нстройкой пользователь получает доступ к шелу)

Больше ничего как-то и не завезли...

Вот-вот. Самба была бы идеальна, если бы на виндах не чудила как сволочь (совместный доступ, зомби-коннекты, которые держат файл, мистические косяки с правами и тд). На линухе только как клиента пробовал, есть ли сервер?

WebDAV? Вроде и неплохая идея, но попробуй найти клиента или в программе реализовать.

А HTTP для файловых хранилищ - ужасен по причине отсутствия стандарта на листинг, а также отсутствие понятий "папка" и "файл" в принципе. Да, тыкнуть в браузере можно, но автоматизировать закачки с него по определенным критериям - это ад. К примеру, чтобы выкачать 10 новых файлов без предзнания о формате листинга, надо получить список ссылок на них, выполнить 10 HEAD-ов, вытащить оттуда Modified и уже тогда начинать качать.

Да, FTP очень неудобен своим устройством с двумя каналами, всеми этими портами и сложностью синхронизации между ними, но при всей этой критике ничего сравнимого по простоте так и не создали.

Far Manager с плагином NetBox (давно входит в стандартный дистрибутив), Ваш выход, клиенту нужен WebDAV клиент!

P.S. far2l for linux тоже умеет в webdav. И FileZilla под всеми OS

>И FileZilla под всеми OS

Только платная. Насчет остального спасибо, не знал

На линухе только как клиента пробовал, есть ли сервер?

Samba.

1) Самба под линукс есть. Пакет так и называется. Имеет смысл для локалок без особого разграничения доступа, либо для случая, когда есть AD, сервер с самбой подключен к нему и всё рулится через AD. В промежуточных случаях обычно двойной геморрой с заведением пользователей в двух местах и разграничением доступа.

2) Помнится, в старых виндах можно было подключить webdav как сетевой диск. Не знаю, как в 10-11 сейчас.

3) для хостинга всё ж лучше всего sftp — с ним тупо нет обращений на тему "сменили провайдера и чего-то теперь не загружаются файлы" и шаманства "включите пассивый режим, не работает — включите активный". Да и на пропадание буквы "я" в виндовой кодировке до сих пор некоторые наступают.

NFS - работает только в линуксах, в остальных случаях или не поддерживается, или требует грязных хаков. Да и в линуксах при не очень стабильном канале клиент склонен к глухому зависанию до перезагрузки.

Иcпользуйте опцию soft при mount и вы избежите такого поведения.
Samba, нужно отдать должное, уже довольно стабильна. Там где невозможно применить NFS, использую.

А как в nfs сделать discovery по ресурсам внутри сети? Можно ли как нибудь avahi и automount приделать? А то не хочется пердолится с экспортами

1) ftp не работает хорошо, если сравнивать с тем же sftp, к сожалению. Иначе бы в техподдержку не было СТОЛЬКО обращений именно по проблемам с загрузкой сайтов по ftp именно из-за двух соединений для единственного сеанса. Статистика обращений клиентов против вашего тезиса.
2) если нужен чистый sftp-сервер без шелла — используем чистый sftp-сервер (к примеру, sftpgo), а не openssh, где шелл — основное, а sftp — отдельно.

Если нужен чистый sftp без шелла просто запрещаем пользователю шел.

Можно и так. Но есть нюансы типа "один аккаунт, несколько разных пользователей, однму шелл, другому только файлы". В целом решаемо, конечно. Но человек хотел меньше геморроя.

Да. Я использую FTP на смартфоне довольно часто, когда надо передать небольшие файлы между компом и смартом. По WiFi (FTP-сервер на смартфоне + Total Commander на ПК) это проще, нежели с кабелем в USB тыркаться.

я тоже извращенец ;)

но быстрее файл кинуть в saved messages телеги и тут же открыть его на мобильнике.

вообще пофиг есть ли у вас там вайфай, в одной ли вы подсети.

так же работает с телефонами жены и дочери на которых всяких хитрых серверов не стоит ;)

Для android есть "быстрая отправка" прямо в шторке смартфона и её клиент под windows, вроде под linux и mac тоже есть.
Как будто несколько проще чем поднимать сервер, и главное работает из меню share на смартфоне. Но есть и минус - зачем-то нужно чтобы на пк был bluetooth (хотя у меня заводилось и без этого, но только в одну сторону).

Total Commander на смартфоне + виндовая шара на компе не проще?

Я для этого Warpinator пользуюсь.

Из минусов только так и не понял, как принудительно указать IP другого устройства в клиенте. Работает только автообнаружение, которое работает не всегда стабильно.

Забыта самая главная суть FTP, из-за которой он и стал умирать: этот протокол изначально не требует отдельного FTP-клиента(!). Весь контроль осуществляется стандартным telnet-клиентом, а передача файлов - между двумя сторонними серверами. В этом и был смысл танцев вокруг второго соединения для данных.

Как только вопросы безопасности и шифрования стали становиться актуальными такой подход резко потерял смысл. Но по инерции ещё лет 10 развивались его клиенты и сам протокол обвешивался свистелками, хотя фундаментального смысла в дополнительном соединении для данных уже не было, а проблемы создавало - и потому он (концептуально) сдох уже в 1994.

Исчезал же он медленно (даже казалось что он развивается!) потому что это совпало с периодом взрывного роста интернета.

Кто бы знал, что в 2026-м году самым удобным способом для перекидывания кучи файлов с компа на телефон для меня будет ФТП. При условии, что с телефоном нужно ходить по квартире и делать дела. Скорость, стабильность, удобство работы с файлами в любимом двухпанельном стиле

Если это смартфон на андроид, а на пк есть bluetooth - то как будто "быстрая отправка" - гугловское приложение, встроенное в андроид смартфоны, может быть по удобнее. Но да, там нет двухпанельности, и возможности выбрать сразу куда положишь файл с пк)

Очевидно, старый добрый FAR удобнее.

Однако при ограниченной ёмкости канала по ftp качается раз в пять быстрее чем по webdav.

Особенно сильно FTP/SFTP не нужен продавцам облаков и подписок. Им и фотографии не нужны, подписывайся и к ним заливай. И текстовые файлы и музыка, и видео устарели и умирают. Только не отменяй подписку! Они тебе и операционную систему и трансляцию игр потоком хотят отдавать по подписке. А про всё остальное расскажут, что устарело. И деже машины устарели, у них арендуй и отваливай за каждую царапину. И жильё своё устарело, только снимай по подписке. И даже работа твоя устарела, нейросеть по подписке её заменит. Ну и продуктов закажи по подписке за цифровые деньги...

Облако - это про делегирование хранения и синхронизации, а ftp про передачу данных - одно "мягкое", другое "тёплое". Сказать "продавцам облаков нужна смерть FTP" - это как сказать - продавцам отелей нужна смерть автобусов. И там и там - внутри люди, но совершенно разные цели.
Облако - решает проблемы автоматической загрузки данных, синхронизации, и "безопасного" хранения, а ftp - только передачу.

Не имея провода - перекидываю файлы между телефоном и ПК (с ограничениями конечно, например не получится перекидывать файлы из / в системные папки (например android/media/com.whatsapp/whatsapp/.../...)

Вам тоже порекомендую посмотреть в сторону "быстрой отправки" если у вас смартфон на android. Она встроена в систему, поддерижвается из диалога share, и легковеснее. Но это чисто передача файла, без браузинга и требует bluetooth на пк. Тоже раньше поднимал ftp и перекидывал файлы через него, но как узнал что в систему встроена такая фича - пользуются в основном ей теперь.

Для массового потребителя умирает, многие такой аббревиатуры уже не знают. А у меня современная промышленная камера фотографии дефектов складывает на современный сервер для анализа отбраковки по FTP. Сейчас много протоколов широко известных в узких кругах. Просто FTP постепенно таким и станет.

Коллеги, посоветуйте, пожалуйста, надежный корпоративный FTP-сервер (рассматриваем и коммерческие решения).

Proftpd нам не подошел. Pureftpd работает стабильно, также изучаю вариант с SFTPGo. Однако нам требуется более серьезное решение, учитывая, что объем данных в ближайшее время приблизится к петабайту.

Пока не рассматриваем полноценные MFT-платформы, они для нас избыточны. Нужен простой и надежный инструмент.

У меня уже есть список вариантов, и я его изучаю, но буду благодарен за рекомендации, основанные на практическом опыте.

А почему просто не использовать ssh и sftp ?

По моему мнению, так ставить вопрос неправильно.

Это всего лишь способ передачи данных (FTP, SFTP, Web, WebDAV и так далее).

Нужно искать полноценное корпоративное решение.

SFTPGo в целом выглядит неплохо, но он какой-то чрезмерно сложный конструктор.

Забыли самое лентяйское применение ФТП "прошлых лет" - публичный открытый для залива фтп - и тебе сразу нальют фильмов/вареза, главное - "вовремя отключиться" :)).

до сих пор заливаю файлы на хостинг по ftp, прямо из total commander, это же очень удобно.

"Проблема" ftp в том, что он... слишком простой! Прям как в учебнике информатики для непрофильных классов, где рассказывается про основы работы компьютерных сетей. Вот адрес, вот соединение, вот файл - бери и передавай информацию, попутно решая задачки про биты в секунду. Соответственно, все его "недостатки" - это следствие переусложнения прочего ПО и протоколов.

проще отдать ссылку по HTTPS и положиться на браузер. Такой подход позволяет использовать кэширование, зеркала и CDN, а серверу — масштабироваться без экзотических настроек

Вот об этом и речь. И это, в принципе, отнюдь не плохо - наоборот, прогресс, усложнение механизмов ради производительности, усовершенствование! Проблема в том, что для простых задач, в которых нет хайлоада, всё это избыточно.

Если вы в промышленных масштабах выпускаете изделия с креплением на гвоздях, то вам нужен современный и скоростной механизм для забивания гвоздей - масштабируемый, защищённый от попадания пальцев, высокоскоростной... Но если вам просто нужно иногда забивать гвозди, то вам лучше подойдёт обыкновенный молоток, изобретённый тысячи лет назад и с тех пор совершенно не устаревший. А то, что у старых молотков некрасивая деревянная ручка, а у новых - удобная пластиковая, так это UI, его можно и нужно улучшать.

в среде, где повсеместно используется HTTPS

HTTPS вообще много на что повлиял не в лучшую сторону. Не абсурд ли - простейший сайт не может открыться из-за того, что на компе не настроены часы!

Через фтп обновляется 200 клиентов авп - стабильная связка, которая прекрасно работает уже не первый год. И "помирать" пока не собирается -). Применяем к месту, получаем профит...

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
ruvds.com
Дата регистрации
Дата основания
Численность
11–30 человек
Местоположение
Россия
Представитель
ruvds