Nextcloud auf openSUSE Leap Server installieren

Die folgende Anleitung beschreibt daher eine Möglichkeit zur Installation und Einrichtung der Nextcloud auf openSUSE Leap 15.0 mit PHP 7, MariaDB und Apache als Basis. OpenSUSE Leap ist der mit Langzeitpflege unterstützte stabile Zweig des openSUSE-Projektes (siehe: openSUSE Leap) und eignet sich gut für den Einsatz als Serverbetriebssystem. Alternativ sind natürlich auch Debian, Ubuntu, CentOS oder andere geeignet, die Anleitung bezieht sich jedoch ausschließlich auf openSUSE.

Installation

OpenSUSE bietet über den OBS eine extra Paketquelle für PHP-Anwendungen. Nextcloud ist auch direkt in den Paketquellen verfügbar, allerdings in einer etwas älteren Version. Diese bekommt aber erfahrungsgemäß sicherheitskritische Updates, weshalb grundsätzlich zu dieser Version geraten werden kann. Sofern eine aktuelle Version gewünscht ist, kann die OBS-Quelle mit folgendem Befehl hinzugefügt werden:

# zypper addrepo http://download.opensuse.org/repositories/server:/php:/applications/openSUSE_Leap_15.1/ openSUSE BuildService - PHP:Applications  # zypper refreshCode-Sprache: PHP (php)

Gegebenenfalls ist es noch sinnvoll die Paketquelle anschließend in YaST abweichend zu priorisieren (z.B. mit 120), damit Paketen aus den normalen Paketquellen der Vorzug gegeben wird.

Abschließend muss nur noch Nextcloud aus den Paketquellen installiert werden:

# zypper in nextcloudCode-Sprache: PHP (php)

OpenSUSE Leap 15.1 liefert standardmäßig PHP 7  aus, weshalb im Gegensatz zu früheren Versionen eine genaue Prüfung der Abhängigkeiten nicht mehr erforderlich ist. Wer noch sehr alte Software parallel zu Nextcloud betreibt oder über eine Fremdquelle veraltete PHP-Versionen bezieht sollte vorher die Anforderungen überprüfen.

Zypper installiert nun zusätzlich zu Nextcloud auch noch PHP 7, sowie MariaDB und Apache. MariaDB ist ein MySQL-Fork und wird inzwischen bei openSUSE und RedHat Enterprise Linux/CentOS bevorzugt verwendet.

LAMP einrichten

MariaDB

Bevor es an die Einrichtung der Nextcloud geht, muss noch die zugrunde liegende Basis konfiguriert werden. Zuerst sollte MariaDB konfiguriert und für den Betrieb mit Nextcloud vorbereitet werden. Bei den entsprechenden Befehlen zeigt sich (noch?) die Herkunft von MySQL.

OpenSUSE startet neu installierte Dienste im Gegensatz zu Debian oder Ubuntu nicht automatisch, weshalb der Administrator nachhelfen muss.

# systemctl enable mysql  # systemctl start mysqlCode-Sprache: PHP (php)

Anschließend sollte ein root-Passwort vergeben werden.

mysqladmin -u root password <Neues Passwort> # Neues Passwort ohne die "<>" eingebenCode-Sprache: HTML, XML (xml)

Abschließend muss noch die Datenbank für Nextcloud angelegt werden. Dazu wechselt man in die MariaDB-Konsole:

mysql -u root -p  CREATE DATABASE nextcloud_db;  GRANT ALL ON nextcloud_db.* TO ncuser@localhost IDENTIFIED BY 'Passwort';Code-Sprache: CSS (css)

In diesem Fall wären nextcloud_db, ncuser und das gewählte Passwort die Informationen die später bei der Einrichtung von Nextcloud eingegeben werden müssten. Die Angaben können natürlich je nach Präferenz angepasst werden.

PHP

Die Voreinstellungen von PHP sind für einen Cloudspeicher etwas ungünstig. Angepasst werden können diese mit einem Editor der Wahl in folgender Datei:

# nano /etc/php7/apache2/php.iniCode-Sprache: PHP (php)

Folgende Angaben sollten auf jeden Fall geändert werden. Die neuen Werte sind Vorschläge und können je nach individuellem Setup angepasst werden. Weitere Änderungen ergeben sich ggf. im tatsächlichen Betrieb, können hier aber nicht allgemeingültig festgehalten werden:

  • post_max_size = 5G
  • upload_max_filesize = 5G
  • memory_limit = 512M

Apache

Mittels des Befehls a2enmod müssen noch ein paar Module für Apache aktiviert werden.

# a2enmod php7  # a2enmod rewrite  # a2enmod headers  # a2enmod env  # a2enmod dir  # a2enmod mimeCode-Sprache: PHP (php)

Ganz zum Schluss wird Apache gestartet und aktiviert:

# systemctl start apache2  # systemctl enable apache2Code-Sprache: PHP (php)

Nextcloud konfigurieren

Über http://IP-Adresse/nextcloud lässt sich nun – sofern alles funktioniert hat – die Konfiguration von Nextcloud durchführen.

OpenSUSE Leap hat standardmäßig eine Firewall integriert. Diese muss entsprechend konfiguriert oder deaktiviert werden um die Nextcloud erreichbar zu machen. Mit folgendem Kommando kann man die Firewall temporär stoppen um die Funktionsweise zu testen.

# systemctl stop firewalldCode-Sprache: PHP (php)

Dauerhaft deaktivieren kann man die Firewall via:

# systemctl disable firewalldCode-Sprache: PHP (php)

Die notwendigen Angaben für die Datenbank hat man bereits im Rahmen der Einrichtung von MariaDB festgelegt.

Nextcloud bietet dezidiert an die Nutzerdaten außerhalb des Webroot-Verzeichnisses abzulegen. Davon sollte man unter openSUSE auch gebrauch machen! Sofern man die Daten auf ein eigenes Btrfs-Subvolume ablegt kann man von den erweiterten Funktionen dieses Dateisystems wie automatische Snapshot etc. profitieren. Das Verzeichnis muss dem Apache-Nutzer gehören:

# chown wwwrun /Pfad/zum/Daten/VerzeichnisCode-Sprache: PHP (php)

Nun ist die Nextcloud als Cloud im heimischen Netzwerk verfügbar. Um sie von außerhalb aufzurufen muss noch ein DDNS-Dienst konfiguriert und die entsprechende Portfreigabe im Router vorgenommen werden. In diesem Szenario ist ein SSL-Zertifikat – z. B. von Let’s Encrypt – auch unabdingbar.

Cruiz
Cruizhttps://curius.de
Moin, meine Name ist Gerrit und ich betreibe diesen Blog seit 2014. Der Schutz der digitalen Identität, die einen immer größeren Raum unseres Ichs einnimmt ist mir ein Herzensanliegen, das ich versuche tagtäglich im Spannungsfeld digitaler Teilhabe und Sicherheit umzusetzen. Die Tipps, Anleitungen, Kommentare und Gedanken hier entspringen den alltäglichen Erfahrungen.

Kommentieren Sie den Artikel

Ergänzungen dienen der Diskussion über die Inhalte des Artikels. Nachfragen, Anmerkungen und Ergänzungen sind dezidiert erwünscht. Ergänzungen werden vor der Veröffentlichung moderiert. Wir behalten uns vor Kommentare ohne inhaltlichen Bezug oder abseitige Diskussionen nicht zu veröffentlichen.

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Weitere Artikel