Seafile

aus Wikipedia, der freien Enzyklopädie
Seafile Server

Seafile-Logo
Screenshot
Screenshot des Webinterfaces des Seafile Servers
Basisdaten

Entwickler Seafile Ltd.
Betriebssystem Linux, FreeBSD,[1] Windows
Programmiersprache C, Python, JavaScript
Kategorie Filehosting, Filesharing, File synchronisation
Lizenz AGPLv3 / Apache-Lizenz (Community Edition); proprietär (Professional Edition)
deutschsprachig ja
seafile.com
Seafile Sync Client

Seafile-Logo
Basisdaten

Entwickler Seafile Ltd.
Aktuelle Version 8.0.8[2]
(5. Juli 2022)
Betriebssystem Windows, macOS, Linux
Programmiersprache C, Python
Lizenz GPLv2[3]
deutschsprachig ja
seafile.com
Seafile Mobile App

Seafile-Logo
Basisdaten

Entwickler Seafile Ltd.
Aktuelle Version 2.2.46 (Android)
10. Juli 2022[4]

2.9.19 (iOS)
10. August 2022[5]

Betriebssystem Android, iOS
Programmiersprache C, Python
Lizenz GPLv3 / Apache-Lizenz v2 (Android / iOS)[6]
deutschsprachig ja
seafile.com
Seafile Drive Client

Seafile-Logo
Basisdaten

Entwickler Seafile Ltd.
Aktuelle Version 2.0.23[7]
(18. August 2022)
Betriebssystem Windows, macOS, Linux
Programmiersprache C, Python
deutschsprachig ja
seafile.com

Seafile ist eine Software des gleichnamigen chinesischen Unternehmens, mit der sich Dateien zentral auf einem Server speichern (Filehosting), mit anderen Personen teilen (Filesharing) und zwischen Geräten synchronisieren lassen (File synchronisation). Auf die Dateien kann man über ein Webinterface sowie Desktop-Clients und Mobile Apps zugreifen. Darüber hinaus bietet Seafile APIs für die Integration in andere Applikationen. Der Funktionsumfang ist dem von Onlinediensten wie z. B. Dropbox und Google Drive ähnlich. Während bei letzteren Public-Cloud-Diensten die Daten auf Servern der Anbieter wie beispielsweise bei Google abgelegt werden, liegen bei Seafile die Dateien auf dem eigenen Server, sofern man den betreffenden Server selbst betreibt.

Seafile gibt es in zwei Editionen: Die Community Edition (CE) des Seafile Servers ist Open-Source-Software; die Professional Edition (PE) des Servers ist proprietäre Software und bietet erweiterte Funktionen für den Einsatz in Enterprise-Umgebungen.[8]

Funktionen

Kernfunktionalitäten

Der Funktionsumfang von Seafile ist mit dem des bekannten Filesharing Dienstes Dropbox und anderen File Sharing Anbietern vergleichbar. Die Kernfunktionen sind:

  • Zentrale Dateiablage auf dem Server
  • Teilen von Ordnern und Dateien mit anderen Nutzern
  • Datei- und Ordnerfreigabe über Public Links mit Dritten
  • Zugriff auf die Dateiablage über das Netzwerk (LAN und/oder Internet)
  • Datei-Synchronisation zwischen Server und Client

Dateien und Ordner werden in Seafile in Bibliotheken organisiert. Als oberste Elemente in der Verzeichnisstruktur dienen Bibliotheken zur Abbildung funktionaler und organisatorischer Strukturen. Bibliotheken haben grundsätzlich einen Besitzer (d. h. einen Nutzer oder eine Gruppe), können aber an andere Benutzer, Gruppen oder alle Benutzer des Seafile Servers freigegeben werden, die dadurch Zugriff auf die geteilten Objekte erhalten. Der Umfang des Zugriffs richtet sich nach der Art der Freigabe. In der Community Edition von Seafile stehen drei, in der Professional Edition fünf Freigabestufen zur Verfügung.

