Вот меня всегда интересовало, а какой дурень придумал протокол FTP?
Это каким местом нужно было думать, чтобы додуматься до ЭТОГО?
У меня такое ощущение, что изобретатели основных интернет-протоколов (и не только сабжа) думали не головой, а одним местом.
Q>Вот меня всегда интересовало, а какой дурень придумал протокол FTP? Q>Это каким местом нужно было думать, чтобы додуматься до ЭТОГО? Q>У меня такое ощущение, что изобретатели основных интернет-протоколов (и не только сабжа) думали не головой, а одним местом.
А в чем проблема?
Если в секьюрности, то есть масса вариантов:
ftp over SSH, или
Secure FTP (SFTP), или
FTP over SSL (FTPS), или
sftp, или,
наконец запусти vpn и всё будет секьюрно...
Здравствуйте, Arsen.Shnurkov, Вы писали: AS>А в чем проблема?
А в том, что по-хорошему негоже клиенту сервером прикидываться (а т.н. "пассивный режим" -- очередной костыль, который прикрутили сбоку в надежде, что он сделает из говна конфету). Какая нафиг секьюрность? Пень через колоду просто с архитектурной точки зрения.
Здравствуйте, Arsen.Shnurkov, Вы писали:
AS>А в чем проблема?
присоединяюсь к вопросу. в чем проблема с ftp? нормальный протокол. постоянно использую в работе. скажите, а как еще между двумя машинами гонять файлы, при условии, что машины под разными осями и желательно обойтись тем софтом, который либо предустановлен изначально, либо бесплатен и общепринят. помимо ftp не так уж много вариантов...
AS>Если в секьюрности, то есть масса вариантов:
а кто сказал за секьюрити? файл может быть зашифрован изначально. на фига это поручать ftp? да и как вы сами сказали ftp можно и поверх запустить. вполне в стиле unix way. каждый делает свою работу. а если ftp займется еще шифрованием -- я сдохну реализовывать клиента, не говоря уже за сервер.
AS>наконец запусти vpn и всё будет секьюрно...
ТС возмущается протоколом в стиле, что все придурки и он один такой умный. исторический контекст, конечно, он не учитывает. и как-то не обращает внимание на то, что новых способов передачи файлов (мыло и самба не в счет) до сих пор не придумали. особенно, если мне не просто файл передать нужно, но и по каталогу пройтись.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Здравствуйте, quwy, Вы писали:
Q>Здравствуйте, Arsen.Shnurkov, Вы писали: AS>>А в чем проблема? Q>А в том, что по-хорошему негоже клиенту сервером прикидываться
что на счет SMB? что на счет кучи других протоколов для чатов и обмена файлов, которые приницпиально не работают за фаером или натом, потому что их разработчики об этом не думали?
> (а т.н. "пассивный режим" -- очередной костыль, который прикрутили сбоку в надежде,
да-да. у IM's костыль еще круче -- через 3rd сервер. это просто супер умное решение. у ftp как раз все продумано.
> Какая нафиг секьюрность?
если вы намекаете на то, что можно авторизоваться путем открытой передачи пароля по сети, который можно прописать ftp://user:pass@host/dir/file, то из этого ничего не следует. а вот с SMB в этом смысле все намного хуже.
> Пень через колоду просто с архитектурной точки зрения.
какой протокол вы считаете образцом для подражания с архитектурной точки зрения? ой, извините, забыл, что у вас все протоколы кривые. весь мир бардак и все бабы поэтэссы и солнце долбанный фонарь. только это не архитектура. с этим к психиатру.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Здравствуйте, мыщъх, Вы писали:
Q>>Здравствуйте, Arsen.Shnurkov, Вы писали: AS>>>А в чем проблема? Q>>А в том, что по-хорошему негоже клиенту сервером прикидываться М>что на счет SMB?
"А у вас негров линчуют!" (C)
М>что на счет кучи других протоколов для чатов и обмена файлов, которые приницпиально не работают за фаером или натом, потому что их разработчики об этом не думали?
У меня за NAT работает все кроме FTP. А когда нужно было туннель для сабжа поднимать, геморроя натерпелись выше головы даже на выделенном сервере.
>> (а т.н. "пассивный режим" -- очередной костыль, который прикрутили сбоку в надежде, М>да-да. у IM's костыль еще круче -- через 3rd сервер. это просто супер умное решение. у ftp как раз все продумано.
Продумано? Мама, какое нахрен продумано? Реверсивное подключение, четырехкратный пинг на каждый файл, пассивный режим с хрен поймет какими портами -- все это, оказывается, продумано!?
>> Какая нафиг секьюрность? М>если вы намекаете на то, что можно авторизоваться путем открытой передачи пароля по сети, который можно прописать ftp://user:pass@host/dir/file, то из этого ничего не следует. а вот с SMB в этом смысле все намного хуже.
"А у вас негров линчуют!"
Кто-нибудь упоминал SMB? Покажите мне этого паскудника!
>> Пень через колоду просто с архитектурной точки зрения. М>какой протокол вы считаете образцом для подражания с архитектурной точки зрения? ой, извините, забыл, что у вас все протоколы кривые.
Сабж и HTTP маст дай, остальное -- слишком разное, а что?
Здравствуйте, мыщъх, Вы писали:
AS>>наконец запусти vpn и всё будет секьюрно... М>ТС возмущается протоколом в стиле, что все придурки и он один такой умный.
ТС возмущается тупостью и недальновидностью архитекторов, которым 640 КБ достаточно на все случаи жизни. Нахрена реверсивное подключение? Нахрена вообще раздельные каналы для команд и данных? HAYES как-то обходится одним физическим линком, но нет, нужно же было свой собственный велосипед изобрести.
М>исторический контекст, конечно, он не учитывает. и как-то не обращает внимание на то, что новых способов передачи файлов (мыло и самба не в счет) до сих пор не придумали. особенно, если мне не просто файл передать нужно, но и по каталогу пройтись.
А кто вообще называл альтернативу? SMB вам во сне пригрезилось, я же просто спросил каким местом думали изобретатели одного конкретного протокола -- FTP.
идеальный протокол вместо ftp — это WebDAV over https
1. можно обходить каталоги (вглубь и как угодно)
2. потенциально поддерживает версионирование
3. есть шифрование
4. возможно сжатие при передаче
5. поддерживается в интерфейсе windows (web-folders называется)
Здравствуйте, quwy, Вы писали:
Q>Вот меня всегда интересовало, а какой дурень придумал протокол FTP? Q>Это каким местом нужно было думать, чтобы додуматься до ЭТОГО?
Что именно не нравится?
Поддержка кучи разных форматов данных? Ну так он разрабатывался, когда 8-битные октеты ещё не были однозначной нормой. Более того, первые машины для APRAnet были 18- или 36-битные.
Завязка на telnet? Так telnet уже был готов и работал, и реально она не используется.
Отдельным каналом для данных? SCTP не было.
Авторизация? Не было ни причины ни идей придумывать что-то сложнее.
ARPAnet тогдашних времён был нацелен на полное доверие и выживание при любой возможности, и решения были соответствующие.
Например, в SMTP-серверах до середины 90-х не было защиты от релеинга чужих писем. Потому что не было спама.
Q>У меня такое ощущение, что изобретатели основных интернет-протоколов (и не только сабжа) думали не головой, а одним местом.
Они были мудрее нас с тобой вместе взятых. И под тогдашние цели и реалии они всё это придумывали достаточно хорошо. Вот к современному IETF у меня таки куча претензий.
Здравствуйте, quwy, Вы писали:
Q>Здравствуйте, Arsen.Shnurkov, Вы писали: AS>>А в чем проблема? Q>А в том, что по-хорошему негоже клиенту сервером прикидываться (а т.н. "пассивный режим" -- очередной костыль, который прикрутили сбоку в надежде, что он сделает из говна конфету). Какая нафиг секьюрность? Пень через колоду просто с архитектурной точки зрения.
Вот есть такой time.nist.gov, на котором лежит файлик просто чудовищной важности для систем реального времени — таблица корректировочных секунд для UTC. (Кстати, ближайшая будет 30 июня сего года, и в этом дне будет секунда с хитрым временем 23:59:60.)
В пассивном режиме к нему подключиться нереально — ему не хватает портов всем отдать. А в активном — отдаёт на ура.
Здравствуйте, netch80, Вы писали:
N>Вот есть такой time.nist.gov, на котором лежит файлик просто чудовищной важности для систем реального времени — таблица корректировочных секунд для UTC. (Кстати, ближайшая будет 30 июня сего года, и в этом дне будет секунда с хитрым временем 23:59:60.) N>В пассивном режиме к нему подключиться нереально — ему не хватает портов всем отдать. А в активном — отдаёт на ура.
Что-то я не понял, почему в пассивном режиме не хватает портов, а в активном хватает, учитывая то, что в активном все равно открывается клиентский порт на сервере? А в пассивном он мог бы теоретически с одного порта раздавать сразу нескольким клиентам, благо файл один.
Здравствуйте, mrTwister, Вы писали:
N>>Вот есть такой time.nist.gov, на котором лежит файлик просто чудовищной важности для систем реального времени — таблица корректировочных секунд для UTC. (Кстати, ближайшая будет 30 июня сего года, и в этом дне будет секунда с хитрым временем 23:59:60.) N>>В пассивном режиме к нему подключиться нереально — ему не хватает портов всем отдать. А в активном — отдаёт на ура. T>Что-то я не понял, почему в пассивном режиме не хватает портов, а в активном хватает, учитывая то, что в активном все равно открывается клиентский порт на сервере?
В активном режиме открывается *сокет*, а не порт. Порт у них всех один и тот же — 20.
T> А в пассивном он мог бы теоретически с одного порта раздавать сразу нескольким клиентам, благо файл один.
Мог бы. Более того, можно было бы вообще поставить что-то вроде следующего — через inetd написать
920/tcp stream nowait nobody /bin/sh sh 'cat /home/ftp/pub/leap-seconds.txt; echo END'
и вообще никакого FTP не надо было бы. Разумеется, обучив этому постоянные клиенты.
Но они почему-то категорически остановились на использовании стандартных утилит без кастомных патчей.
Здравствуйте, avpavlov, Вы писали:
N>>В пассивном режиме к нему подключиться нереально — ему не хватает портов всем отдать. А в активном — отдаёт на ура. A>а разве для отдачи порт не нужен?
Вы тоже путаете порт и сокет.
Я как-то на это отвечал
Здравствуйте, quwy, Вы писали:
Q>Здравствуйте, Arsen.Shnurkov, Вы писали: AS>>А в чем проблема? Q>А в том, что по-хорошему негоже клиенту сервером прикидываться
Видите ли, когда придумывали протокол FTP понятия клиента и сервера как-то ещё не очень установившимися были, как и многое другое. Первая версия FTP вообще появилась ещё в 1971 году, а более-менее современный вид устаканился к 1982 году.
Здравствуйте, Arsen.Shnurkov, Вы писали:
AS>А в чем проблема?
Основная проблема FTP в отсутствии в базовой версии стандартизированного способа получить листинг каталога. И сразу же за этим — отсутствие в базовой версии стандарта хоть каких-либо упоминаний кодировок (кроме ASCII и EBCDIC, не к ночи будь помянута). Вследствие чего имеем листинги, ориентированные на чтение глазами на узком терминале («если файл модифицирован в течение последнего года, то показываем день, месяц и время; если раньше, то день, месяц и год»), и неподписанные кодировки.
Нет, есть, конечно, RFC2640 от 1999 года и RFC3659 от 2007, но до сих пор крупные игроки на рынке FTP-серверов их не реализуют или реализуют опционально на усмотрение администратора.
Здравствуйте, quwy, Вы писали:
Q>Вот меня всегда интересовало, а какой дурень придумал протокол FTP? Q>Это каким местом нужно было думать, чтобы додуматься до ЭТОГО? Q>У меня такое ощущение, что изобретатели основных интернет-протоколов (и не только сабжа) думали не головой, а одним местом.
Здравствуйте, okman, Вы писали:
Q>>Вот меня всегда интересовало, а какой дурень придумал протокол FTP? Q>>Это каким местом нужно было думать, чтобы додуматься до ЭТОГО? Q>>У меня такое ощущение, что изобретатели основных интернет-протоколов (и не только сабжа) думали не головой, а одним местом.
O>Это Вы еще до USB не дошли, наверное.
А что USB? С точки зрения прикладного программиста в нём самое кривое — отсутствие механизма подачи внимания от внешнего устройства.
Здравствуйте, netch80, Вы писали:
N>А что USB? С точки зрения прикладного программиста в нём самое кривое — отсутствие механизма подачи внимания от внешнего устройства.
Это я о том, что все познается в сравнении.
Вы спецификации USB 2.0 видели ? Я как-то хотел однажды написать утилиту
для контроля ИБП (как работала штатная, меня страшно не устраивало), заодно
немного "прокачать" скиллы по USB. После двух-трех недель ковыряния этих
многосотстраничных документов и чтения книг Агурова, пришел к выводу,
что застряну в лучшем случае на полгода. Вот такие они бывают, эти протоколы.
Здравствуйте, okman, Вы писали:
N>>А что USB? С точки зрения прикладного программиста в нём самое кривое — отсутствие механизма подачи внимания от внешнего устройства.
O>Это я о том, что все познается в сравнении. O>Вы спецификации USB 2.0 видели ? Я как-то хотел однажды написать утилиту O>для контроля ИБП (как работала штатная, меня страшно не устраивало), заодно O>немного "прокачать" скиллы по USB. После двух-трех недель ковыряния этих O>многосотстраничных документов и чтения книг Агурова, пришел к выводу, O>что застряну в лучшем случае на полгода. Вот такие они бывают, эти протоколы.
Если использовать libusb и взять пример грамотной инициализации, то всё в разы проще.
Полугода там нет. Зная конкретные запросы к UPS и ответы на них — пару дней без безумной спешки.