Nextcloud auf einem CentOS-7-Server bei centron installieren

Nextcloud ist – wie der Name schon andeutet – eine überzeugende Alternative zur Open-Source-Dateihosting-Lösung ownCloud.

In dieser Anleitung zeige ich dir, wie du Nextcloud auf einer centron CentOS-7-Serverinstanz bereitstellst.

Voraussetzungen

  • Eine frisch bereitgestellte centron CentOS-7-Serverinstanz.
  • Ein Benutzerkonto mit sudo-Rechten für den Login.

Schritt 1: System aktualisieren

Melde dich mit deinem sudo-Benutzer an und bringe das System auf den neuesten stabilen Stand:

sudo yum install epel-release -y

sudo yum update -y

sudo shutdown -r now

Nach dem Neustart loggst du dich erneut mit demselben sudo-Benutzer ein.

Schritt 2: Apache installieren

Richte Apache als Webserver ein, über den Nextcloud laufen wird:

sudo yum install httpd -y

Deaktiviere die standardmäßige Apache-Willkommensseite:

sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf

Aus Sicherheitsgründen soll Apache keine Verzeichnisinhalte im Webroot /var/www/html auflisten:

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf

Wie von Nextcloud gefordert, verhindere das Laden der WebDAV-Module durch Apache:

sudo sed -i 's/^/#&/g' /etc/httpd/conf.modules.d/00-dav.conf

Starte Apache und stelle sicher, dass der Dienst beim Booten automatisch startet:

sudo systemctl start httpd.service

sudo systemctl enable httpd.service

Schritt 3: PHP und benötigte PHP-Erweiterungen installieren

Nextcloud empfiehlt PHP 5.6. Du kannst PHP 5.6 sowie die erforderlichen Erweiterungen über das IUS-YUM-Repository installieren.

Füge zunächst das IUS-YUM-Repository hinzu:

cd

wget https://centos7.iuscommunity.org/ius-release.rpm

sudo rpm -Uvh ius-release.rpm

Installiere danach PHP 5.6 samt aller notwendigen Erweiterungen aus IUS:

sudo yum install php56u php56u-common php56u-xml php56u-gd php56u-mbstring php56u-process php56u-mysqlnd php56u-intl php56u-mcrypt php56u-imap php56u-cli -y

Erhöhe die PHP-Upload-Limits auf einen passenden Wert, zum Beispiel 50 MB:

sudo cp /etc/php.ini /etc/php.ini.bak

sudo sed -i "s/post_max_size = 8M/post_max_size = 50M/" /etc/php.ini

sudo sed -i "s/upload_max_filesize = 2M/upload_max_filesize = 50M/" /etc/php.ini

Starte Apache neu, damit die Änderungen aktiv werden:

sudo systemctl restart httpd.service

Schritt 4: MariaDB installieren und eine Nextcloud-Datenbank anlegen

Installiere MariaDB:

sudo yum install mariadb mariadb-server -y

Starte MariaDB und aktiviere den Autostart beim Systemboot:

sudo systemctl start mariadb.service

sudo systemctl enable mariadb.service

Sichere die MariaDB-Installation ab:

sudo /usr/bin/mysql_secure_installation

Beantworte die Fragen dabei wie folgt:

  • Enter current password for root (enter for none): Enter
  • Set root password? [Y/n]: Y
  • New password: <your-password>
  • Re-enter new password: <your-password>
  • Remove anonymous users? [Y/n]: Y
  • Disallow root login remotely? [Y/n]: Y
  • Remove test database and access to it? [Y/n]: Y
  • Reload privilege tables now? [Y/n]: Y

Lege nun eine eigene Datenbank für Nextcloud an:

mysql -u root -p

Gib das zuvor gesetzte MariaDB-Root-Passwort ein, um die MySQL-Shell zu öffnen.

In der Shell erstellst du Datenbank und Benutzer und vergibst Rechte. Ersetze den Datenbanknamen nextcloud, den Nutzer nextclouduser und das Passwort yourpassword konsequent durch deine Werte:

CREATE DATABASE nextcloud;

CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'yourpassword';

GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;

FLUSH PRIVILEGES;

EXIT;

Schritt 5: Nextcloud installieren

Lade die aktuelle stabile Nextcloud-Version von der offiziellen Website herunter. Zum Zeitpunkt der Erstellung dieser Anleitung war 9.0.53 die neueste stabile Version.

