Seafile — свободное кроссплатформенное программное обеспечение для файлового хостинга, синхронизации данных и совместной работы. Программа развёртывается на собственном оборудовании пользователя. Централизованное хранение данных обеспечивает доступ к файлам через клиентские приложения для персональных компьютеров, мобильных устройств и веб-интерфейс. Базовая версия Community Edition распространяется под лицензией GNU General Public License v2.
История В 2009 году Даниэль Пан и Джонатан Сюй, в то время студенты Университета Цинхуа, начали проект по созданию программы для однорангового обмена файлами под названием Seafile. Позже разработчики переориентировали проект на клиент-серверную архитектуру синхронизации файлов. В 2012 году Даниэль Пан и Джонатан Сюй основали компанию Seafile Ltd. для разработки программы.
В начале 2015 года Силья и Александр Джексон создали компанию Seafile GmbH для дистрибуции Seafile в Германии. Компания Seafile Ltd. предоставила немецкой компании права на бренд Seafile и беспроцентный кредит. В июле 2016 года сотрудничество прекратилось из-за разногласий по вопросам разработки и прав на интеллектуальную собственность. В марте 2017 года компании урегулировали спор: домен «seafile.de» и товарные знаки перешли к Seafile Ltd., а Seafile GmbH сменила название на Syncwerk GmbH.
В июне 2016 года платёжная система PayPal прекратила обслуживание Seafile GmbH, обвинив компанию в содействии незаконному обмену файлами. PayPal потребовал отслеживать передачу файлов. Компания Seafile ответила отказом. Позднее PayPal отменил решение, но разработчики отказались от использования этой платёжной системы для своих сервисов.
Функциональность и безопасность Данные в Seafile организованы в каталоги, называемые библиотеками. Система поддерживает совместную работу: пользователи могут открывать доступ к своим каталогам для других участников системы или целых групп, настраивая права на чтение или редактирование. Внешние пользователи получают доступ к файлам по публичным ссылкам. Создатель ссылки устанавливает пароль, задаёт срок действия или ограничивает количество загрузок. Двухсторонняя синхронизация обеспечивает автоматическое обновление файлов на всех устройствах, привязанных к облаку, при внесении любых изменений.
Платформа включает встроенную систему контроля версий. Seafile позволяет откатывать файлы и папки к предыдущим состояниям благодаря механизму снимков файловой системы. Глубина хранения истории может варьироваться в зависимости от настроек конкретной библиотеки. Эффективность хранения множества версий одних и тех же файлов достигается за счёт алгоритмов дедупликации.
Управление пользователями в Seafile базируется на ролевой модели. Функциональные ограничения настраиваются администраторами централизованно для различных групп учётных записей. Масштабирование в крупных сетях облегчается наличием возможности саморегистрации пользователей.
Передача информации между узлами шифруется с использованием асимметричной криптографии (обмен ключами) и генерации уникальных ключей сеанса для каждого устройства. Мобильные клиенты дополнительно защищены механизмом двухфакторной аутентификации и могут шифровать данные локально до их отправки на сервер.
Архитектура и развёртывание Серверная часть Seafile работает на дистрибутивах Linux (Debian, Ubuntu, CentOS, Red Hat Enterprise Linux) и одноплатных компьютерах Raspberry Pi. Разработчик предоставляет готовый Docker-контейнер. Для хранения метаданных сервер использует системы управления базами данных MySQL или PostgreSQL в связке с веб-серверами Nginx или Apache. Поддержка СУБД SQLite была прекращена в 11 версии сервера. Сами файлы сохраняются в файловой системе сервера или в распределённом хранилище данных.
Настольные клиенты выпущены для операционных систем Windows, macOS и Linux (в виде пакетов deb и RPM). Приложения работают в системном лотке и выводят уведомления о ходе синхронизации. Мобильные клиенты разработаны для платформ Android и iOS.
Веб-интерфейс позволяет просматривать медиафайлы и файлы популярных офисных форматов (включая PDF) без установки клиентского приложения. Через веб-панель администраторы могут производить мониторинг работоспособности сервера, управляют требованиями к безопасности (например, сложностью паролей), а также осуществляют массовую рассылку оповещений клиентам.
Редакции Seafile распространяется в двух редакциях: Community Edition (с открытым исходным кодом) и Professional Edition (проприетарная лицензия). Профессиональная версия создана для корпоративных сетей. Профессиональная редакция интегрируется с серверами Collabora Online, Microsoft Office Online Server и антивирусными программами. Дополнительные функции корпоративной версии — полнотекстовый поиск, ведение журнала активности, блокировка файлов и распределённое хранение данных.
Примечания
Ссылки
Категория:Файлообменные сервисы Категория:Облачные приложения Категория:Облачные системы хранения Категория:Свободное программное обеспечение, написанное на Си Категория:Свободное программное обеспечение, написанное на Python Категория:Программное обеспечение с лицензией GNU GPL