Erfahrungen mit Nextcloud

Schon vor vielen Jahren habe ich mir OwnCloud angesehen, das erstmals 2010 veröffentlicht wurde und eine Alternative zu kommerziellen Diensten wie DropBox oder Google bieten wollte. Die Idee war gut, nur an der Umsetzung und der Sicherheit mangelte es anfangs noch, was mich von der dauerhaften Nutzung abgehalten hatte.

Für den Austausch von Dateien hatte ich später als Alternative Seafile entdeckt. Für Adressen und Termine habe Baïkal verwendet, um mit CalDAV und CardDAV den Stand zwischen meinen Android-Geräten und verschiedenen Computern abzugleichen. Hinzu kommt Roundcube als Webmail-Client mit einer Erweiterung für die Nutzung des Adressbuchs aus Baïkal über CardDAV.

Auch wenn diese Konstellation grundsätzlich funktioniert hat, gab es Schwächen: ein browserbasierter Kalender existiert nicht und Baïkal wird schon seit längerer Zeit nicht mehr aktiv weiterrentwickelt – die aktuellste Version ist vom August 2016 (siehe Release-Seite bei Github).

Im Jahr 2016 hat der Begründer von OwnCloud, Frank Karlitschek, einen Fork unter dem Namen „Nextcloud“ vorgestellt, samt einer neu gegründeten Firma für den Support von Unternehmenskunden. Mittlerweile ist Nextcloud fast eineinhalb Jahre gereift und ich habe mir angesehen, wie der aktuelle Stand ist. Der folgende Bericht ist über einen längeren Zeitraum entstanden – ursprünglich habe ich mit Nextcloud 12 begonnen, dann wurde aber die neue Version 13 veröffentlicht, bevor ich den Bericht fertiggestellt hatte.

Einrichtung des Servers

Obwohl Nextcloud auf PHP basiert, wird als Serverumgebung nur Linux unterstützt. Auch die Verwendung von Apache oder NGINX mit PHP unter Windows ist nicht möglich. Die weiteren Voraussetzungen sind in der ausführlichen Anleitung  dokumentiert.  Clients werden werden allerdings für mehrere Systeme, konkret Windows, macOS, Linux, Android und iOS angeboten.

Empfohlen wird die Nutzung in einer eigenen (Sub-)Domain und nicht in einem Unterverzeichnis. Die Installation verläuft vergleichsweise unspektakulär. Nachdem die aktuelle Version in das Verzeichnis des Webservers kopiert wurde, musste nur die Startseite im Browser aufgerufen und dort ein Benutzername und Passwort für den Administrator vergeben werden. Danach ist Nextcloud bereits nutzbar, da als Datenbank SQLite benutzt wird, wofür keine besondere Installation erforderlich ist.

Umstellen von SQLite auf MySQL/MariaDB

SQLite ist kein eigenständiges Datenbanksystem, sondern nur eine Bibliothek, mit der Anwendungen Datenbanken in Form von einzelnen Dateien direkt verwenden. Das erleichtert zwar das Anlegen einer Datenbank, da die nötigen Dateien bei Bedarf automatisch erzeugt werden und man keinen Datenbankserver benötigt, ist aber für größere Umgebungen problematisch. Die sinnvollere Variante, wenn mit Nextcloud für mehrere Nutzer/innen bereitstellen möchte, ist daher MySQL/MariaDB.

Die vorgesehene Methode für die Nutzung von MySQL/MariaDB ist die Migration der bestenden SQLite-Datenbank auf eine vorher neu angelegte Datenbank in MySQL/MariaDB entsprechend der Dokumenation von Nextcloud. Auch das hat bei mir probemlos funktioniert. Nach der Migration können die alten SQLite-Datenbankdateien im data-Verzeichnis gelöscht werden.

Erste Eindrücke von Nextcloud

Web-Oberfläche

