Diese Webseite speichert "Cookies" zur Reichweitenmessung (VG Wort) und zur statistische Auswertungen (Matomo). Diese Einwilligung ist freiwillig, für die Nutzung dieser Website nicht notwendig und kann jederzeit widerrufen werden. Mehr Informationen hierzu entnehmen Sie bitte den Datenschutzbestimmungen.

Datenschutz im digitalen Alltag

Damit Privates privat bleibt

Pakete

Exkurs: Nextcloud als Snap installieren

Die Einrichtung und Pflege einer Nextcloud und eines gesamten LAMP-Stacks ist für viele Anwender eine abschreckende Herausforderung. Leichter ist dies mit einem fertigen Snap Paket, das direkt von der Nextcloud-Community bereit gestellt wird und eine komplette Nextcloud-Umgebung mitbringt.

Dieser Beitrag ist ein Exkurs der Serie Cloud in Eigenregie (siehe: Cloud in Eigenregie I: Vorbemerkungen). Dort wurde lediglich abstrakt auf die Installationsmöglichkeiten einer Cloud Bezug genommen. 

Die Snap-Variante von Nextcloud läuft auf jeder Distribution, die Snap-Pakete unterstützt. Als Zusatzmodule steht dies bereits für die meisten Distributionen bereit. Direkt in den Paketquellen hat dies neben Ubuntu auch Debian 10 "Buster". Die anderen unterstützten Distributionen dürften kaum Relevanz für Server besitzen.

Nextcloud installieren

Zuerst muss Snap für Debian erst einmal installiert werden.

# apt-get install snapd

Anschließend installiert man das Snap-Paket. Zuerst lädt die Routine dann noch die fehlende Core-Umgebung für Snap-Pakete um anschließend das Nextcloud Paket einzurichten.

# snap install nextcloud

Das Snap-Paket bringt neben der Nextcloud auch noch einen kompletten LAMP-Stack mit: Apache, MySQL PHP und Redis. Dies benötigt natürlich ein wenig Speicherplatz.


Exkurs: Ports

Wichtig ist, dass kein anderer Apache-Server auf die Standardports lauscht, da diese sich ansonsten in die Quere kommen. Das dürfte aber kaum ein Problem sein, denn wer bereits einen kompletten LAMP-Stack pflegt wird sich nicht zusätzlich noch das Snap-Paket einrichten und dadurch doppelten Ressourcenverbrauch riskieren. Wer dennoch bereits einen LAMP-Stack nutzt muss die Ports des Snap-Pakets ändern. Beispielsweise auf folgende Konfiguration:

# snap set nextcloud ports.http=81

# snap set nextcloud ports.https=444


Snap-Pakete haben nur limitierte Zugriffsrechte auf das System. Nextcloud bietet bei der Einrichtung die Möglichkeit einen spezifischen Speicherort für die Daten außerhalb der Nextcloud-Umgebung festzulegen. Das sollte man auch unbedingt machen (unabhängig ob Snap-Variante oder nicht!). Damit das Nextcloud-Snap dies allerdings darf muss noch folgender Befehl eingegeben werden:

# snap connect nextcloud:removable-media

Bevor man die Initialisierung startet legt man nun noch den Speicherpfad für die Daten fest. Dazu bearbeitet man die folgende Datei:

# nano /var/snap/nextcloud/current/nextcloud/config/autoconfig.php

In folgender zeile sollte der anvisierte Speicherpfad stehen:

'directory' => '/media/Daten/nextcloud',

Dieser muss natürlich dem Apache-Nutzer gehören:

# chown www-data:www-data /media/Daten/nextcloud

Anschließend muss man noch den PHP Service neustarten:

# snap restart nextcloud.php-fpm

Abschließend ruft man die Instanz im internen Netz über die interne IP-Adresse oder den Hostname des Servers auf. Wenn alles funktioniert erscheint die übliche Initialisierungsroutine von Nextcloud. Hier legt man dann noch die Zugangsdaten für das Konto fest.