Zum Schutz der Privatsphäre der Seafile Benutzer können Bibliotheken und Ordner auf dem Seafile Server verschlüsselt gespeichert werden. Diese Bibliotheken werden clientseitig verschlüsselt und dann auf dem Seafile Server gespeichert. Diese Ende-zu-Ende-Verschlüsselung machte es möglich, Seafile ohne Aufgabe der Vertraulichkeit der Daten auf einem Server zu betreiben, der von fremden Administratoren (z. B. in einem Rechenzentrum) verwaltet wird.[9]

Der Zugriff auf die Dateiablage auf dem Server kann über ein Web-Interface (genannt Seahub) oder über dedizierte Clients erfolgen. Seafile bietet dedizierte Clients für Windows, Mac und Linux sowie Mobile Apps für Android und iOS. Die Kommunikation mit dem Seafile Server lässt sich mittels TLS verschlüsseln und damit absichern. Es ist möglich, mehrere Seafile Server mit einem Client zu verbinden.

Zur Minimierung des Up- und Downloadvolumens unterstützt Seafile bei der Dateisynchronisation Delta-Kodierung/Differenzspeicherung. Auch wird durch das Umbenennen einer Datei oder das Verschieben einer Datei in der Verzeichnisstruktur kein erneuter Dateitransfer ausgelöst. In Kombination mit dem für die Dateispeicherung optimierten Speichersystem ist Seafile gemäß unterschiedlicher Autoren teilweise performanter als ähnliche Lösungen zum Dateiaustausch wie z. B. die Programme ownCloud und Nextcloud.[10][11]

Administration und Sicherheit

Benutzer können in Seafile über die im Web-Interface integrierte Benutzerverwaltung oder über eine LDAP / Active Directory Anbindung verwaltet werden. Beide Varianten sind nebeneinander möglich.

Zum Schutz vor versehentlichem Löschen werden gelöschte Dateien in einen Papierkorb verschoben. Über die Versionsverwaltung können Änderungen an Dateien nachvollzogen und bei Bedarf ältere Bearbeitungsstände auch wiederhergestellt werden.

Seit der Seafile Version 6 besteht auch die Möglichkeit von Zwei-Faktor-Authentifizierung nach dem Verfahren Time-based One-time Password Algorithmus (TOTP). Bei diesem sind Benutzername und Passwort der erste Faktor. Der zweite Faktor ist eine zeitbasierte Ziffernfolge, für deren Generierung auf Mobilgeräten wie Smartphones Programme wie FreeOTP oder Google Authenticator verwendet werden können.[12]

Eine WebDAV-Schnittstelle ist auch vorhanden, jedoch ist damit keine clientseitige Verschlüsselung möglich.

Erweiterte Funktionen des Seafile Professional Servers

Die Seafile Professional Edition bietet zusätzliche Funktionen, die Seafile fit für den Einsatz in Rechenzentren bzw. in Enterprise-Umgebungen mit vielen Nutzern machen. Zu diesen Funktionen gehören:[13]

  • Hochverfügbarkeits-Setup in einer Cluster-Architektur
  • Unterstützung unterschiedlicher Objektspeicher (z. B. Ceph und Amazon S3)
  • Online Bereinigung der Datenbank (d. h. ohne Shutdown des Servers)
  • Multi-Tenancy Unterstützung
  • Integration von MS Office Online zur Voransicht und Bearbeitung von Office Dokumenten
  • Audit Log zur Protokollierung von Anmeldungen, Berechtigungsänderungen und Zugriffen
  • Integration einer Antiviruslösung
  • Synchronisation von Benutzern und Gruppen mit LDAP / AD Verzeichnis

Funktionale Erweiterungen des Seafile Professional Servers gegenüber der Community Edition sind:

  • Volltextrecherche
  • Dateisperrung (File Locking) von Office Dokumenten zur Vermeidung von Versionskonflikten
  • Differenzierte Zugriffsrechte für (Unter-)Ordner, d. h. Abweichung ggü. übergeordneten Verzeichniselementen
  • Gast-Accounts ohne Rechte zur Erstellung von Bibliotheken und Gruppen
  • Erweiterte Freigabestufen

Nutzung des Seafile Community Servers