Die Web-Oberfläche entspricht dem aktuellen Stand der Technik: HTML5 mit Responsive Design und Nutzung von JavaScript mit XHR. Für grafische Elemente wird SVG genutzt, so dass die Darstellung auch bei Geräten mit hoher Pixeldichte und skalierter Anzeige gut funktioniert.

Die nachfolgenden Screenshots sind mit einer bereits angepassten Installation der Version 13 enstanden. Der Auslieferungszustand unterscheidet sich aber nicht wesentlich. Nach der ersten Anmeldung wird der Einrichtungsassistent angezeigt, der auch Links zu den verschiedenen Clients enthält:

Diesen Assistenten kann man bei Bedarf später jederzeit über den Punkt „Sync-Clients“ bei den persönlichen Einstellungen öffnen. Nachdem man den Assistenten geschlossen hat, erscheint die reguläre Oberfläche mit der Dateiverwaltung:

Am oberen Rand findet man die installierten „Apps“ als Symbole. Zusätzliche Apps kann man sich über die Verwaltung nachinstallieren.

Funktionen

Ohne zusätzliche Erweiterungen bietet Nextcloud bereits eine Dateiverwaltung, ein Adressbuch und einen Kalender. Alle Elemente können sowohl an andere Nextcloud-Nutzer (auch serverübergreifend mit Federation) als auch als öffentlich aufrufbarer Link freigegeben werden – auf Wunsch auch mit Schreibzugriff.

Der Dateizugriff ist prinzipiell auch per WebDAV möglich, allerdings ist der Nextcloud-Client hier sinnvoller, da hier auch eine Synchronisation möglich ist und auf Smartphones auch der automatische Upload von Aufnahmen mit der Kamera.

Für Adressbuch und Kalender kann man CardDAV und CalDAV verwenden, was auf dem Desktop etwa bei Thunderbird mit CardBook und Lightning gut funktioniert. Für Android kann ich DAVDroid empfehlen (auch verfügbar bei F-Droid). Man kann auch Kalender und Adressbücher mit anderen Nextcloud-Nutzern teilen, um z.B. gemeinsame Termine zu planen. Auch die Integration von öffentlichen Kalendern, die als ICS-Datei angeboten werden, wie Feiertagslisten o.Ä. ist möglich.

Sicherheit

Das Thema „Sicherheit“ wird in Nextcloud sehr ernst genommen, was auch auf der Website von Nextcloud dokumentiert wird. Sicherheitupdates können über die Weboberfläche installiert werden und es gibt sowohl nach der Installation als auch bei Updates jeweils eine Integritätsprüfung, die sicherstellen soll, dass keine unerwünschten Änderungen im Programmcode vorhanden sind. Unter https://scan.nextcloud.com die eigene Nextcloud-Installation auf Sicherheitsprobleme hin überprüfen lassen, die von außen erkennbar sind, wie eine veraltete Version oder unsichere Servereinstellungen.

Clients

Clients werden für Windows, macOS, Linux, Android und iOS angeboten. Bei den Varianten für Desktop-Systeme liegt der Schwerpunkt auf Dateisynchronisation, während bei die mobilen Clients nur den Zugriff auf einzelne Dateien ermöglichen.

Beim mobilen Client für Android ist auch die automatische Übertragung von Fotos und Videos, die man mit der Kamera aufgenommen hat, möglich. Dabei kann man für Fotos und Videos unterschiedliche Ordner verwenden und angepasste Regeln benutzen. Die iOS-Version kann ich selber nicht testen, aber hier gibt es einen vergleichbaren Funktionsumfang. Bei den Reviews zur Nextcloud-App für Android findet man auch viele kritische Stimmen, die den fehlerhaften Upload der Bilder bemängeln. Mit der von mir verwendeten Version 3.1.0 habe ich solche Probleme aber nicht mehr erlebt. Da Nextcloud für die Übertragung WebDAV nutzt, kann man prinzipiell auch andere Programme, wie FolderSync, für diese Aufgabe nutzen, wenn einem der Nextcloud-Client nicht ausreicht.

Erweiterung mit Apps

