Kapitel 14

Die eigene Cloud mit Nextcloud

IN DIESEM KAPITEL

  • Nextcloud als eigene Cloud auf eigenem Server
  • Teilen von Dateien
  • Synchronisieren von Kontakten und Kalender

Während SAMBA und NFS typische Datei-Server des Intranets sind, stellt Nextcloud vor allem einen Datei-Server im Internet-Umfeld dar, also eine Cloud. Nextcloud ist in PHP geschrieben und läuft unter der Kontrolle eines Webservers. Seine Daten speichert Nextcloud in Dateien, aber vor allem in einer Datenbank.

Damit werden für einen Nextcloud-Server mehrere Komponenten benötigt:

  • Der Webserver (typischerweise Apache)
  • PHP als Programmiersprache und Interpreter
  • Eine Datenbank (typischerweise MySQL beziehungsweise MariaDB)

Installation

Ein Repository-Paket für Nextcloud steht nicht zur Verfügung. Für den Vorgänger OwnCloud hat es mal eines gegeben, ob es das für Nextcloud geben wird, steht noch in den Sternen.

Stattdessen bieten die Hersteller von Nextcloud ein PHP-Skript an, das über den Browser gestartet werden kann. Diese Vorgehensweise hat den Charme, dass keine direkten Zugänge zum Zielrechner erforderlich sind. Selbst wenn man nur eine Web-Präsenz zur Miete hat, kann man Nextcloud installieren, sofern nur PHP und eine Datenbank mitgeliefert werden.

Will man Nextcloud auf einem eigenen Server installieren, muss man ihn so präparieren, dass die komplette Umgebung zur Verfügung steht, bevor man den Nextcloud-Setup startet. Es werden also folgende Komponenten benötigt:

  • Linux
  • Apache
  • MySQL beziehungsweise MariaDB
  • PHP

Eine solche Konfiguration wird oft auch als LAMP abgekürzt.

Bestandteile aus dem Repository

Mit dem folgenden Installationsbefehl werden alle benötigten Pakete aus dem Repository installiert, die als Voraussetzung von Nextcloud benötigt werden. Es müssen nicht alle Pakete genannt werden. Beispielsweise scheint auf den ersten Blick das Paket apache2 zu fehlen. Tatsächlich wird es aber automatisch angefordert, da das Paket libapache2-mod-php ohne den Apache sinnlos ist und darum eine Installation des Pakets apache2 auslöst.

# apt update
# apt install php-mysql libapache2-mod-php mariadb-server \
php-mbstring php-gd php-xml php-zip php-curl php-json

Falls Sie hier ein Paket vergessen haben sollten, werden Sie bei der Initialisierung von Nextcloud darauf hingewiesen.

Im Zuge der Installation wird der Apache bereits gestartet. Allerdings haben sich zu diesem Zeitpunkt eventuell noch nicht alle anderen Pakete bekannt gemacht. Damit die Komponenten zusammenspielen, wird der Webserver Apache neu gestartet.

# systemctl restart apache2

Einrichten einer leeren Datenbank für Nextcloud

Nextcloud legt seine Daten in der Datenbank ab. Das Paket wurde ja zuvor installiert, auch das Modul, das PHP mit der Datenbank verbindet. Bevor die Initialisierung von Nextcloud startet, muss eine leere Datenbank für Nextcloud angelegt werden. Dafür wird dann ein Benutzer benötigt, der die Datenbank verwaltet.

Wir haben mit dem obigen Befehl die Datenbank MariaDB installiert. Der SQL-Interpreter für das Anlegen der Datenbank und des Benutzers wird mit dem folgenden Aufruf gestartet.

# mysql -u root -p

Als Passwort geben Sie das Administrations-Passwort des Linuxsystems ein.

Anschließend befinden Sie sich im Kommandointerpreter der MariaDB als root. Hier muss eine Datenbank angelegt werden, die durch einen eigenen Benutzer verwaltet wird. Als Datenbankname verwende ich hier der Einfachheit halber nextcloud und auch den Benutzer nenne ich nextcloud. Das können Sie gern übernehmen. Lediglich mein sehr simples Passwort sollten Sie gehobeneren Wünschen anpassen.