Es gibt keine verlässlichen Zahlen über die aktiven Seafile Community Server Instanzen in Deutschland oder Europa, geschweige denn über die Anzahl der aktiven Benutzer. Seafile hat sich aber gerade auch dank seiner geringen Hardware-Anforderungen, die eine Installation auf dem Einplatinencomputer Raspberry Pi erlaubt, wachsender Beliebtheit erfreut. Neben der offiziellen Installationsanleitung existieren auch Video-Tutorials,[14] die die Installation in Eigenregie für ambitionierte Nutzer möglich machen.

Auch die Seafile Professional Edition ist teilweise kostenlos verfügbar. Bei bis zu drei aktiven Nutzern kann ein Seafile Professional Server auch ohne gültige Lizenzdatei genutzt werden.[15]

Versionsgeschichte

Die nachfolgende Tabelle stellt die Versionsgeschichte des Seafile Professional Servers dar,[16] da sich die Entwicklung auf diese Edition fokussierte. Seit der Veröffentlichung des Seafile Professional Servers mit dem Release 1.7 wurde die Community Edition parallel als funktionsreduzierte Version der Professional Edition weiterentwickelt.

Version Release Funktionserweiterungen Anmerkungen
1.7 2012 n/a n/a
2.0 n/a FSCK Utility zur Prüfung der Datenbankintegrität
Unterstützung von LDAP
Umstellung des Crypto-Algorithmus für verschlüsselte Datenbanken
2.1 n/a Unterstützung von FUSE und LDAP
Public Link Funktion für Uploads
Captcha Funktion zum Schutz gegen Brute-Force-Attacken
Redesign des Webinterfaces Seahub
2.2 n/a n/a Umstellung auf PBKDF2 Algorithmus und Random Salt zur Speicherung von Nutzerpasswörtern
3.0 7. Juni 2014 Unterstützung bibliotheksübergreifender Kopier- und Verschiebevorgänge Redesign des Webinterfaces
3.1 15. August 2014 Passwortschutz und Befristung von Public Links
Benutzerimport über CSV-Datei
4.0 13. Dezember 2014 Wiederherstellung gelöschter Daten und Ordner aus Snapshot
4.1 1. April 2015
Unterstützung von Shibboleth Update auf Django 1.5
4.2 29. Mai 2015
Direkter Downloadlink Umstellung von TCP Sync Protokoll auf ausschließlich HTTP/HTTPS Sync
4.3 25. Juni 2015 Bibliotheksweise Synchronisation im Sync-Client Entfernung des Nachrichtenmoduls
Erweiterung der API
4.4 19. Oktober 2015
(stable 4.4.2)
5.0 4. Dezember 2015
(stable 5.0.2)
Separater Papierkorb für jeden Ordner
Server Konfiguration über Webinterface Seahub
Umstellung von GET auf POST Requests zur Erhöhung der Sicherheit
Konsolidierung aller Konfigurationsdateien im Conf-Ordner
5.1 8. April 2016
(stable 5.1.1)
Download mehrerer Dateien über Webinterface Seahub Entfernung von Sub-Bibliotheken
Änderung der Navigation in Webinterface Seahub
Upgrade auf Django 1.8
6.0 20. Oktober 2016
(stable 6.0.2)
Responsive Webinterface Seahub
Integration von Collabora Online
Rollenbasierte Berechtigungsvergabe
Zwei-Faktor-Authentifizierung
Remote Wipe
6.1 19. Juni 2017
(stable 6.1.1)
Integration von OnlyOffice Default-Deaktivierung der Wiki-Funktion
6.2 12. Dezember 2017
(stable 6.2.2)
Statistik Modul
Freigabe von Bibliotheken mit Admin-Rechten
Labels für Snapshots von Bibliotheken
Unterstützung von OAuth und Swift v1 Protokoll
Umstellung auf WSGI als Standardmodus für Webinterface Seahub
6.3 30. Juli 2018
(stable 6.3.2)
WYSIWYG Markdown Editor
Robuste Public Links
Gruppenbibliotheken
Unterstützung mehrerer lokaler Storage Backends
Erweiterung der API Calls für Multi Tenancy Systeme
Upgrade auf Django 1.11
Deaktivierung des FastCGI Modes
7.0 13. Juni 2019
(stable 7.0.3)
(Öffentliches) Wiki
File Tagging
Spaltenansicht und Kontextmenüs im Webinterface
Neue Freigabe-Berechtigungen
Verbesserte Favoriten
Umstellung des Webinterfaces auf React (ehemals Django)
Erweiterte Kommentar- und Bearbeitungsfunktionen (insbesondere für Bilder/Tabellen) im Markdown Editor
Update auf Elasticsearch 5.0
Verbesserter Schutz von verschlüsselten Bibliotheken gegen Brute-Force-Angriffe
7.1 8. April 2020
(stable 7.1.3)
Verbesserte Gast-Einladen Funktion
API-Tokens für Bibliotheken
Umstellung von Python 2 auf Python 3
Umstellung der System Administration auf React (ehemals Django)
8.0 7. April 2021
(stable 8.0.1)
Kombinierte Upload/Download-Links
Verbesserter Markdown-Editor
Open Cloud Mesh mit anderen Seafile Servern
Umstellung des Benutzerfrontends auf React (ehemals Django)
Entfernen des ccnet-servers
9.0 24. January 2022
(stable 9.0.4)
Rewrite des http-Servers with go
Flexiblere Freigabeberechtigungen
Open Cloud Mesh mit anderen Cloud-Lösungen
Herauslösen von Elasticsearch als separate Komponente