Ein wichtiger Punkt bei Nextcloud ist die Erweiterbarkeit mit zusätzlichen Funktionen durch „Apps“. So gibt es neben Dateiablage, Kalender und Adressbuch auch eine Videokonferenz-Lösung im Browser mit „Talk“ und Office im Browser mit „Collabora“ oder „Onlyoffice“. Die Installation von Apps ist recht bequem über die administrativen Einstellungen in der Weboberfläche möglich.

Wenn Updates für Nextcloud selbst oder einzelne Apps vorliegen, erhält man dazu auch eine entsprechende Benachrichtigung.

Office im Browser

Ähnlich wie Google Documents bietet auch Nextcloud mit „Collabora“ oder „Onlyoffice“ die Möglichkeit, Office-Dokumente (Text, Tabellenkalkulation, Präsentation) direkt im Browser zu bearbeiten. Die Besonderheit dabei ist, dass mehrere Personen gleichzeitig an einem Dokument arbeiten können und „live“ die Aktionen der Anderen sehen können.

Auch ist es nicht nötig, das Dokument explizit zu speichern, da jede Änderung während der Eingabe an den Server übertragen und dort gespeichert wird. Bei Bedarf kann man in der Dateiverwaltung von Nextcloud auch jederzeit auf ältere Versionen des Dokumentes zurückgreifen.

Hinweise zur Einrichtung in Docker auf dem eigenen Server findet man hier:

Installation Collabora

Installation Onlyoffice

Collabora oder Onlyoffice?

Collabora basiert auf „LibreOffice Online“. Dabei läuft faktisch LibreOffice auf dem Server, während der Browser nur zur Darstellung der Oberfläche genutzt wird. Das sorgt für eine hohe Kompatibilität mit existierenden Dokumenten, speziell im Open Document-Format, bedingt aber auch viel Kommunikation zwischen Server und Client. Auch ist die Bildschirmdarstellung bei hohen Pixeldichten nicht immer optimal, wenn der Server nur eine unskalierte Darstellung als Bitmap generiert. Hinzu kommt, dass nur ein Teil der Funktionen von LibreOffice im Browser nutzbar ist. Nachdem ich auch häufig Verbindungsprobleme hatte, habe ich mir „Onlyoffice“ als Alternative angesehen und bin dabei geblieben.

Onlyoffice verlagert einen deutlich größeren Teil der Funktionalität auf den Browser und nutzt den Server hauptsächlich für den Datenaustausch mit anderen Nutzern, die am selben Dokument arbeiten. Dadurch werden auf Serverseite weniger Ressourcen benötigt und die Darstellung im Browser erfolgt immer „nativ“, so dass auch die Auflösung von 4K-Bildschirme genutzt wird. Onlyoffice ist wie Collabora ebenfalls Open Source. Die Quellen sind bei Github einsehbar.

Vom Funktionsumfang her sind die Editoren von Onlyoffice (Stand Server 5.1 CE und App Version 1.3.0 für Nextcloud) mit den Desktop-Anwendungen durchaus vergleichbar und auf jeden Fall eine ernstzunehmende Alternative zu Google Docs. Der Schwerpunkt von Onlyoffice liegt auf der Kompatibilität mit Microsoft Office, auch wenn man Dateien von LibreOffice prinzipiell öffnen kann. Möchte man Dokumente aber bearbeiten, ist eine Konvertierung in das OOXML-Format zwingend nötig, was Onlyoffice nach Rückfrage automatisch erledigt. Nachdem LibreOffice aber auch OOXML lesen kann, ist das kein all zu großes Problem – zumal alle Beteiligten ohnehin auch direkt im Browser arbeiten können, wenn nötig.

Insgesamt erscheint die aktuelle Umsetzung der Oberfläche bei Onlyoffice deutlich ausgereifter als bei Collabora und es bietet mittlerweile ebenfalls die Möglichkeit, Dokumente als öffentliche Links zum Lesen oder auch zur Bearbeitung freizugeben. In Verbindung mit LibreOffice auf dem Desktop muss man aber gelegentlich mit kleinen Abweichungen in der Formatierung rechnen.