CREATE DATABASE nextcloud;
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'geheim';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost';
FLUSH PRIVILEGES;
exit

Mit diesen Befehlen wurde eine Datenbank namens nextcloud angelegt. Dazu kommt ein Benutzer gleichen Namens in der Umgebung localhost. localhost ist völlig ausreichend, solange sich Datenbank und Nextcloud-Server auf demselben Computer befinden. Mit dem GRANT-Befehl wird die Kontrolle der Datenbank nextcloud an den Benutzer nextcloud übertragen. Damit ist die Aufgabe hier erledigt. Alles weitere wird das Initialisierungs-Setup tun.

Das Installations-Setup im Browser

Das Setup wird durch ein PHP-Skript ausgeführt. Dieses kann von der Webseite von nextcloud.com heruntergeladen werden. Das kann einerseits über die Eingabe der URL im Browser heruntergeladen werden. Alternativ funktioniert auch der Befehl wget, der einen direkten HTTP-GET-Befehl an die URL sendet und das Ergebnis im aktuellen Verzeichnis speichert. Bei der folgenden Variante wechseln wir in das Datenverzeichnis des Webservers und holen die Datei mit dem Befehl wget.

# cd /var/www/html
# wget https://download.nextcloud.com/server/installer/setup-nextcloud.php

Damit es später keine Rechteprobleme gibt, wird der gesamte Bereich dem Benutzer www-data und dessen Gruppe zugeordnet, der auch später den Betrieb des Webservers übernimmt.

# chown -R www-data.www-data /var/www/html

Für den Start des Setup-Skripts muss nun der Firefox oder ein anderer Browser gestartet werden. In dessen Adresszeile wird der Setup-Skript aufgerufen, wie in Abbildung 14.1 zu sehen.

http://localhost/setup-nextcloud.php

Falls doch noch nicht alle Pakete da sind, die Nextcloud benötigt, erscheint zunächst eine Seite, in der Nextcloud die Vermissten benennt. Dann müssen diese nachinstalliert und der Apache neu gestartet werden. Ein erneuter Aufruf der URL wird das Setup in Abbildung 14.1 anzeigen.

Ist alles gut, klicken Sie auf NEXT. Im nächsten Schritt bietet das Setup an, unter welcher URL Nextcloud erreicht werden soll. Vorgeschlagen wird nextcloud. Dann muss die Cloud später über http://localhost/nextcloud aufgerufen werden, beziehungsweise dem Servername statt localhost. Hinterlässt man nur einen Punkt, kann der Pfad nextcloud entfallen. Das kann dann eventuell zu Konflikten mit anderen Web-Anwendungen führen.

Abbildung 14.1: Nextcloud Setup Wizard im Browser

Ist das geregelt, klicken Sie auf NEXT. Auf den ersten Blick scheint nichts zu passieren. In Wirklichkeit rödelt ein Prozess im Hintergrund. Er holt sich eine etwa 200 MB große ZIP-Datei, entpackt sie und führt die Initialisierung aus. Man merkt diese Tätigkeiten nur daran, dass der Aktualisierungs-Button des Firefox ein X darstellt. Nach einiger Zeit meldet Nextcloud den »Success«. Aber Sie sind noch nicht fertig. Nach Klicken des Next-Buttons erscheint ein weiterer Dialog, der in Abbildung 14.2 zu sehen ist.

In manchen Fällen erscheint nicht dieser Bildschirm, sondern das System wird einfach ruhig und der Aktualisierungs-Button wird wieder frei. Dann hilft es, die URL localhost/nextcloud auf einem anderen Browser-Fenster aufzurufen. Die Installation setzt sich dann hier, wie unten beschrieben, fort.

Nun wird Benutzername und Passwort für den Nextcloud-Administrator festgelegt. Hinzu kommen die Angaben für die Datenbank, die die Daten der Nextcloud aufnehmen soll. Die Datenbank hatten Sie ja bereits zuvor eingerichtet. Wenn Sie es analog zur Beschreibung getan haben, verwenden Sie nextcloud als Datenbankbenutzername und nextcloud als Name der Datenbank. Ich hatte »geheim« als Passwort verwendet, hoffe aber, dass Sie einen originelleren Einfall haben.