Technisches und Lizenzen

Den Seafile Server Community Edition gibt es für die Linux-Distributionen Debian, Ubuntu und CentOS. Darüber hinaus gibt es einen Docker Container. Eine Windows-Version, die sich gemäß Entwickleraussagen für kleinere Installationen mit beschränktem Benutzerkreis eignet, steht aktuell noch in der veralteten Version 6.0.7 zum Download zur Verfügung. Die Version wird von Seiten der Seafile Ltd. jedoch nicht mehr weiterentwickelt. Als Alternative kann der Docker Container auf Windows eingesetzt werden.[17] Für den Einsatz in noch beschränkteren Umgebungen stellt die Firma Seafile auch eine Version für den Raspberry Pi zur Verfügung. Seafile lässt sich ebenfalls unter FreeBSD installieren. Diese Portierung stammt aber nicht von dem offiziellen Entwicklerteam.

Das Seafile-Server-Webend (Seahub) ist unter der Apache-Lizenz veröffentlicht.[18]

Der Seafile Server Professional Edition ist für die drei Linux-Distributionen Debian, Ubuntu und CentOS sowie als Docker Container verfügbar.

Multiplattformfähigkeit erhält Seafile durch die Verfügbarkeit von Clients für alle verbreiteten Betriebssysteme: Clients zur Datei-Synchronisation sind für Windows, macOS, Linux und FreeBSD[19] verfügbar. Clients zur Integration der zentral abgelegten Dateien in Form von virtuellen Laufwerken gibt es für Windows, macOS und Linux. Mobile Clients gibt es für iOS und Android.

Seafile Server und Clients bestehen aus unterschiedlichen Komponenten, die in C programmiert sind, während das Webinterface (Seahub) auf der JavaScript-Softwarebibliothek React basiert. Als Datenbank kann MySQL bzw. MariaDB sowie SQLite verwendet werden.

Geschichte

Eine Gruppe ehemaliger Studenten der Tsinghua-Universität in Peking begann im Jahr 2009 ihre Arbeiten an der Entwicklung einer peer-to-peer-basierten Filehosting Lösung. Mit einer solchen Lösung, die unter dem Namen Seafile lief, wollten die Entwickler eine Alternative zu Lösungen mit einem zentralen Server schaffen. Im Jahr 2010 entschied das Entwicklerteam um Daniel Pan, das ursprüngliche Ziel aufzugeben und nahm einen Technologiewechsel hin zu einer Client-Server-Struktur vor. Solche Client-Server-Architekturen sind auch bei Dropbox oder Google Drive im Einsatz.

Im Jahr 2012 gründeten Daniel Pan, Jonathan Xu und eine Reihe anderer Entwickler des Projekts das Unternehmen Seafile Ltd. Das Ziel der Gesellschaft war die Entwicklung und der Vertrieb der selbstentwickelten Filehosting Software.