Administration und Benutzerverwaltung

Die Administration findet überwiegend im Browser statt, allerdings gibt es einige Aufgaben, für die man das Kommandozeilentool „occ“ benötigt.

Benutzer/innen können Gruppen zugewiesen werden und sehen jeweils immer nur die Personen, die in den eigenen Gruppen enthalten sind. Dadurch ist Nextcloud auch dafür geeignet, mehreren Personengruppen gleichermaßen den Server bereitzustellen, ohne dass diese jeweils von den anderen Gruppen überhaupt etwas bemerken.

Kollaborative Zusammenarbeit

Eine große Stärke von Nextcloud ist die Möglichkeit, Informationen mit Anderen zu teilen. Man kann Dateien, Ordner, Kalender oder Adressbücher sowohl mit anderen Nextcloud-Benutzer/innen aber als öffentlich zugängliche Links teilen, so wie in Dropbox oder Google Drive. Je nach Art der geteilten Information und der dafür benötigten Anwendung ist dabei auch das direkte Betrachten oder Ändern im Browser möglich – etwa Office-Dokumente mit Onlyoffice, PDF-Dateien oder Bildergalerien. Auch Kalender können zur Ansicht so bereitgestellt werden, auch eingebunden in einer Website.

Mit der „Talk“-App kann man Videokonferenzen direkt im Browser abhalten, auch mit Gästen. Die technische Basis dafür ist WebRTC.

Dateisynchronisation

Für die Synchronisation von Dateien nutzt Nextcloud bislang nur das WebDAV-Protokoll. In der Regel ist das für kleinere Dateibestände auch vollkommen ausreichend und funktioniert bei mir bislang immer zuverlässig.

Problematisch kann es aber werden, wenn man es entweder mit viele Dateien zu tun hat (mehrere tausend) oder sehr große Dateien, die häufiger geändert werden, da ein Abgleich auf Blockebene, wie etwa bei Dropbox oder Seafile, nicht möglich ist – es müssen bei Änderungen immer die kompletten Dateien übertragen werden. Das funktioniert zwar auch, dauert aber eben mitunter sehr lange. Für mich ist das kein Problem, aber wer etwa Container von virtuellen Laufwerken so ablegen will, sollte vielleicht vorerst eine andere Lösung nutzen.

Nachdem OwnCloud aber eine Delta-Synchronisation angekündigt hat, besteht die Chance, dass auch Nextcloud das in nicht all zu ferner Zukunft ebenfalls anbietet. Siehe dazu auch die Diskussion bei Github.

Persönliches Fazit

Ich nutze Nextcloud auf meinem Server aktuell für mich selbst und mehr als 10 weitere Nutzer/innen mit Linux, Windows, macOS, Android und iOS. Oft sind mehr als 3-4 Personen gleichzeitig verbunden. Bisher gab es dabei keine gravierenden Probleme und auch das Update von Version 12 auf Version 13 hat gut funktioniert. Kleinere Probleme werden sehr schnell behoben und man merkt dem Projekt an, dass die Beteiligten großes Interesse daran haben, eine gute Lösung zu entwickeln.

Im April 2018 wurde bekannt gegeben, dass die deutsche Bundesverwaltung künftig Nextcloud für den Dateiaustausch im Rahmen ihrer „Bundescloud“ einsetzen wird, wie auch Golem berichtet hatte – für mich auch eine Bestätigung, dass Nextcloud mittlerweile eine ernstzunehmende Lösung darstellt.

Ein Gedanke zu „Erfahrungen mit Nextcloud“

  1. Olaf R.

    Hallo.
    Sehr guter Artikel, vielen Dank dafür.
    Er hat mich inspiriert mich am kommenden Wochenende endlich mal mit dem Thema Nextcloud zu beschäftigen.
    Gruß
    Olaf

Öffentlichen Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Wenn Du mich persönlich erreichen möchtest, siehe Impressum.