Die Apps Calendar, Contacts, Mail, Nextcloud Office und Talk werden zur Installation vorgeschlagen, wie in Abbildung 14.3 zu sehen. Wenn Sie den Installations-Button anklicken, wird es nun wieder ein Weilchen dauern.

Nach einer kurzen Einführung erscheint der Bildschirm in Abbildung 14.4. Das Setup ist abgeschlossen. Nextcloud ist fertig zum Einsatz.

Abbildung 14.2: Datenbankanbindung der Nextcloud

Installation auf einem Webhoster

Die Art der Installation macht es auch möglich, eine Nextcloud auf einer einfachen Webpräsenz zu installieren. Viele Provider stellen die paar Dinge, die Sie benötigen:

  • Eine Upload-Möglichkeit
  • Eine Datenbank
  • Die Programmiersprache PHP
  • Ein wenig Plattenplatz ist erforderlich, etwas mehr kann nicht schaden.

Diese Bedingungen finden Sie teilweise sogar bei preisgünstigen Webpräsenzen vor.

Wie bei der direkten Installation muss man zuerst eine Datenbank anlegen und sich den Host, den Datenbanknamen, den Datenbankadministrator und dessen Passwort merken. Der Provider stellt dazu in der Regel eine Weboberfläche zur Verfügung.

Abbildung 14.3: Nextcloud-Installation

Abbildung 14.4: Nextcloud-Installation

Anschließend lädt man die PHP-Datei setup-nextcloud.php vom Nextcloud-Server herunter und lädt sie auf die eigene Webpräsenz in ein leeres Verzeichnis hoch. Wenn man dort die PHP-Datei aufruft, führt diese die Installation in dem aktuellen Verzeichnis aus.

Anschließend werden die Datenbankeigenschaften abgefragt, die Sie sich ja gemerkt haben. Der Rest der Installation läuft so ab, wie oben beschrieben. Ein paar Details mehr finden Sie unter der folgenden URL:

http://willemer.de/informatik/srvlinux/nextcloud.htm

Sonstiges zur Installation

Nextcloud ist abhängig von der PHP-Version und fragt diese ab. Damit kann es passieren, dass die PHP-Version aktualisiert wird und die Nextcloud plötzlich nicht mehr arbeiten will.

Da die Daten aber komplett in den Datenbanken abgelegt sind, ist das kein großes Problem. Man entfernt alles aus dem Verzeichnis, in dem Nextcloud läuft, holt sich eine neue Version und startet das PHP-Skript neu. Bei der Datenbank muss die bisherige Datenbank angegeben werden.

Um diese Abhängigkeit von PHP und Nextcloud einzufrieren, kann ein Docker-Container gebaut werden. Im Internet finden sich dazu einige Bauvorschläge. Auf diese Weise kann Nextcloud mit seiner PHP-Version alt und grau werden. Man muss selbst entscheiden, ob man diesem Ansatz folgen will. Einfacher wird die Installation meines Erachtens nicht. Falls Sie es dennoch probieren wollen, finden Sie in Kapitel 22 eine Einführung in den Umgang mit Docker.

Administration

Die Administration von Nextcloud erfolgt weitgehend im Browser. Bei der Installation haben Sie eine Administratorkennung festgelegt, die Sie sich hoffentlich gemerkt haben. Damit loggen Sie sich ein.

Benutzerverwaltung

Als Administrator finden Sie rechts oben einen Button in Kreisform mit einem großen Anfangsbuchstaben für ein Menü. Welcher Buchstabe es ist, hängt von dem Namen ab, den Sie dem Administrator gegeben haben. Wenn Sie auf diesen Kreis klicken, klappt ein Menü aus und hier können Sie BENUTZER wählen, um Benutzer von Nextcloud einzurichten.

