Nextcloud ist eine Open-Source-Suite von Client-Server-Software zum Erstellen und Verwenden von Datei-Hosting-Diensten. Es ist eine kostenlose, selbst gehostete Cloud-Speicherlösung, ähnlich wie Dropbox, Google Drive usw. Mit Nextcloud müssen Sie sich keine Gedanken über teure Alternativen machen, und da Sie Ihre eigenen Dateien hosten, müssen Sie sich keine Sorgen machen über den Datenschutz oder jemand, der Ihre Daten sammelt.
NextCloud kann auf einem privaten Heimserver oder einem virtuellen privaten Server in der Cloud installiert werden. Dateien können dann hochgeladen und dann mit einem lokalen Desktop, Laptop oder sogar einem Smartphone synchronisiert werden. So haben Sie die volle Kontrolle über Ihre Daten.
Funktionen von NextCloud
- NextCloud hat Synchronisierungsclients für Linux, Mac OS, Windows, Android und IOS
- Ende-zu-Ende-Verschlüsselung – Dateien werden verschlüsselt, während sie auf den Server hochgeladen werden
- NextCloud ist kostenlos und Open Source
- Kann in eine Online-Office-Suite (Collobora, OnlyOffice) integriert werden, sodass Sie Ihre doc-, ppt- und xls-Dateien direkt von NextCloud aus erstellen und bearbeiten können.
- Der App Store enthält Hunderte von Apps zur Erweiterung der Funktionalität (z. B. Kalender-App, Notizen-App, Videokonferenz-App usw.).
Verwandte Inhalte
- So installieren und konfigurieren Sie NextCloud unter Ubuntu 20.04 und LEMP
- So installieren und konfigurieren Sie NextCloud auf Centos 8 und LEMP
- Wie man Mariadb 10 in Debian 11 installiert und konfiguriert
- Wie man PHP und Nginx (LEMP) unter Debian 11 installiert und einrichtet
Voraussetzungen
Um dieser Anleitung zu folgen, stellen Sie sicher, dass Sie Folgendes haben:
- Ein aktueller Debian 11 Server
- Internetzugang vom Server
- Root-Zugriff vom Server oder Benutzer mit sudo-Zugriff
Inhaltsverzeichnis
- Stellen Sie sicher, dass die Serverpakete auf dem neuesten Stand sind
- Mariadb 10 in Debian 11 installieren
- Mysql-Benutzer für NextCloud erstellen
- Installation von PHP in Debian 11
- Installieren von Nginx in Debian 11
- Nextcloud herunterladen und konfigurieren
- Konfigurieren Sie Nginx, um NextCloud von einem virtuellen Host aus zu bedienen
- PHP-Konfiguration aktualisieren
- Zugriff auf Nextcloud über die Web-URL
1. Stellen Sie sicher, dass die Serverpakete auf dem neuesten Stand sind
Lassen Sie uns mit diesem Befehl sicherstellen, dass unsere Serverpakete auf dem neuesten Stand sind:
sudo apt update
sudo apt -y upgrade
Lassen Sie uns dabei auch einige Abhängigkeiten installieren, die wir benötigen
sudo apt install -y unzip vim
2. Mariadb unter Debian 11 installieren
Mariadb ist ein beliebtes Opensource-Relational-Management-System. Es ist in den Standard-Repositories als mariadb-server
verfügbar .
Installieren Sie es mit diesem Befehl:
sudo apt install -y mariadb-server
Mariadb wird standardmäßig in Debian 11 installiert und gestartet. Überprüfen Sie den Status damit
$ sudo systemctl status mariadb
● mariadb.service - MariaDB 10.5.12 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2021-12-11 14:40:42 UTC; 4s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 1937 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 1938 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 1940 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, statu>
Process: 2001 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 2003 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
Main PID: 1987 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 14 (limit: 4626)
Memory: 76.3M
CPU: 639ms
CGroup: /system.slice/mariadb.service
└─1987 /usr/sbin/mariadbd
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: mysql
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: performance_schema
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: Phase 6/7: Checking and upgrading tables
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: Processing databases
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: information_schema
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: performance_schema
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: Phase 7/7: Running 'FLUSH PRIVILEGES'
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2008]: OK
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2736]: Checking for insecure root accounts.
Dec 11 14:40:44 ip-10-2-40-145 /etc/mysql/debian-start[2743]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables
Um sicherzustellen, dass Mariadb beim Booten startet, aktivieren Sie es mit diesem systemd-Befehl:
sudo systemctl enable mariadb
Sobald der MySQL-Dienst ausgeführt wird, müssen Sie ihn sichern. Mysql bietet ein Befehlszeilenprogramm, das dies tut:
sudo mysql_secure_installation
Der obige Befehl führt Sie durch die Eingabeaufforderungen zum Sichern und Festlegen eines Root-Passworts für die MySQL-Instanz.
Weitere Informationen zum Installieren und Einrichten von mysql finden Sie in diesem Leitfaden hier
3. MySQL-Benutzer für NextCloud erstellen
Es wird immer empfohlen, für jede App, die sich mit der DB verbindet, einen dedizierten Benutzer zu haben. Sehen Sie sich hier diesen Leitfaden zur Verwaltung von MySQL-Berechtigungen an. Wir richten eine Datenbank, einen Benutzer und ein Passwort ein, die von nextcloud verwendet werden:
Mit MySQL-Server verbinden:
mysql -u root -p
Nachdem Sie Ihr Passwort eingegeben haben, geben Sie Folgendes an der mysql-Eingabeaufforderung ein:
create database nextcloud;
create user 'nextcloud_user'@'%' identified by 'S0mStrongPa$$word';
grant all privileges on nextcloud.* to 'nextcloud_user'@'%';
Nachdem wir nun unsere MySQL-Verbindung konfiguriert haben, gehen wir zum nächsten Abschnitt, in dem wir PHP und Nginx installieren und konfigurieren.
4. Installation von PHP 7.4 in Debian 11
NextCloud funktioniert gut mit PHP 6.4. Um PHP 7.4 zu installieren, müssen wir das Remi-Repository aktivieren, damit wir die neueste Version erhalten.
Installieren Sie dann php und Abhängigkeiten
sudo apt install -y \
php \
php-gd \
php-curl \
php-zip \
php-dom \
php-xml \
php-simplexml \
php-mbstring \
php-intl \
php-json \
php-fpm
Weitere Informationen zum Einrichten von PHP und Nginx finden Sie in dieser Anleitung hier.
5. Installieren von Nginx in Debian 11
Lassen Sie uns als Nächstes Nginx in unserem System installieren. Verwenden Sie diesen Befehl, um nginx
zu installierensudo apt install -y nginx
Nginx wird standardmäßig gestartet. Überprüfen Sie den Status mit diesem Befehl:
$ sudo systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2021-12-11 14:42:39 UTC; 29s ago
Docs: man:nginx(8)
Process: 13698 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 13699 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 13780 (nginx)
Tasks: 3 (limit: 4626)
Memory: 3.1M
CPU: 24ms
CGroup: /system.slice/nginx.service
├─13780 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
├─13783 nginx: worker process
└─13784 nginx: worker process
Dec 11 14:42:39 ip-10-2-40-145 systemd[1]: Starting A high performance web server and a reverse proxy server...
Dec 11 14:42:39 ip-10-2-40-145 systemd[1]: Started A high performance web server and a reverse proxy server.
Active: active (running)
zeigen an, dass der Dienst jetzt betriebsbereit ist.
Um den Dienst beim Booten zu aktivieren, verwenden Sie diesen Befehl:
sudo systemctl enable nginx
6. Nextcloud herunterladen und konfigurieren
Nachdem wir den LEMP-Server nun erfolgreich in unserem System konfiguriert haben, lassen Sie uns NextCloud herunterladen und einrichten. Sie können die neueste Version von NextCloud von der NextCloud-Installationsseite herunterladen. Verwenden Sie diesen Befehl, um den Server NextCloud herunterzuladen:
cd /tmp
curl -LO https://download.nextcloud.com/server/releases/nextcloud-23.0.0.zip
Lassen Sie uns nun in einen Verzeichnispfad wechseln, um NextCloud in /var/www
bereitzustellen dann extrahieren Sie die heruntergeladene Datei dort:
cd /var/www
sudo unzip /tmp/nextcloud-23.0.0.zip
sudo chown -R $USER:$GROUP nextcloud
sudo chmod -R 755 nextcloud
Nextcloud benötigte ein Verzeichnis, um seine Daten zu speichern. Erstellen Sie also ein Datenverzeichnis und legen Sie die richtigen Berechtigungen für das nextcloud-Verzeichnis fest
sudo mkdir -p /var/nextcloud/data sudo chown -R $USER:$GROUP /var/nextcloud sudo chmod -R 755 /var/nextcloud
7. Konfigurieren Sie Nginx so, dass es NextCloud von einem virtuellen Host bedient
Wir konnten die NextCloud-Inhalte nach /var/www/nextcloud
herunterladen . Als nächstes muss Nginx eingerichtet werden, um es zu bedienen.
Lassen Sie uns eine virtuelle Website in dem Verzeichnis erstellen, in dem Nginx hier Inhalte bereitstellt /etc/nginx/conf.d
:
sudo vim /etc/nginx/conf.d/nextcloud.conf
Fügen Sie den folgenden Inhalt hinzu:
server {
listen 80;
server_name nextcloud.citizix.com;
root /var/www/nextcloud;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/run/php/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Sobald die obigen Änderungen vorgenommen wurden, müssen wir den Nginx-Server und den PHP-Form-Server neu starten. Verwenden Sie diese Befehle im Terminal, um dies zu erreichen.
sudo systemctl restart php7.4-fpm nginx
Zugriff auf Nextcloud über die Web-URL
Gehen Sie dann zu Ihrer festgelegten Domain http://nextcloud.citizix.com/nextcloud
Für mich. Sie werden aufgefordert, das Benutzerkonto zu erstellen. Geben Sie den Benutzernamen und das Passwort für den neuen Benutzer ein:
Geben Sie dann die Datenbankdetails ein:
Klicken Sie danach auf Fertig stellen. Sie werden zur Anmeldeseite weitergeleitet, wo Sie die Details für den erstellten Benutzer zum Anmelden verwenden. Bei erfolgreicher Anmeldung erhalten Sie das Dashboard.
Schlussfolgerung
In diesem Leitfaden ist es uns gelungen, LEMP auf Debian 11 einzurichten, um Next Cloud zu bedienen.