Anfang 2015 gründeten Alexander Jackson und Silja Jackson die Vertriebsgesellschaft Seafile GmbH. Ziel der Gründung war eine Stärkung des Vertriebs in Deutschland und die Bereitstellung von deutschsprachigem Support. Ebenso sollte die GmbH einen öffentlichen Cloud Storage Service auf Basis von Seafile anbieten. Seafile Ltd. entschied sich gegen einen Eigenkapitalanteil an der neugegründeten Gesellschaft, übertrug aber Nutzungsrechte und stellte Finanzmittel in Form eines zinsfreien Darlehens zur Verfügung.[20] Die Partnerschaft wurde im Juli 2016 abrupt von Seiten der Seafile GmbH aufgekündigt. Als Gründe wurden Konflikte mit der chinesischen Seite bezüglich Produktentwicklung und Kundenkommunikation genannt.

Der Konflikt zwischen der Seafile Ltd. und der Seafile GmbH wurde im Frühjahr 2017 gütlich beigelegt. Die Distribution von Seafile hat seitdem das Unternehmen datamate aus Mainz übernommen.[21]

Konflikt mit PayPal

Aufgrund von Vorwürfen über Verstöße gegen die Nutzungsbedingungen von PayPal wurde die deutsche Seafile GmbH im Juni 2016 aufgefordert, den Datenfluss der Seafile-Kunden auf „illegale Inhalte“ zu prüfen. Aus moralischen, juristischen und technischen Gründen kam Seafile dem nicht nach, worauf PayPal den Zahlungsverkehr zu Seafile eingestellt hat, weswegen Seafile die kostenpflichtigen Kundenkonten zeitweilig kostenlos fortführte.[22] PayPal entschuldigte sich daraufhin und erlaubte die Nutzung von PayPal wieder, allerdings wollte Seafile nach dem Vorfall nicht mehr mit PayPal zusammenarbeiten und sucht nach Alternativen.[23]

Konflikt der deutschen Seafile GmbH mit der chinesischen Seafile Ltd.

Am 21. Juli 2016 beendete die deutsche Seafile GmbH mit sofortiger Wirkung die Zusammenarbeit mit der chinesischen Seafile Ltd. und kündigte an, von nun an selbst an der Entwicklung einer eigenen Version des Seafile Servers (sowohl Community als auch Professional Version) zu arbeiten.[24] Die Seafile GmbH argumentierte, bereits länger andauernde und unauflösbare Unstimmigkeiten mit den chinesischen Entwicklern ließen keine andere Entscheidung zu. Die chinesische Seafile Ltd. veröffentlichte wenige Tage später im Seafile-Blog eine Gegendarstellung. In dieser wurden der Seafile GmbH unter anderem Markenrechtsverletzungen vorgeworfen und bekanntgegeben, dass der Seafile GmbH die Nutzung der proprietären Seafile Pro-Software untersagt wurde.[25] Die Seafile GmbH wies ihrerseits diese Anschuldigungen in einem weiteren Blogeintrag zurück und stellte dabei unter anderem die aus ihrer Sicht rechtmäßige Verwendung des Namens Seafile sowie des Quellcodes der Professional-Version dar.[26]

Am 10. September 2016 entfernte die Seafile GmbH ohne entsprechenden Hinweis die zwei selbst veröffentlichten Blogeinträge zum Konflikt und den dazugehörigen Eintrag im von der GmbH betriebenen Seafile Forum.[27] Im Forumsbeitrag wurde mehrmals kritisch hinterfragt, ob die Seafile GmbH rechtmäßig den proprietären Code der Seafile Ltd. nutzen darf, und die Community empfahl, um Verwechslungen mit dem ursprünglichen Projekt zu vermeiden, einen neuen Namen für den Fork zu verwenden. Im Gegensatz zur Seafile GmbH wurde beispielsweise beim ownCloud-Fork Nextcloud ein eigener Name verwendet und der proprietäre Teil des Codes komplett neu geschrieben, obwohl die Entwickler Zugang zu dem Code gehabt hätten. Seit der Ankündigung der Seafile GmbH, Seafile in einem eigenen Entwicklungszweig weiterzuführen, ist dieser Fork ohne Veränderungen bei der Version 5.1.4 stehen geblieben.[28]