Sie sehen eine Liste mit den aktiven Benutzern, die zu Anfang natürlich übersichtlich ist. Auf der rechten Seite können Sie mit dem Button NEUER BENUTZER einen Benutzer anlegen, der einen Benutzername, einen Anzeigenamen, Passwort, eine E-Mail-Adresse benötigt.

Daneben können Sie auch Gruppen anlegen, indem Sie auf den Button GRUPPE HINZUFÜGEN klicken. Nun können Sie den Namen der Gruppe angeben. Anschließend können Sie die Benutzer zu den Gruppen hinzufügen, indem Sie den Bleistift in der Benutzerliste anklicken.

Apps

Ebenfalls über das Menü des Administrators können Sie die Applikationen der Nextcloud verwalten. Dazu klicken Sie auf den Punkt APPS. Daraufhin erscheint eine Liste aller installierten Apps, aber weiter unten auch einige, die Sie nachinstallieren können. Wenn Sie auf den Namen einer App klicken, erscheint auf der rechten Seite eine Beschreibung des Dienstes.

Kalender und Kontakte

Nextcloud bietet je eine App für Kontakte und Kalender. Diese ist vor allem deshalb wertvoll, weil Sie damit die Kontakte und Kalender mehrerer Geräte synchronisieren können.

Falls Sie nicht schon bei der Erstinstallation die beiden Apps angewählt haben, können Sie über das Administratormenü die entsprechenden Apps nachinstallieren:

  1. Loggen Sie sich als Administrator ein.
  2. Wählen Sie aus dem Menü rechts oben den Punkt APPS.
  3. In der Liste links finden Sie den Punkt APP-PAKETE.
  4. Rechts davon tauchen die Pakete CONTACTS und CALENDAR mehrfach auf, beispielsweise unter der Rubrik GROUPWARE-PAKET.
  5. Klicken Sie jeweils dahinter auf den Button HERUNTERLADEN UND AKTIVIEREN
  6. Der Button wechselt zur Beschriftung DEAKTIVIEREN. Diesen klicken Sie jetzt natürlich nicht an.
  7. Die Symbole für Kalender und Kontakte erscheinen oben in der Menüleiste.

Anschließend kann jeder Benutzer diese Apps über das Symbol in der oberen Zeile erreichen. Für beides bringt Nextcloud eine Web-Oberfläche mit, so dass Sie Ihre Kontakte und Kalender über jeden Browser pflegen können. Die Bedienung ist nicht besonders kompliziert. Ich spare mir und Ihnen die Details. Sie schaffen das schon.

Viel spannender als die direkte Bedienung über das Web-Interface ist der Einsatz als DAV-Server für Kalender und Kontakte in Mobilgeräten und Groupware-Clients wie Thunderbird. Natürlich würden diese Aufgabe auch Google und Apple gern übernehmen, aber mit Nextcloud kann man deren krankhafte Sucht nach Daten durch einem eigenen Server therapieren.

Synchronisation mit CalDav und CardDav

Nextcloud synchronisiert seine Kontakte und Kalender über die Standards CalDav und CardDav. Entsprechend müssen die Clients lediglich diese Standards beherrschen, um gegen einen Nextcloud-Server synchronisieren zu können.

Das Adressbuch von Thunderbird synchronisieren

Thunderbird besitzt ein eigenes Adressbuch, eigentlich ist es eher ein Adressenammler mit recht eingeschränkter Bedienung. Um ein neues Adressbuch mit Verbindung zur Nextcloud hinzuzufügen, müssen Sie die Klappbox unter NEUES ADRESSBUCH ausfahren und daraus CARDDAV ADRESSBUCH HINZUFÜGEN auswählen.

Im folgenden Dialog geben Sie den Benutzernamen und die URL an, die Ihnen Nextcloud verrät, wenn Sie im Kontaktebereich in die Kontakte-Einstellungen links unten klicken und dort hinter Kontakte im Dreipunktemenü den Punkt LINK KOPIEREN auswählen. Diesen können Sie einpflegen. Tatsächlich können Sie in der Regel die folgende URL verwenden:

http://SERVER/nextcloud/remote.php/dav