Sofern man die Nextcloud lediglich im internen Heimnetz nutzen möchte war es das bereits. Das Snap-Variante reagiert nicht so performant wie eine normale Installation, bedeutet aber deutlich weniger Wartungsaufwand und erfordert viel werniger Kenntnisse in der Server-Administration. Insbesondere was die Einrichtung eines Redis-Cache und ähnliches betrifft.

Let's Encrypt Zertifikat einrichten

Sollte eine Erreichbarkeit außerhalb des Heimnetzes erforderlich sein, muss man für eine verschlüsselte Verbindung zusätzlich ein Zertifikat anfordern und einbinden. Seit einigen Jahren nutzt man dafür eigentlich ausschließlich Let's Encrypt. Eine Erreichbarkeit via DynDNS und Port-Freigabe ist hierfür erforderlich, siehe: Externer Zugriff auf den Server).

Die Einrichtung ist dann bei der Snap-Variante sehr einfach. Folgender Befehl startet die Routine:

# nextcloud.enable-https lets-encrypt

Hier bestätigt man die Anforderungen und trägt eine Mail-Adresse und die Domain, unter der die Nextcloud-Instanz zu erreichen ist, ein. Anschließend kann man die Nextcloud-Instanz via HTTPS Verbindung aufrufen. 


Bilder:
Einleitungs- und Beitragsbild von harshahars via pixabay

Tags: Nextcloud, Let's Encrypt, HTTPS, Snaps

Ergänzungen zum Artikel

Weitere Informationen können den Nutzungsbedingungen entnommen werden.

Markus
Lustigerweise hab ich Nextcloud erst vorgestern neu aufgesetzt.
Hab dafür Nextcloudpi benutzt, bietet fertige Images für diverse Einplatinenrechner und Installationsscripte an.
Sowieesaussieht auch von der Nc Community.

Habe nach deiner Anleitung installiert
USB-Stick auf /srv/nextcloud gemountet (fstab)
Das Verzeichnis in /var/snap/nextcloud/current/nextcloud/config/autoconfig.php angepasst.

Beim ersten Start kommt :
Das Datenverzeichnis /snap/nextcloud/12759/htdocs/data kann nicht erstellt oder es kann darin nicht geschrieben werden.

Obwohl das Datenverzeichnis gar nicht in /snap/nextcloud/12759/htdocs/data liegt

Eine Idee ??

Gerrit
Das Datenverzeichnis muss natürlich dem Servernutzer gehören bzw. er muss dort Lese- und Schreibberechtigung haben. Das habe ich oben nicht erwähnt.

# chown www-data:www-data /pfad/zum/daten/verzeichnis

norbert
Hat leider nichts gebracht
Es kommt weiterhin
Das Datenverzeichnis /snap/nextcloud/12759/htdocs/data kann nicht erstellt oder es kann darin nicht geschrieben werden.

Ich habe Armbian auf einem Odroid C2 laufen
Das kanns aber wohl nicht der Grund sein

Gerrit
Das ist ein recht spezielles Setups, damit kenne ich mich nicht aus. Da musst du die entsprechenden Supportforen aufsuchen.

5000 Buchstaben übrig


  • Betriebssystem wählen

    Das Betriebssystem mit dem Desktoprechner, Notebooks und Mobilgeräte wie Smartphones und Tablets betrieben werden, dient einerseits als Grundlage jeder weiteren Weiterlesen
  • Daten verschlüsseln

    Verschlüsselung von Daten ist eine der wichtigen Erstmaßnahmen um Datenabfluss zu vermeiden. Externe Festplatten oder Speichermedien kann man verlieren, Notebooks Weiterlesen
  • Kommunikation schützen

    Im Zuge der Digitalisierung haben sich auch die Kommunikations-Kanäle vervielfältigt. Videotelefonie, Instant Messenger, sowohl für den Desktop, als auch im Weiterlesen
  • Anonymisierung

    Anonymität gehört im Zeitalter von Werbetracking und Bestandsdatenabfragen der Vergangenheit an. Mit einigen speziellen Programmen wie TOR oder spezialisierten Systemen Weiterlesen
  • 1