cd

wget https://download.nextcloud.com/server/releases/nextcloud-9.0.53.zip

Entpacke das Nextcloud-Archiv:

sudo yum install unzip -y

unzip nextcloud-9.0.53.zip

Verschiebe die Nextcloud-Dateien in das Webroot und setze die passenden Berechtigungen:

sudo mv nextcloud/* /var/www/html && sudo chown apache:apache -R /var/www/html

Installiere Nextcloud per Kommandozeile mit den folgenden Beispielwerten. Ersetze sie durch deine echten Daten.

  • database-name: nextcloud
  • database-user: nextclouduser
  • database-pass: yourpassword
  • admin-user: admin
  • admin-pass nextcloudadminpassword

Starte die Installation mit:

cd /var/www/html/

sudo -u apache php occ maintenance:install --database "mysql" --database-name "nextcloud" --database-user "nextclouduser" --database-pass "yourpassword" --admin-user "admin" --admin-pass "nextcloudadminpassword"

Wenn alles korrekt läuft, erscheint eine Ausgabe wie:

Nextcloud is not installed - only a limited number of commands are available

ownCloud was successfully installed

Trage deine Server-IP (z. B. 203.0.113.1) und deine Domain (z. B. www.example.com) in die Liste der vertrauenswürdigen Domains ein:

sudo vi /var/www/html/config/config.php

Suche diese Zeile:

0 => 'localhost',

Füge direkt darunter diese beiden Zeilen ein:

1 => '203.0.113.1',

2 => 'www.example.com',

Speichere und beende den Editor:

:wq!

Nach der Installation solltest du strikte Rechte für Dateien und Ordner setzen, um unbefugten Zugriff zu verhindern:

sudo find /var/www/html -type f -print0 | sudo xargs -0 chmod 0640

sudo find /var/www/html -type d -print0 | sudo xargs -0 chmod 0750

sudo chown -R root:apache /var/www/html

sudo chown -R apache:apache /var/www/html/apps

sudo chown -R apache:apache /var/www/html/config

sudo chown -R apache:apache /var/www/html/data

sudo chown -R apache:apache /var/www/html/themes

sudo chown -R apache:apache /var/www/html/updater

sudo chmod 0644 /var/www/html/.htaccess

sudo chown root:apache /var/www/html/.htaccess

sudo chmod 0644 /var/www/html/data/.htaccess

sudo chown root:apache /var/www/html/data/.htaccess

Beachte außerdem, dass das Verzeichnis /var/www/html/assets noch nicht existiert. Falls du es später anlegst, führe diesen Befehl aus:

sudo chown -R apache:apache /var/www/html/assets

Diese Rechte helfen dabei, Nextcloud vor unautorisiertem Zugriff zu schützen.

Hinweis: Für spätere Updates kannst du die Rechte vorübergehend lockern mit:

sudo chown apache:apache -R /var/www/html

Nach dem Update setzt du die strikten Rechte wie oben wieder.

Starte Apache neu, um alles zu übernehmen:

sudo systemctl restart httpd.service

Passe die Firewall so an, dass HTTP und HTTPS erreichbar sind:

sudo firewall-cmd --zone=public --permanent --add-service=http

sudo firewall-cmd --zone=public --permanent --add-service=https

sudo firewall-cmd --reload

Fertig. Du kannst nun im Browser http://203.0.113.1 aufrufen und dich mit dem angelegten Nextcloud-Admin-Konto anmelden.

Quelle: vultr.com

Jetzt 200€ Guthaben sichern

Registrieren Sie sich jetzt in unserer ccloud³ und erhalten Sie 200€ Startguthaben für Ihr Projekt.

Das könnte Sie auch interessieren:

Moderne Hosting Services mit Cloud Server, Managed Server und skalierbarem Cloud Hosting für professionelle IT-Infrastrukturen

TensorRT und ONNX: High-Performance-ML auf NVIDIA-GPUs

AI/ML, Tutorial
VijonaHeute um 12:58 Uhr Machine-Learning-Frameworks, Modell-Tools und Deployment-Strategien in der ML-Pipeline Machine-Learning-Frameworks, spezialisierte Modell-Tools und Deployment-Lösungen übernehmen jeweils unterschiedliche Aufgaben innerhalb eines Machine-Learning-(ML)-Workflows. In jeder Phase – von der Modellerstellung über…