Natürlich sollten Sie SERVER durch Ihren eigenen Server ersetzen. Anschließend erfragt Thunderbird Benutzername und Passwort des Nextcloud-Kontos. Im gleichen Dialog werden dann alle Kontakte angeboten, die Nextcloud zu bieten hat.

Den Kalender von Thunderbird synchronisieren

Im Kalenderbereich hat Thunderbird deutlich mehr zu bieten. Wenn Sie in den Kalender von Thunderbird wechseln, finden Sie in der linken Spalte hinter der Klappbox für KALENDER ein Pluszeichen, über das Sie neue Kalender hinzufügen können, wie in Abbildung 14.5 zu sehen ist.

Abbildung 14.5: Der Kalenderbereich von Thunderbird

  1. Aus dem erscheinenden Dialog wählen Sie einen Kalender aus dem Netzwerk statt vom eigenen Computer.
  2. Im Folgedialog geben Sie den Benutzernamen Ihres Nextcloud-Kontos und die URL an. Die URL können Sie aus dem Kalenderbereich der Nextcloud ermitteln. Es genügt aber auch http://SERVER/nextcloud/remote.php/dav, sofern Sie SERVER durch Ihre eigene Serveradresse ersetzen.
  3. Sie werden aufgefordert Ihr Passwort eingeben.
  4. Anschließend werden die verfügbaren Kalender angezeigt und Sie können diese abonieren.
  5. Zuletzt wird der Kalender aus dem NextCloud-Kalender neu angezeigt.

Kontakte auf dem iPhone

Das iPhone bietet von Haus aus eine Unterstützung von CardDAV. Insofern können die Kontakte von Nextcloud direkt im iPhone übernommen werden. Der Nextcloud-Server muss in den Einstellungen unter Kontakte eingetragen werden. Ihnen wird die Möglichkeit angeboten, ein neues Account anzulegen. Dort werden die iCloud von Apple, Google, Outlook.com und die üblichen Verdächtigen angeboten, die so gern mit den Daten handeln würden. Aber es gibt auch den Punkt »Andere«. Dort kann ein LDAP-Account, ein CardDAV-Accout und ein macOS-Serveraccount hinzugefügt werden.

In diesem Fall benötigen Sie ein CardDAV-Account. Für dieses müssen die Pfade eingegeben werden. Diese verrät Nextcloud, wenn man in der Kalender-App unten links die EINSTELLUNGEN anklickt und dort hinter dem Adressverzeichnis die drei Punkte anklickt, hinter denen LINK KOPIEREN steht.

In der folgenden Beschreibung sind HOST und USER groß geschrieben. Das Wort HOST müssen Sie durch Ihre Serveradresse ersetzen. Statt USER müssen Sie Ihren Benutzernamen eintragen. Vermutlich werden Sie auch ein originelleres Passwort kennen.

Wenn man damit fertig ist, kann man die Einstellungen verlassen und beim nächsten Betreten der Kontakte tauchen die Nextcloud-Kontakte auf.

Kalender auf dem iPhone

Auch für den Kalender wird ein Link benötigt. Der Link kann aus dem Kalender gewonnen werden. Dazu muss man im Kalender auf EINSTELLUNGEN & IMPORT klicken. Wenn man ganz nach unten scrollt, gibt es dort einen Punkt IOS/MACOS CALDAV-ADRESSE KOPIEREN. Dieses klicken Sie an und können den Link mit der Tastenkombination + in jeden Editor kopieren, um sich die URL anzuschauen.

Im iPhone gehen Sie folgende Schritte durch:

  1. In den EINSTELLUNGEN suchen Sie KALENDER auf.
  2. Dort wählen Sie ACCOUNT HINZUFÜGEN.
  3. Neben iCloud und Konsorten finden Sie wiederum ANDERE.
  4. Dort können Sie nun einen CALDAV-ACCOUT HINZUFÜGEN.

Für den Account benötigen Sie die URL, den Benutzer und sein Passwort. Als HOST setzen Sie die Domäne Ihres Servers ein und als USER Ihren Benutzernamen. Das Passwort werden Sie auch anders gestalten wollen.

