Веб-приложение для замены FTP-сервера

Я использую FTP-сервер для обмена документами между людьми. Все меньше и меньше людей знают, как пользоваться FTP-клиентом. Поэтому в прошлом году я добавил веб-интерфейс, чтобы облегчить им жизнь. Этот веб-интерфейс (net2ftp) по-прежнему использует FTP-сервер в фоновом режиме. Кроме того, у меня есть куча хаков, чтобы добавить некоторые функции, такие как поиск.

Я ищу современное веб-приложение, чтобы заменить весь этот умирающий стек.

Требования:

  • Люди должны иметь возможность интуитивно просматривать/загружать/загружать/искать файлы
  • 50% пользователей по-прежнему используют FTP, в основном из-за интерфейса командной строки. Пользователи должны иметь возможность использовать свой интерфейс командной строки для загрузки и скачивания файлов. Они являются продвинутыми пользователями, поэтому им не нужно быть таким же интуитивно понятным, как веб-интерфейс.
  • Настраиваемый. Как правило, мне нужно подключить собственный интерфейс аутентификации
  • Хорошие условия для регистрации. У меня есть много скриптов, которые будут делать статистику и другие вещи, поэтому мне нужно легко извлекать информацию о том, что происходит.
  • Все могут видеть все файлы. Бонус, если мне не нужно исправлять код, чтобы запретить частную загрузку
  • Под капотом файлы должны храниться очень простым способом (без git-подобной структуры). Когда я делаю резервную копию app/filesпапки, этого должно быть достаточно для просмотра файлов. Не уверен, что хорошо объяснил, но загрузка файла test.pdfв папку foo/barдолжна привести test.pdfк записи foo/bar на диск (см. пояснение ниже)
  • Должен быть бесплатным и с открытым исходным кодом. Мы делаем некоммерческое использование (но я не считаю это личным использованием из-за количества вовлеченных пользователей)
  • Приложение должно работать на сервере Linux

Изменить: пояснение к требованию «Под капотом»

  • Сисадмин этой системы сильно меняется
  • У нас есть терабайты данных (в основном из-за очень больших файлов). Таким образом, мы сохраняем каждую папку первого уровня на другом жестком диске. Я знаю, что это не самый надежный способ сделать что-то, но когда через несколько лет кому-то еще понадобятся резервные копии, все, что я хочу, чтобы он сделал, это прочитал этикетку на жестких дисках, чтобы найти нужный и найти нужные файлы. там.
Согласны ли вы с заменой FTP на более современный (основанный на REST) ​​протокол CMIS ? Его можно использовать через curl/wget/etc, и он больше ориентирован на работу с документами, чем FTP.
Ах, требования "Под капотом" исключают большинство возможных решений... Вы уверены, что вам это действительно нужно? Почти все серверы документов используют собственный формат для повышения эффективности кэширования и метаданных.
@NicolasRaoul: он может иметь отдельный кеш и хранить метаданные (кто загрузил, когда, ...) в другом месте (например, в базе данных). Однако мне действительно нужно иметь все «файловые данные» в удобочитаемой форме.
В одном из «связанных» вопросов (список справа) упоминается monstaftp .

Ответы (1)

Я предлагаю NemakiWare :

Подходит:

  • Интуитивно понятный веб-интерфейс для просмотра/загрузки/загрузки/перемещения/поиска файлов/папок
  • Интерфейс CMIS, простой в использовании в сценариях
  • Настраивается для использования вашей собственной реализации аутентификации
  • Очистить файл журнала
  • Открытый источник
  • Работает на Linux/Mac/Windows

Неудачники:

  • По умолчанию все видят все, но на самом деле пользователи могут изменить право документа, и это не так просто отключить.

Тип подходит:

  • Под капотом используется база данных NOSQL. Но на самом деле, если вам нужен доступ файловой системы к файлу, я считаю, что ваша потребность покрывается использованием CmisSync для синхронизации с сервера в любое место, в локальной или удаленной файловой системе.

Отказ от ответственности: я создал CmisSync и работаю над NemakiWare.

NemakiWare и CmisSync