Der Rechtsstreit zwischen der Seafile GmbH und Seafile Ltd. wurde im Jahr Frühjahr 2017 mit einem außergerichtlichen Vergleich beigelegt. In diesem wurde vereinbart, dass die Seafile Ltd. Markenrechte an Seafile sowie die seafile.de Domain erhält. Der deutschen Seafile GmbH wurde erlaubt, bestehende Supportverträge weiter zu bedienen. Neuverträge für Seafile Professional Lizenzen durfte die ehemalige deutsche Vertriebsgesellschaft nicht mehr tätigen.[29] Im März 2017 firmiert die ehemalige Seafile GmbH zur Syncwerk GmbH um.

Weblinks

Einzelnachweise

  1. Seafile-Server bei Freshports
  2. Seafile Client Changelog. Abgerufen am 11. August 2022 (englisch).
  3. Seafile Manual. In: datamate. Abgerufen am 13. August 2018.
  4. Downloadseite für Android bei play.google.com, abgerufen am 11. August 2022 (teilweise englisch).
  5. Vorschauseite für iOS bei itunes.apple.com, abgerufen am 11. August 2022 (englisch und chinesisch).
  6. Seafile Manual. In: datamate. Abgerufen am 24. August 2018.
  7. SeaDrive Client Changelog. Abgerufen am 23. August 2022.
  8. Vergleich der Community und Professional Edition von Seafile. In: Seafile. Abgerufen am 27. November 2018.
  9. plt: Security features · Seafile Server Manual. In: Seafile Server Manual. Abgerufen am 17. Januar 2018.
  10. Raspberry Pi: Vergleich Owncloud vs Seafile. Abgerufen am 17. Januar 2018.
  11. ownCloud vs Seafile – Performance. Abgerufen am 17. Januar 2018.
  12. Two-Factor Authentication. In: Seafile Server Manual. Abgerufen am 17. Januar 2018.
  13. Seafile Ltd.: Feature List. Abgerufen am 17. Januar 2018.
  14. Seafile 6 ganz einfach – Installation. In: youtube.com. Abgerufen am 17. Januar 2018.
  15. Seafile Ltd.: Pricing of Pro Edition license. Abgerufen am 17. Januar 2018.
  16. Seafile Professional Server Changelog. In: Seafile Server Manual. Abgerufen am 24. Januar 2018 (englisch).
  17. Ankündigung des CEOs der Seafile Ltd. im Seafile Forum vom 2. September 2018, abgerufen am 23. Oktober 2018 (englisch).
  18. Seafile Online-Handbuch (englisch), abgerufen am 9. Juni 2015.
  19. Seafile-Gui bei Freshports
  20. Statement about Stopping Cooperation with Seafile GmbH. In: Seafile Official Blog. 22. Juli 2016, archiviert vom Original am 25. Oktober 2016; abgerufen am 10. November 2016.
  21. Seafile Partners. Abgerufen am 24. Januar 2018 (englisch).
  22. Axel Kannenberg: Von Paypal ausgesperrt: Seafile wollte Nutzer nicht bespitzeln. In: heise online News. Heise Medien GmbH & Co. KG, 21. Juni 2016, abgerufen am 22. Juni 2016.
  23. Sperrung: Paypal entschuldigt sich bei Dropbox-Alternative Seafile. In: www.golem.de. 22. Juni 2016, abgerufen am 22. Juni 2016.
  24. Zur Zukunft von Seafile – Seafile. 21. Juli 2016, abgerufen am 25. Juli 2016.
  25. Statement about Stopping Cooperation with Seafile GmbH. In: Seafile Official Blog. 22. Juli 2016, archiviert vom Original am 25. Oktober 2016; abgerufen am 25. Juli 2016.
  26. About the Statements made by Seafile Ltd. – Seafile. 24. Juli 2016, abgerufen am 25. Juli 2016 (englisch).
  27. Seafile GmbH removing their statements and a forum thread. In: Seafile Community Forum. Abgerufen am 31. Oktober 2016.
  28. Syncwerk Download. (Nicht mehr online verfügbar.) In: Syncwerk Webseite. Archiviert vom Original am 11. August 2018; abgerufen am 11. August 2018.  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/download.syncwerk.com
  29. heise online: Namensstreit um Seafile: Einigung zwischen Peking und Unterfranken. Abgerufen am 9. März 2017.