Der Kalender wird aktiv geschaltet. Beim nächsten Betreten des Kalenders werden die Termine sichtbar.

Adressen und Kalender mit Android synchronisieren

Bei Android muss man für CalDav und CardDav allerdings eine App beschaffen. Android selbst kann mit diesem Standard leider nicht umgehen. Google scheint wenig Interesse zu haben, diese Lücke zu schließen.

In diese Lücke springen diverse Apps. Nextcloud zeigt eine Synchronisation anhand von DAVx Superscript 5 (früher DAVDroid). Die Apps CardDAV und CalDAV tragen das Protokoll im Namen. Eine kostenlose Alternative bietet OpenSync. Alle diese Lösungen müssen aus dem PlayStore installiert werden.

Als Beispiel verwenden wir hier OpenSync. Die anderen Apps arbeiten vergleichbar. Nach dem Start von OpenSync erscheint ein großes Plus zum Anlegen eines Synchronisationskontos.

  1. Sie werden gefragt, ob Sie den DAV-Server per EMail oder URL erreichen wollen. Sie wählen URL.
  2. Für Nextcloud genügt Opensync bereits die URL http://SERVER/nextcloud/remote.php/dav. Sie sollten allerdings SERVER durch die Adresse Ihres Servers ersetzen.
  3. OpenSync möchte dann gern eine E-Mail-Adresse als Bezeichner verwenden und erstellt ein entsprechendes Konto.
  4. Anschließend tippt man auf diesen Einträg und erhält eine Übersicht über alle zu synchronisierenden Elemente. Dazu gehören die Kontakte, deren Geburtstage und der Kalender. Man muss nur Haken an die gewünschten Elemente setzen und einmal das Synchronisationssymbol antippen.

Anschließend stehen für die Kontakt- und Kalender-Apps ein Konto von OpenSync zur Verfügung, die mit Nextcloud synchronisiert werden.

Office

Nextcloud stellt ein Nextcloud-Office zur Verfügung, das zu LibreOffice kompatibel ist und entsprechend auch die Microsoft-Dokumente verarbeiten kann. Allerdings müssen Sie dieses erst aktivieren. Dazu brauchen Sie die folgenden Schritte.

  1. Loggen Sie sich als Administrator ein.
  2. Im persönlichen Menü rechts des Administrator gibt es einen Punkt Apps. Klicken Sie ihn an.
  3. Klicken Sie auf die Lupe und tippen Sie das Wort »office« ein oder suchen Sie Nextcloud Office in der Liste APP-PAKETE.
  4. In der Liste erscheint NEXTCLOUD OFFICE und dahinter ein Button mit der Aufschrift HERUNTERLADEN UND AKTIVIEREN.
  5. Anschließend suchen Sie nach COLLABORA ONLINE. Dieses ist das Backend für das Office.
  6. Auch dieses laden Sie herunter und aktivieren es.
  7. Anschließend klicken Sie auf das Symbol links oben für Dateien. Es erscheint die Übersicht über die Dateien.
  8. Oben steht ein großes Pluszeichen in einem Kreis. Klickt man dieses an, erscheinen Punkte für ein neues Dokument, eine Tabelle oder eine Präsentation.
  9. Nach der Anwahl des gewünschten Dokumententyps kann der Dateiname vergeben werden. Danach öffnet die Anwendung.

Beim Klicken auf die entsprechenden Dateitypen wird nun immer das entsprechende Office-Programm geöffnet.

Dateien

In den meisten Fällen werden Anwender eine Nextcloud verwenden, um ihre Dateien im Netzwerk zu speichern und mit anderen Anwendern zu teilen. Wenn Sie auf das Dateien-Symbol oben links klicken, erhalten Sie eine Übersicht über die Dateien. Zur großen Überraschung sind bereits welche vorhanden. Sie dienen zum Ausprobieren und können später gelöscht werden.

Direkter Austausch von Dateien

Um Ihre Dateien vom Computer in die Nextcloud zu schaffen, genügt es, diese per Drag and Drop aus Ihrem Dateimanager in den Browserbereich hinüberziehen. Sie werden dann automatisch zu Ihrer Cloud hochgeladen. Wenn Sie dabei auf einem Ordner landen, wird die Datei dort hineingesteckt.

Etwas komplizierter ist der umgekehrte Weg. Hier müssen Sie die Datei anwählen und beispielsweise über die rechte Maustaste einen Download anfordern. Die Datei landet in dem Download-Verzeichnis Ihres Browsers. Von dort müssen Sie es von Hand weiterverteilen.

Der Nextcloud-Client

Die Nextcloud kann allerdings direkt in das Dateisystem eingebunden werden, wie es auch bei SAMBA oder NFS möglich ist. Das Protokoll heißt WebDAV (Web-based Distributed Authoring and Versioning) und basiert auf HTTP.

Für die Einbindung steht ein Client zur Verfügung. Mit einem Linux-Recher mit Debian, Ubuntu oder Linux Mint können Sie das Paket nextcloud-desktop installieren.

# apt install nextcloud-desktop

Die Anwendung wird unter ZUBEHÖR unter dem Namen NEXTCLOUD DESKTOP-SYNCHRONISATIONSCLIENT im Anwendungsmenü abgelegt.

Wenn Sie noch einen Windows- oder Mac-Arbeitsplatz benutzen, finden Sie unter  http://nextcloud.com/de/install entsprechende Clients für den Desktop zum Download. Weiter unten auf der Seite finden Sie Apps für Mobiltelefone.

  1. Der Assistent fragt, wo Sie sich anmelden wollen. Tatsächlich ist BEI NEXTCLOUD ANMELDEN die richtige Wahl. Sie ermöglicht auf dem nächsten Dialog, eine Serveradresse anzugeben.
  2. Hier geben Sie URL ein, unter der Sie Nextcloud installiert haben.
  3. Es erscheint ein Browserfenster, dass Sie auffordert, sich anzumelden.
  4. Nachdem dies erfolgreich war, schlägt das Programm vor, den Zugriff zu gewähren.
  5. Zurück beim Assistenten, hat der Client bereits alles vorbereitet und schlägt als Sync-Verzeichnis den Ordner Nextcloud in ihrem Heimatverzeichnis vor.
  6. Klicken Sie auf VERBINDEN.

In dem Verzeichnis Nextcloud finden Sie nun alle Dateien, die Sie auch in Ihrem Nextcloud-Browserfenster sehen. Alle Aktivitäten, die Sie lokal in diesem Verzeichnis durchführen, werden unverzüglich mit Nextcloud synchronisiert, ob Sie Dateien weiterverarbeiten und verändern, ob Sie welche anlegen oder löschen.

Sie sollten sich überlegen, was Ihnen diese Synchronisation wert ist. Immerhin kann ein Virus auf diesem Weg einen direkten Weg zu Ihren Datenen in der Cloud finden. Das Gleiche gilt natürlich für das Einbinden der Nextcloud per mount. Wenn Sie dagegen die Dateien per Drap and Drop tauschen oder gar direkt in der Cloud bearbeiten, dürfte ein Virus große Probleme haben, an diese Dateien heranzukommen.

Verzeichnisse von Nextcloud mounten

Der Einsatz des Nextcloud-Clients setzt eine grafische Oberfläche voraus. Unter Linux ist es möglich, den Datei-Service von Nextcloud auch ohne grafische Oberfläche einzubinden, vergleichbar mit SAMBA (siehe Kapitel 12) oder NFS (siehe Kapitel 13).

Der Datei-Server von Nextcloud basiert auf WebDAV. Auf diesem Protokoll stellt Linux ein Dateisystem zur Verfügung, das über das Paket davfs2 installiert werden kann.

# apt install davfs2

Die Installation fragt per Dialog, ob auch unpriviligierte Benutzer WebDAV-Ressourcen verwenden dürfen. Normalerweise ist nur root das Einbinden von Dateisystemen erlaubt.

Mount eines davfs von Hand

Bevor das Dateisystem eingehängt werden kann, benötigt man ein Verzeichnis, in das das Nextcloud-Dateisystem eingehängt werden kann. Der Befehl  mount sorgt für das Einhängen.

# mkdir /home/linux/mycloud
# cd /home/linux/mycloud
# mount -t davfs http://SERVER/nextcloud/remote.php/dav/files/USER.

Der Befehl fragt nach dem Benutzernamen für die Nextcloud-Instanz und dessen Passwort. Danach ist der Inhalt der Dateien unter dem Verzeichnis mycloud zugänglich und kann bearbeitet werden.

Der Nachteil dieses Vorgehens ist, dass alle Dateien des Verzeichnisses nun root gehören. In der Regel gehören diese Dateien ja einem Benutzer. Darum kann dem Befehl über die Option -o uid eine User-ID mitgegeben werden. Dadurch gehören die Dateien dem angegebenen Benutzer.

# mount -i davfs -o uid=1000 \
> http://SERVER/nextcloud/remote.php/dav/files/USER \
> /home/linux/mycloud

Hinterlegen des Passworts

Sollen das Einhängen automatisch erfolgen – beispielsweise über die Datei /etc/fstab, dann ist es problematisch, wenn Benutzer und Passwort eingetragen werden müssen.

Da ist es hilfreich, dass in der Datei /etc/davfs/secrets Benutzer und Passwort hinterlegt werden kann. Dazu wird eine Zeile benötigt, die die URL mit dem Benutzernamen und dem Passwort verbindet.

# /etc/davfs2/secrets
http://SERVER/nextcloud/remote.php/dav/files/USER USER geheim

Wie inzwischen schon fast gewohnt, müssen Sie hier SERVER durch Ihre Serveradresse und USER durch die Benutzerkennung ersetzen.

Wie immer, wenn Passwörter in einer Datei hinterlegt sind, ist es notwendig, diese vor fremden Zugriffen zu schützen. Das erreicht man, indem man die Datei mit dem Befehl chmod auf die Rechtekombination 600 setzt, sofern es nicht, wie in diesem Fall, bereits geschehen ist.

# chmod 600 /etc/davfs2/secrets

Automatisches Einhängen beim Start

Das Dateisystem kann nun, da die Anmeldekennungen hinterlegt sind, auch über die Datei /etc/fstab automatisch beim Systemstart eingebunden werden.

# /etc/fstab
https://SERVER/nextcloud/remote.php/dav/files/USER
/home/linux/mycloud davfs user, uid=1000,rw,auto 0 0

Die beiden Zeilen müssen in einer Zeile in der Datei /etc/fstab stehen. Hier im Buch beschränkt der rechte Rand die Länge der Zeile. Zum Testen verwendet man den Befehl mount -a. Sollte das klappen, kann man den Rechner neu booten.

Allgemein ist der Eintrag von Netzwerk-Ressourcen in der Datei /etc/fstab etwas problematisch. Sollte beim Booten der Server nicht gestartet oder nicht verfügbar sein, kann der Computer nicht sauber booten.

Datensicherung

Die Datensicherung besteht einerseits aus den statischen Dateien und der Datenbank. Bevor die Sicherung gestartet wird, sollte Nextcloud in den Wartungmodus versetzt werden, damit keine Änderungen während der Datensicherung erfolgen und diese eventuell inkonsistent machen.

# sudo -u www-data php8.1 /var/www/nextcloud/occ maintenance:mode --on

Das Verzeichnis /var/www/html/nextcloud enthält wesentliche Teile der Konfiguration. Diese sollten beispielsweise per  tar oder  rsync gesichert werden.

# tar czf SAVE.tgz /var/www/html/nextcloud

Je nachdem, welche Datenbank Sie verwenden, müssen Sie noch die Datenbank  nextcloud sichern. Im Falle von MySQL oder MariaDB verwenden Sie dazu den Befehl mysqldump, wie in Kapitel 9 beschrieben.

$ mysqldump --single-transaction nextcloud -u nextcloud -p> sicher.sql

Zu guter Letzt muss der Wartungsmodus wieder beendet werden.

# sudo -u www-data php8.1 /var/www/nextcloud/occ maintenance:mode --off