Achtung: Diese Artikelreihe basiert auf Ubuntu Server 18.04. Es existiert eine neuere und komplett überarbeitete Version auf Basis von Ubuntu 20.04 unter:
Übersicht: Ubuntu 20.04 Homeserver/NAS, Teil 1
Dieser Artikel ist Teil der Reihe selbstgebauter Homeserver/Nas mit Ubuntu 18.04
Nextcloud ist die Eierlegende-Wollmilchsau für selbstgehostete Cloudanwendungen. Das Projekt findet sich unter nextcloud.com, ist OpenSource und kann kostenlos heruntergeladen und genutzt werden.
In Nextcloud können Kalender und Kontakte gespeichert werden und mit dem Smartphone synchronisiert werden. Nextcloud kann Dienste wie Google Calendar komplett ersetzten. Außerdem gibt es einen Desktopclient mit welchem Dateien über mehrere Computer synchronisiert werden können, genau wie das bei Diensten wie Dropbox der Fall ist. Eine App für das Smartphone ermöglicht den Zugriff auf die Dateien von unterwegs. Außerdem ermöglicht die App den sofortigen Upload von Fotos oder Videos die mit dem Smartphone erstellt werden. Nextcloud bietet ein übersichtliches Webinterface, über welches man von jedem Computer mit jedem Webbrowser auf die Dateien auf dem Homeserver zugreifen kann.
Nextcloud ist in PHP geschrieben und benötigt einen Webserver und eine Datenbank.
Als Webserver wird Apache und als Datenbank MariaDB installiert.
Installation der MariaDB-Datenbank
MariaDB ist ein Datenbank-Server, welcher kompatibel zu Oracles MySQL-Server ist. Da Oracle den freien MySQL-Server sehr stiefmütterlich behandelt wird zunehmend auf MariaDB als Alternative gesetzt.
Der Datenbank-Server wird installiert mit
sudo apt install mariadb-server
Mit dem nächsten Befehl kann die MariaDB Installation abgesichert, bzw. für den Produktivbetrieb bereit gemacht werden indem z.B. der anonyme Benutzer gelöscht wird.
Im Gegensatz zu anderen Distributionen, oder wenn MariaDB aus anderen Quellen installiert wird, findet bei Ubuntu die Authentifizierung über einen Unix-Socket mit den Rechten des lokalen Benutzer statt. Wenn also ein MariaDB-Befehl als Root oder mit sudo aufgerufen wird, wird dieser auch als Rootuser im Datenbankserver ausgeführt. Ein lokaler Benutzer der sudo nicht nutzen darf (z.B. die bereits angelegten User heimnetz und heimgast) hat auch keinen Rootzugriff auf den Datenbankserver. Aus diesem Grund ist es nicht nötig und nicht sinnvoll in dieser Konfiguration ein Rootpasswort für den Datenbankserver zu vergeben. Wer sich für weitere Details interessiert findet hierzu einen interessanten Beitrag im Blog von Michael Kofler.
Die Absicherung erfolgt nun mit folgendem Befehl und folgenden Antworten:
sudo mysql_secure_installation
Enter current password for root (enter for none): Enter
Set root password? [Y/n]: N
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
Anlegen der Datenbank für Nextcloud
Nach der Installation des Datenbabank-Servers kann die Datenbank für die Nextcloud angelegt werden. Als erstes muss man sich auf dem Datenbank-Server einloggen.
sudo mysql -u root
Dann wird eine neue Datenbank mit dem Namen nextcloud angelegt
CREATE DATABASE nextcloud;
Im nächsten Schritt wird ein neuer Datenbankbenutzer für die Nextcloud Installation vergeben. Für diesen Benutzer wird ein Passwort vergeben, da dieser im Gegensatz zum Rootuser nicht an ein lokales Benutzerkonto gekoppelt ist. Das Passwort muss natürlich individuell festgelegt werden.
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'password';
im letzten Schritt werden dem Benutzer nextcloud alle Rechte an der gleichnamigen Datenbank eingeräumt.
GRANT ALL ON nextcloud.* TO 'nextcloud'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
Damit ist die Datenbank bereit. Die Änderungen werden nur noch gespeichert und anschließend loggen wir uns aus dem Datenbankserver wieder aus.
FLUSH PRIVILEGES; EXIT;
Installation des Apache Webserver
Nun wird der Apache Webserver installiert. Die Wahl fällt auf Apache, weil dieser weit verbreitet, gut dokumentiert ist und in der offiziellen Dokumentation von Nextcloud verwendet wird. Das Ausführen der PHP-Dateien übernimmt mod_php, eine Erweiterung für Apache.
Apache und mod_php werden mit diesem Befehl installiert:
sudo apt install apache2 libapache2-mod-php7.2
Außerdem benötigt Nextcloud weitere PHP-Module, welche mit den folgenden Befehl installiert werden:
sudo apt install php7.2-gd php7.2-json php7.2-mysql php7.2-curl php7.2-mbstring php7.2-intl php-imagick php7.2-xml php7.2-zip
Damit ist der Webserver grundsätzlich schon einsatzbereit. Ein Aufruf im Webbrowser über http://mimashome.ddns.org oder die IP-Adresse http://192.168.30.114 gibt bereits eine Webseite aus.
Einrichten des Let’s Encrypt https-Zertifikats
Damit die Übertragung der Daten über das Internet verschlüsselt und ohne störende Fehlermeldungen des Browsers erfolgen kann, wird ein Schlüsselpaar und ein Verschlüsselungszertifikat benötigt. Seit der Gründung von Let’s Encrypt sind solche, von allen Browsern und Betriebssystemen anerkannte Zertifikate nicht nur kostenlos sondern auch automatisiert und sofort zu erhalten. Ein echter Meilenstein für das Internet.
Die Erstellung der Schlüssel und das Beantragen, sowie die anschließende Zertifikatsverwaltung übernimmt die Software Certbot, welche zuerst wieder installiert werden muss.
sudo add-apt-repository ppa:certbot/certbot sudo apt update sudo apt install certbot python-certbot-apache
Dann wird ein Schlüsselpaar erstellt und ein Zertifikat für unsere DynDNS Adresse beantragt.
sudo certbot --apache certonly
Hierzu müssen ein paar Fragen beantwortet werden
- Enter email address (used for urgent renewal and security notices) (Enter ‚c‘ to
cancel): deine Emailadresse für Benachrichtigungen - Please read the Terms of Service. (A)gree/(C)ancel: A
- Would you be willing to share your email address with the Electronic Frontier
Foundation. (Y)es/(N)o: Y oder N, je nachdem ob man Mitteilungen Lets Encrypt bekommen möchte - No names were found in your configuration files. Please enter in your domain
name(s) (comma and/or space separated) (Enter ‚c‘ to cancel): mimashome.ddns.net
Jetzt werden die Daten überprüft und die Zertifikate erstellt und unter /etc/letsencrypt/live/mimashome.ddns.net gespeichert.
Wichtig: Dieser Punkt muss erfolgreich abgeschlossen werden, ansonsten werden die weiteren Schritte, sowie der Zugriff auf Nextcloud nicht funktionieren. Wenn die Erstellung der Zertifikate fehlschlägt, liegt wahrscheinlich ein Fehler bei der DynDNS-Konfiguration oder der Portweiterleitung im Router vor.
Wenn die Verifizierung der Domain und die Erstellung der Zertifikate erfolgreich war, beendet sich Certbot mit folgendem Hinweis.
Automatische Erneuerung der Zertifikate einrichten
Aus Sicherheitsgründen sind Let’s Encrypt Zertifikate nur drei Monate gültig. Sofern einem das Zertifikat abhanden kommt, ist der potentielle Schaden geringer als bei einem Zertifikat mir langer Laufzeit. Um ein wartungsarmes System zu bekommen muss die Aktualisierung der Zertifikate automatisiert werden. Dies übernimmt ein Cronjob, der wiederum regelmäßig einen Certbot-Befehl zum erneuern des Zertifikats ausführt.
Hierzu öffnen wir die Datei /etc/crontab
sudo nano /etc/crontab
und fügen vor der abschließenden Raute den folgenden Befehl ein:
@weekly root certbot renew
die crontab sollte dann etwa so aussehen
Damit wird einmal wöchentlich die Gültigkeitsdauer aller vorhandenen Zertifikate überprüft und bei Bedarf eine Neuausstellung beantragt.
Installation von Nextcloud und Konfiguration des Apache Webserver
Als erstes besorgen wir uns die Nextcloud Dateien. Diese findet man auf der offiziellen Webseite unter Downloads. Die Dateien können aber auch direkt über die Kommandozeile heruntergeladen werden, wobei wir zuerst in unser Homeverzeichnis wechseln und dann den Download starten.
cd ~ wget https://download.nextcloud.com/server/releases/latest.tar.bz2
Damit wird automatisch die aktuelle Version von Nextcloud heruntergeladen (Danke für den Tipp in den Kommentaren).
Nach dem Download werden die Dateien nach /var/www/html entpackt. Dies ist das Standardverzeichnis in welchem der Apache Webserver Webseiten erwartet. Beim entpacken wird automatisch das Unterverzeichnis Nextcloud erstellt. Anschließend werden die Dateirechte auf den Benutzer des Apache Webservers geändert, so dass Apache die Dateien lesen und für Updates auch beschreiben darf.
sudo tar -xjvf latest.tar.bz2 -C /var/www/html/ sudo chown -R www-data:www-data /var/www/html/nextcloud
Apache konfigurieren
Nun folgt noch die Konfiguration des Webservers. Für jeden Dienst der über Apache ausgeliefert wird, wird eine sogenannte Virtual-Host unter /etc/apache2/sites-available Konfiguration erstellt. Diese erstellen wir mit dem folgenden Befehl und öffnen die leere Datei anschließend mit dem Texteditor.
sudo touch /etc/apache2/sites-available/001-nextcloud.conf sudo nano /etc/apache2/sites-available/001-nextcloud.conf
In diese Date wird folgender Inhalt kopiert:
<VirtualHost *:80> ServerName mimashome.ddns.net ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined Redirect permanent / https://mimashome.ddns.net </VirtualHost> <IfModule mod_ssl.c> SSLStaplingCache shmcb:/tmp/stapling_cache(128000) <VirtualHost *:443> ServerName mimashome.ddns.net DocumentRoot /var/www/html/nextcloud ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined # SSL Konfiguration SSLEngine on SSLCertificateFile /etc/letsencrypt/live/mimashome.ddns.net/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/mimashome.ddns.net/privkey.pem SSLProtocol All -SSLv2 -SSLv3 -TLSv1.1 <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> <Directory /usr/lib/cgi-bin> SSLOptions +StdEnvVars </Directory> #Nextcloud Konfiguration <Directory /var/www/html/nextcloud/> Options +FollowSymlinks AllowOverride All <IfModule mod_dav.c> Dav off </IfModule> SetEnv HOME /var/www/html/nextcloud SetEnv HTTP_HOME /var/www/html/nextcloud </Directory> </VirtualHost> </IfModule>
Nun wird die bereits vorhandene Standardseite deaktiviert und dafür unsere neue Nextcloudkonfiguration aktiviert.
sudo a2dissite 000-default.conf sudo a2ensite 001-nextcloud.conf
Außerdem benötigt Nextcloud noch ein paar weitere Apache Module, die mit diesem Befehl aktiviert werden.
sudo a2enmod ssl rewrite headers env dir mime
Damit alle jetzt vorgenommenen Änderungen aktiviert werden muss der Apache Webserver einmal neu gestartet werden mit
sudo systemctl restart apache2
Nextcloud einrichten
Jetzt kann Nextcloud über den Webbrowser eingerichtet werden. Dazu wird die angelegte Dyndns Adresse über eine verschlüsselte https-Verbindung aufgerufen. https://mimashome.ddns.net.
Hier werden wir bereits von der funktionierenden, aber noch nicht eingerichteten Nextcloud empfangen.
Zuerst müssen wir jedoch im Dateisystem noch ein Verzeichnis anlegen in welches Nextcloud unsere Dateien speichert. In der Standardeinstellung würden diese auf der SystemSSD liegen. Wir wollen aber natürlich dass die Dateien auf unserem sicheren Storage-Raid abgelegt werden. Dazu wird das Verzeichnis zuerst erstellt und anschließend die Rechte so angepasst dass Apache und damit Nextcloud Zugriff bekommen.
sudo mkdir -p /mnt/storage/nextcloud sudo chown -R www-data:www-data /mnt/storage/nextcloud
Dann werden die Felder auf der Konfigurationsseite ausgefüllt.
- Benutzername und Passwort können hier frei vergeben werden. Hiermit loggt man sich später in die Nextcloud ein
- Dateiverzeichnis sollte geändert werden, so dass dieses nicht auf der SystemSSD sondern auf unseren Storage-Raid liegt. In diesem Fall /mnt/storage/nextcloud
- Datenbank-Benutzer ist nextcloud
- Datenbank-Password ist das beim Anlegen der Datenbank vergebene Passwort
- Datenbank-Name ist nextcloud
- localhost bleibt unverändert, da sich die Datenbank auf dem gleichen Computer befindet.
Mit einem Klick auf Installation abschließen wird Nextcloud eingerichtet und einsatzbereit gemacht.
Damit ist Nextcloud grundsätzlich Einsatzbereit. Allerdings haben wir derzeit nur Zugriff auf die Dateien unter /mnt/storage/nextcloud. Daten die wir über die im vorherigen Artikel angelegt haben sind noch nicht erreichbar.
Dies lösen wir dadurch, dass über die Nextcloud App „external storage support“ die bereits vorhandenen Verzeichnisse eingebunden werden. Damit Nextcloud auch Schreibzugriff auf die Dateien hat, die ja mit dem Benutzer heimnetz erstellt werden und nicht mit dem Benutzer des Webservers, benötigen wir noch die Software smbclient, die wieder über das Terminal installiert werden muss. Damit Nextcloud die Änderung mitbekommt starten wir anschließend den Apache einmal neu.
sudo apt install smbclient sudo systemctl restart apache2
Zum aktivieren der App in Nextcloud klickt man in der rechten oberen Ecke auf das Symbol mit dem Anfangsbuchstaben des Benutzernamens und anschließend auf Apps.
Bei den Apps findet man unter dem Punkt deaktivierte Apps die App External Storage Support, welche mit einem Klick auf aktivieren verfügbar gemacht wird.
Zum Einbinden der vorhandenen Ordner gehen wir wieder auf das Symbol in der rechten oberen Ecke und anschließend auf Einstellungen. Im linken Bereich findet man verwirrender Weise zwei Punkte mit dem Namen „Externe Speicher„. Zum Einrichten benötigen wir den unteren.
- Ordnername wird entsprechend der Freigabe benannt. Z.B. lokale Videos
- Externer Speicher ist SMB/CIFS
- Authentifizierung ist Benutzername und Passwort
- Konfiguration:
Host ist localhost
Share ist der Name der Freigabe. Z.B. Video
Entfernter Unterordner bleibt leer
Domain bleibt ebenfalls leer
Benutzername ist heimnetz oder heimgast. Je nachdem ob die Dateien mit Schreibrechten (heimnetz) oder aus Sicherheitsgründen nur mit Leserechten (heimgast) eingebunden werden sollen
Passwort ist das zum Benutzername gehörende Passwort
Ein klick auf den kleinen Haken am Ende des Formularfeldes bindet den Ordner in Nextcloud ein.
Dies wird für alle Freigaben wiederholt, die in Nextcloud eingebunden werden sollen. Also z.B. Audio, Dokumente…
Anschließend sind die eingebundenen Freigaben über Nextcloud erreichbar.
Homeserver/NAS mit Ubuntu 18.04: Teil 1, Einleitung, Hardware und Kosten
Homeserver/NAS mit Ubuntu 18.04: Teil 2, Systeminstallation
Homeserver/NAS mit Ubuntu 18.04: Teil 3, Grundkonfiguration
Homeserver/NAS mit Ubuntu 18.04: Teil 4, Dateifreigaben im Heimnetz
Homeserver/NAS mit Ubuntu 18.04: Teil 5, Nextcloud
Homeserver/NAS mit Ubuntu 18.04: Teil 6, Media Streaming mit Plex
Homeserver/NAS mit Ubuntu 18.04: Teil 7, Backups mit Duplicati und Rsnapshot
173 Comments
Hay,
tolle Artikelserie. Danke dafür.
Kleiner Tipp: Statt wget https://download.nextcloud.com/server/releases/nextcloud-x.y.z.tar.bz2 empfiehlt es sich wget https://download.nextcloud.com/server/releases/latest.tar.bz2 zu verwenden, da somit immer die zum Zeitpunkt aktuelle Nextcloud Version heruntergeladen wird.
Gruß Steven
Danke für das Lob und den Tipp. Das ist wirklich besser. Werde den Artikel entsprechend anpassen.
Hi Niko,
noch eine Frage zur Systemsicherheit. Der hier gezeigte Daten-Server (NAS) beherbergt die Next-Cloud, hier im Artikel ist die einzige (?) Sicherheitsstufe Username und Passwort oder irre ich mich? Sollte der Server, der nextcloud hostet nicht mit weiteren Massnahmen gehärtet werden? two-factor-authentification und/oder fail2ban… ich weiß nicht, was es noch gibt. Oder wie machst Du das?
Gruß, Alex
Klar, du kannst das beliebig ausbauen. Das ist ja der Vorteil von einem selbstkonfigurierten System. Nextcloud bring eine Brute Force Protection mit, die das reihenweise durchprobieren von Passwörtern verhindert. Natürlich kannst du zusätzlich Fail2ban konfigurieren. Two factor authentication ist immer eine gute Idee, birgt aber auch die Gefahr sich selbst auzusperren, wenn man den zweiten Faktor/Handy verliert.
Wie gesagt, man kann diese Tutorial beliebig ausbauen. Dann ist es aber schnell nicht mehr einsteigerfreundlich.
Wäre es von Vorteil statt die Freigaben über den Ubuntu Server mit einer NAS Software wie OpenMediaVault zu realisieren
OMV ist ja eine eigenständige Linuxdistribution auf Debian Basis. Du musst also entscheiden ob du OMV oder Ubuntu Server nutzen möchtest.
Hallo,
großartiger Artikel 😉 werde mich voraussichtlich dem so anschließen.
Aber OMV kann doch einfach „dazu installiert werden“.
habe auf meinem raspi mit raspbian buster lite auch OMV einfach nachträglich dzauinstalliert.
oder irre ich mich da (kenn mich mit Linux leider sehr wenig aus 🙁 )
lg
Hallo,
ich kenne OMV auch nur vom Raspberry Pi. Der Installationsprozess hat sich mittlerweile geändert. Früher gab es ein fertiges ISO-Image, jetzt installiert man Raspbian und installiert OMV nachträglich. Dabei installiert OMV einen NGINX-Webserver der auch Port 80 und 443 verwenden möchte. Das beißt sich mit dem hier installierten Apache-Webserver. Natürlich kannst du OMV und Nextcloud parallel installieren. Dafür würde ich zuerst OMV installieren und dann Nextcloud für den NGINX konfigurieren.
Ich fürchte, OMV „einfach nachinstallieren“ wird nicht funktionieren.
Gruß
Niko
Habe eigentlich vor einen kleinen Homeserver mit Proxmox aufzusetzen und dort einige Linux Container und 2-3 VM laufen zu lassen. U.a. Nextcloud, OMV, Asterisk….
Übrigens: tolle Anleitung, nur das mit Let´s Encrypt werde ich benötigen. Eventl. ein Sef-signed Certificate
Servus Klaus,
hast du diese Konstellation am laufen?
Funktioniert das ohne weiteres?
Thomas
Hallo…
Das würde mich auch interessieren.
Ich habe nextcloud auf einem Container und omv 5 als nas auf einer VM laufen.. Bekomme aber kein connect.. Möchte das data Verzeichnis auf dem. Nas laufen lassen.
Hi.
Deine Anleitung ist ganz nett, aber ich habe ein großes Problem. Ich komme nur bis zu dem Punkt, wo Apache fertig konfiguriert wurde und neugestartet wird. Beim Neustarten von Apache kommt das hier:
stephanj@UbuntuServerSJL:~$ sudo systemctl restart apache2
Job for apache2.service failed because the control process exited with error code.
See „systemctl status apache2.service“ and „journalctl -xe“ for details.
als „systemctl status apache2.service“ kommt das:
● apache2.service – The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: failed (Result: exit-code) since Fri 2018-08-17 18:35:01 CEST; 3min 34s ago
Process: 29940 ExecStop=/usr/sbin/apachectl stop (code=exited, status=1/FAILURE)
Process: 29948 ExecStart=/usr/sbin/apachectl start (code=exited, status=1/FAILURE)
Main PID: 24040 (code=exited, status=0/SUCCESS)
Aug 17 18:35:01 UbuntuServerSJL systemd[1]: Starting The Apache HTTP Server…
Aug 17 18:35:01 UbuntuServerSJL apachectl[29948]: AH00526: Syntax error on line 23 of /etc/apache2/sit
Aug 17 18:35:01 UbuntuServerSJL apachectl[29948]: SSLCertificateFile: file ‚/etc/letsencrypt/live/medi
Aug 17 18:35:01 UbuntuServerSJL apachectl[29948]: Action ’start‘ failed.
Aug 17 18:35:01 UbuntuServerSJL apachectl[29948]: The Apache error log may have more information.
Aug 17 18:35:01 UbuntuServerSJL systemd[1]: apache2.service: Control process exited, code=exited statu
Aug 17 18:35:01 UbuntuServerSJL systemd[1]: apache2.service: Failed with result ‚exit-code‘.
Aug 17 18:35:01 UbuntuServerSJL systemd[1]: Failed to start The Apache HTTP Server.
und als „journalctl -xe“ das:
Job for apache2.service failed because the control process exited with error code.
See „systemctl status apache2.service“ and „journalctl -xe“ for details.
stephanj@UbuntuServerSJL:~$ journalctl -xe
— Subject: Unit apache2.service has begun start-up
— Defined-By: systemd
— Support: http://www.ubuntu.com/support
—
— Unit apache2.service has begun starting up.
Aug 17 18:35:01 UbuntuServerSJL apachectl[29948]: AH00526: Syntax error on line 23 of /etc/apache2/sit
Aug 17 18:35:01 UbuntuServerSJL apachectl[29948]: SSLCertificateFile: file ‚/etc/letsencrypt/live/medi
Aug 17 18:35:01 UbuntuServerSJL apachectl[29948]: Action ’start‘ failed.
Aug 17 18:35:01 UbuntuServerSJL apachectl[29948]: The Apache error log may have more information.
Aug 17 18:35:01 UbuntuServerSJL systemd[1]: apache2.service: Control process exited, code=exited statu
Aug 17 18:35:01 UbuntuServerSJL systemd[1]: apache2.service: Failed with result ‚exit-code‘.
Aug 17 18:35:01 UbuntuServerSJL systemd[1]: Failed to start The Apache HTTP Server.
— Subject: Unit apache2.service has failed
— Defined-By: systemd
— Support: http://www.ubuntu.com/support
—
— Unit apache2.service has failed.
—
— The result is RESULT.
Aug 17 18:35:01 UbuntuServerSJL sudo[29937]: pam_unix(sudo:session): session closed for user root
Aug 17 18:39:01 UbuntuServerSJL CRON[30014]: pam_unix(cron:session): session opened for user root by (
Aug 17 18:39:01 UbuntuServerSJL CRON[30015]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && if [ !
Aug 17 18:39:01 UbuntuServerSJL CRON[30014]: pam_unix(cron:session): session closed for user root
Aug 17 18:39:24 UbuntuServerSJL systemd[1]: Starting Clean php session files…
— Subject: Unit phpsessionclean.service has begun start-up
— Defined-By: systemd
— Support: http://www.ubuntu.com/support
—
— Unit phpsessionclean.service has begun starting up.
Aug 17 18:39:24 UbuntuServerSJL systemd[1]: Started Clean php session files.
— Subject: Unit phpsessionclean.service has finished start-up
— Defined-By: systemd
— Support: http://www.ubuntu.com/support
—
— Unit phpsessionclean.service has finished starting up.
—
— The start-up result is RESULT.
Aug 17 18:40:00 UbuntuServerSJL sudo[30096]: stephanj : TTY=pts/0 ; PWD=/home/stephanj ; USER=root ; C
Aug 17 18:40:00 UbuntuServerSJL sudo[30096]: pam_unix(sudo:session): session opened for user root by s
Aug 17 18:40:00 UbuntuServerSJL systemd[1]: Starting The Apache HTTP Server…
— Subject: Unit apache2.service has begun start-up
— Defined-By: systemd
— Support: http://www.ubuntu.com/support
—
— Unit apache2.service has begun starting up.
Aug 17 18:40:00 UbuntuServerSJL apachectl[30099]: AH00526: Syntax error on line 23 of /etc/apache2/sit
Aug 17 18:40:00 UbuntuServerSJL apachectl[30099]: SSLCertificateFile: file ‚/etc/letsencrypt/live/medi
Aug 17 18:40:00 UbuntuServerSJL apachectl[30099]: Action ’start‘ failed.
Aug 17 18:40:00 UbuntuServerSJL apachectl[30099]: The Apache error log may have more information.
Aug 17 18:40:00 UbuntuServerSJL systemd[1]: apache2.service: Control process exited, code=exited statu
Aug 17 18:40:00 UbuntuServerSJL systemd[1]: apache2.service: Failed with result ‚exit-code‘.
Aug 17 18:40:00 UbuntuServerSJL systemd[1]: Failed to start The Apache HTTP Server.
— Subject: Unit apache2.service has failed
— Defined-By: systemd
— Support: http://www.ubuntu.com/support
—
— Unit apache2.service has failed.
—
— The result is RESULT.
Aug 17 18:40:00 UbuntuServerSJL sudo[30096]: pam_unix(sudo:session): session closed for user root
Kannst du mir helfen?
Mfg
Stephan
Die entscheidenden Zeilen sind:
Aug 17 18:35:01 UbuntuServerSJL apachectl[29948]: AH00526: Syntax error on line 23 of /etc/apache2/sit
Aug 17 18:35:01 UbuntuServerSJL apachectl[29948]: SSLCertificateFile: file ‘/etc/letsencrypt/live/medi
Die Zeilen sind in deinem Post am Ende abgeschnitten. Man sieht aber dass in Zeile 23 der Konfigurationsdatei ein Syntaxfehler ist, also irgendetwas ist falsch geschrieben. Außerdem ist irgendwas mit dem Zertifikat. evtl. existiert es nicht oder der Pfad ist nicht korrekt.
Du kannst auch mal schauen was das Error Log unter /var/log/apache2/error.log sagt.
Zeile habe ich bearbeitet, jetzt kommt dafür:
Aug 17 18:53:45 UbuntuServerSJL apachectl[30246]: Action ’start‘ failed.
Aug 17 18:53:45 UbuntuServerSJL apachectl[30246]: The Apache error log may have more information.
Aug 17 18:53:45 UbuntuServerSJL systemd[1]: apache2.service: Control process exited, code=exited status=1
Aug 17 18:53:45 UbuntuServerSJL systemd[1]: apache2.service: Failed with result ‚exit-code‘.
Aug 17 18:53:45 UbuntuServerSJL systemd[1]: Failed to start The Apache HTTP Server.
— Subject: Unit apache2.service has failed
— Defined-By: systemd
— Support: http://www.ubuntu.com/support
—
— Unit apache2.service has failed.
Oder auch:
—
— Unit apache2.service has begun starting up.
Aug 17 19:12:16 UbuntuServerSJL apachectl[30466]: Action ’start‘ failed.
Aug 17 19:12:16 UbuntuServerSJL apachectl[30466]: The Apache error log may have more information.
Aug 17 19:12:16 UbuntuServerSJL systemd[1]: apache2.service: Control process exited, code=exited status=1
Aug 17 19:12:16 UbuntuServerSJL systemd[1]: apache2.service: Failed with result ‚exit-code‘.
Aug 17 19:12:16 UbuntuServerSJL systemd[1]: Failed to start The Apache HTTP Server.
— Subject: Unit apache2.service has failed
— Defined-By: systemd
— Support: http://www.ubuntu.com/support
—
— Unit apache2.service has failed.
—
— The result is RESULT.
Aug 17 19:12:16 UbuntuServerSJL sudo[30463]: pam_unix(sudo:session): session closed for user root
Wenn man das mit sudo macht.
Error.log sagt nur das:
[Fri Aug 17 19:12:16.015997 2018] [ssl:emerg] [pid 30473] AH02572: Failed to configure at least one certificate and key for medienserXXXXXX.ddns.net:443
[Fri Aug 17 19:12:16.016066 2018] [ssl:emerg] [pid 30473] SSL Library Error: error:140A80B1:SSL routines:SSL_CTX_check_private_key:no certificate assigned
[Fri Aug 17 19:12:16.016179 2018] [ssl:emerg] [pid 30473] AH02311: Fatal error initialising mod_ssl, exiting. See /var/log/apache2/error.log for more information
AH00016: Configuration Failed
Also kurz zusammengefasst, man soll in /var/log/apache2/error.log nachschauen, um den hinweis zu finden, dass man doch bitte in /var/log/apache2/error.log schauen soll. XD
Sorry für die vielen Kommentare. 🙂
Etwas stimmt mit der Konfiguration deiner Zertifikate nicht.
Hast du das Let’s Encrypt Zertifikat auch vorher erstellt?
Ansonsten solltest du noch prüfen ob du auch wirklich die Zeilen
SSLCertificateFile /etc/letsencrypt/live/mimashome.ddns.net/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/mimashome.ddns.net/privkey.pem
so in der Konfigurationsdatei hast und ob die Pfade auch wirklich korrekt sind. Dann sollte es eigentlich passen.
Genau diese Zeilen waren drin, nur mit meinen dns Angaben. Allerdings hat er rum gemeckert. Ich kann es Ja nochmal versuchen. Mit mimashome, oder mit meinem?
Mit deinem, sonst kann es nicht klappen.
Kannst anschließend mit
cat /etc/letsencrypt/live/mimashome.ddns.net/fullchain.pem
schauen ob es die Datei auch wirklich gibt. Wenn er dir das Zertifikat anzeigt stimmt auch der Pfad. Ansonsten kommt eine Fehlermeldung
Das hier ist im übrigen die ominöse Zeile 23:
Aug 17 19:55:01 UbuntuServerSJL apachectl[31393]: SSLCertificateFile: file ‚/etc/letsencrypt/live/medienseXXXXXX.ddns.net/fullchain.pem‘ does not exist or is empty
Ja, das ist der entscheidende Punkt.
Du musst zuerst mit Certbot die Let’s Encrypt Zertifikate erstellen.
Ist erstellt, es liegt eben nur in /etc/letsencrypt/keys und heißt 0000_key-certbot.pem, dementsprechend müsste ich die Zeile abändern, oder nicht?
Du musst die Dateinamen natürlich an dein System anpassen. Allerdings solltest Du immer das /etc/letsencrypt/live Verzeichnis nutzen. Deine Schlüsseldatei in /etc/letsencrypt/keys ändert sich bei jeder Erneuerung alle drei Monate. Und dann geht deine Konfiguration wieder kaputt.
Wenn das „live“ Verzeichnis nicht existiert, dann hat die Erstellung, bzw. Verifizierung des Zertifikats nicht funktioniert.
Das gab es nicht. Das habe ich eben jetzt erstellt. Kann man die Zertifizierung einfach neu starten? beim 1. Mal kam auch die Meldung, habe dann das Betriebssystem neuinstalliert, und kam an der selben Stelle.
Das Verzeichnis wird automatisch erstellt, wenn Certbot verifizieren kann dass der DynDNS-Name auf deinen Computer verweist. Dein Problem liegt ziemlich sicher nicht am Computer, sondern an der Router-Konfiguration. Entweder ist die Portweiterleitung nicht richtig konfiguriert, oder die Aktualisierung der IP-Adresse über DynDNS funktioniert nicht.
Habe diese mal überprüft, sollte mit der Anleitung übereinstimmen: https://www.imagebanana.com/s/1152/fiu0Xy8q.html
Ok, jetzt passen die Einstellungen, denke ich. Jetzt müsste die Zertifizierung ja neu gemacht werden.
Hi,
wie kann man den mehrer vhost in Apache2 aktivieren ?
Gebe ich diesen Befehl ein:
sudo a2ensite 002-linux-dash.conf u. Apache2 restarte,
lande immer wieder auf der Nextcloud seite.
Hi Zusammen,
das würde mich auch interessieren. Wie kann ich eine zweite Webseite neben Nextcloud einrichten ?
@Nico: Bin Deinem spitzen Tutorial gefolgt und kam sofort zum Ziel. Echt genial …
Hast Du einen Tip oder Link für mich ?
Ich habe nur eine Domäne und stehe irgendwie auf dem Schlauch, sobald SSL im Spiel ist …
Da bist du dann im „Fortgeschrittenenkurs“ 🙂 Das lässt sich nicht in zwei Sätzen beantworten.
1. Ich würde eine zweite (Sub-)Domain anlegen und einen neuen Virtual Host (z.B. /etc/apache2/sites-available/002-zweite-seite.conf) anlegen. Über CNAME-DNS-Einträge kannst du beliebig viele (Sub-)Domains auf deine DynDNS-Domain zeigen lassen [Eigene Domain mit DynDNS-Diensten benutzen]. Somit kannst du mehrere Domains auf deinem Homeserver nutzen, obwohl du eigentlich nur eine DynDNS-Adresse hast. Ist IMHO die schönste und sauberste Lösung, weil alle Projekte getrennt verwaltet werden können und ihre eigenen Internetadressen haben.
2. Willst du nur eine Domain nutzen, erfolgt die ganze Konfiguration in /etc/apache2/sites-available/001-nextcloud.conf. Dass ich die Config nextcloud.conf genannt habe darf nicht irritieren, eigentlich handelt es sich um die Config für die gesamte Domain (mimashome.ddns.net in diesem Beispiel). Weil das DocumentRoot auf /var/www/html/nextcloud zeigt, wird beim Aufruf der Domain immer die Nextcloud aufgerufen. Du kannst DocumentRoot auch auf /var/www/html setzen und deine zweite Seite unter /var/www/html/seite2 speichern. Dann wäre Nextcloud zukünftig unter mimashome.ddns.net/nextcloud zu erreichen und deine zweite Seite unter mimashome.ddns.net/seite2. Die Konfiguration für beide Projekte machst du in /etc/apache2/sites-available/001-nextcloud.conf. Das wird aber schnell unübersichtlich.
3. Da Nextcloud mittlerweile die Codeintegrität prüft um Hacks zu erschweren, weiß ich nicht ob dieser Weg funktioniert. Du kannst deine Seite2 unter /var/www/html/nextcloud/seite2 speichern. Dann würdest du Nextcloud nach wie vor über mimashome.ddns.net erreichen. Das zweite Projekt wäre unter mimashome.ddns.net/seite2 zu erreichen.
Einen Link habe ich leider nicht. Die Konfiguration hängt eben sehr davon ab, was du konkret machen willst.
Vielen Dank für Deine schnelle Antwort.
2. und 3. klappt schon mal.
Um CNAME-DNS-Einträge zu nutzen habe ich dann mal bind9 installiert.
Das ging jetzt auf den ersten Blick nicht so schnell zu konfigurieren,
werde ich mir wohl mal in Ruhe anschauen müssen …
VG
Moin,
danke deiner Anleitung habe ich mein Nextcloud am Laufen. Leider kann ich meine Kontakte und mein Kalender nicht mit meinem iPhone, iPad oder Macbook synchronisieren.
Hast du bei diesem Thema Erfahrung und eine Idee was hier falsch läuft. Es kommt immer die Meldung, dass die Accountüberprüfung fehlgeschlagen ist.
Danke im Voraus.
Sven
Leider kann ich dir da nicht wirklich helfen, da ich weder iPhone oder Mac besitze. Hast du schon den Eintrag in der offiziellen Nextcloud Dokumentation angeschaut? Evtl. hilft das weiter. https://docs.nextcloud.com/server/12/benutzerhandbuch/pim/sync_ios.html
Ja, habe ich. Leider ohne Erfolg. Ich habe keinen Ansatz was da schief läuft bei CalDav bzw. CardDav. Denn alles andere läuft super.
Gibt es irgend welche logs, die helfen könnten?
Hallo,
erstmal danke für die Anleitung. Kann mir jedoch bitte jemand bei folgendem Problem helfen:
Ich starte die maske von nextcloud und gebe alles entsprechend ein und wenn ich dann die Installation abschließen möchte erhalte ich folgende Nachricht:
Fehler
Das Datenverzeichnis /mnt/storage/nextcloud kann nicht erstellt oder es kann darin nicht geschrieben werden.
Der entsprechende Ordner hat volle lese und schreibrechte von „www-data“
Bitte um Aufklärung
Ich denke dass die Fehlermeldung schon korrekt ist. Irgendetwas stimmt mit den Lese-/Schreibrechten des Ordners nicht.
Vielleicht darf www-data schon gar nicht auf /mnt/storage zugreifen. Prüfe mal ob hier die Rechte auf 0755, bzw. rwxr-xr-x gesetzt sind, so dass alle User auf den Ordner zugreifen dürfen.
Was ich nicht ganz verstehe: Welchen Vorteil hat es, die SMB Shares in Nextcloud als SMB Shares einzubinden anstatt als lokale Shares? Nextcloud und Samba Server befinden sich doch auf dem gleichen Host.
Um Probleme mit den Lese-/Schreibberechtigungen auf Dateisystemebene zum umgehen, ohne beide Dienste (Samba und Apache) mit dem selben User laufen zu lassen.
Ich verstehe, danke für die Antwort! Ich löse das so:
bindfs –map=heimnetz/root:@heimnetz/@root /media/storage/share /media/storage/ncshare
Das macht einen fuse mount vom SMB Share /media/storage/share in /media/storage/ncshare und mappt die Berechtigungen, so dass Nextcloud es passt.
Dadurch kann man Nextcloud den Share mit den richtigen Rechten anbieten.
Hi,
die Serverhardware konnte ich nach deinen Vorgaben bauen … läuft gut.
Owncloud hat mir graue Haare gemacht. Ich musste noch den php-smbclient nachinstallieren, damit SMB/CIFS zur Auswahl steht. In der Domäne musste dann noch die Windows-Arbeitsgruppe (workgroup)eingetragen werden. Warum das so ist … vermutlich irgend etwas im Rahmen der Installation durcheinander geraten, da ich mehrmals PHP und Apache installiert habe.
Danke für die hervorragende Anleitung! Mal sehen was Plex anrichtet 🙂
Hallo Niko,
vielen Dank für die tolle Anleitung.
Regelmäßige OS-Updates etc. hast du ja zum größten Teil automatisiert.
Welches Vorgehen empfiehlst du für die Nextcloud. Auf der Site https://docs.nextcloud.com/server/14/admin_manual/maintenance/upgrade.html sind ja mehrere Möglichkeiten dargestellt.
Wie machst Du die Nextcloud updates?
Vielen Dank für eine kurze Info oder Beschreibung
Matthias
Wenn eine neue Nextcloud-Version zur Verfügung steht, wird man förmlich mit Hinweisen zugeballert. Die Smartphone App schickt eine Notification, der Desktopclient meldet die neue Version und in der Weboberfläche erscheint auch ein Hinweis.
Ich nutze dann den eingebauten Updater über die Weboberfläche. Damit ist das Update praktisch mit einem Klick erledigt.
Hallo Niko,
Danke, die Info reicht mir dann 😉
Bzgl. Zugriff von außen habe ich eine Ergänzung – habe es hoffentlich bei dir nicht überlesen:
in der /var/www/html/nextloud/config/conig.php muss der URI eingetragen werden, von dem aus zugegriffen werden darf. sonst erhält man eine entsprechende Fehler-MEldung und es erscheint kein Login-Screen.
vgl. https://docs.nextcloud.com/server/14/admin_manual/installation/installation_wizard.html#trusted-domains
Vllt. kannst du das noch mit aufnehmen.
Ansonsten schonmal schöne Woche!
Matthias
Hallo Matthias,
schön dass Du die Dokumentation liest und nicht einfach nur Befehle kopierst.
Das manuelle bearbeiten der config.php sollte aber nicht nötig sein. Deine DynDNS-Domain wird automatisch eingetragen, sofern Du das Setup bereits über diese Domain aufrufst. Das ist in der Anleitung der Fall.
Nur wenn Du die Einrichtung z.B. über http://localhost vornimmst, oder aber die Domain nachträglich änderst, dann musst Du die Domain in die config.php eintragen.
Wenn man aber nur den Schritten im Tutorial folgt, ist das nicht nötig.
Gruß
Niko
Ah, ok, danke. Hab mich in der Tat erst nachträglich entschieden für externen Zugriff. War mir halt noch nicht sicher, ob ich das wirklich möchte 😉
Tolles Tutorial
Matthias
Hallo,
danke für die super Anleitung.
Lokal in einer Test-VM hat alles super geklappt.
Nun wollte ich das Ganze live auf dem Server nachvollziehen und scheitere mit Let’s encrypt, da dort AUSSCHLIESSLICH Port 80 oder 443 akzeptiert werden!
Dies als Hinweis für alle anderen Nutzer.
Ich habe einen Server mit mehreren VMs laufen, die über verscheidene Ports von außen erreichbar sind. Dafür muss ich wohl doch selbstsignierte Zertifikate verwenden (ist ja auch NUR für bekannte Nutzer).
Oder gibt es andere Vorschläge von Euch???
LG
Matthias (der Zweite ;-))
Hallo, erstmal super gemachte Anleitung, leider habe ich aber noch ein Problem mit den Umlauten, die kann Nextcloud nämlich nicht. Installiert habe ich Schritt für Schritt nach Deiner Anleitung, auch mit Raid, nur habe ich Raid 0 gemacht, aber das ist ja egal.
Laut diversen Lösungen sollte man in der php.ini UTF-8 „aktivieren“, dieses ist aber bei mir schon passiert, ohne das ich was ändern mußte.
; PHP’s default character set is set to UTF-8.
; http://php.net/default-charset
default_charset = „UTF-8“
Leider kann ich trotzdem keine Ordner mit Umlauten erstellen, gibt es da noch andere möglichkeiten? Dateien kann ich mit Umlauten erstellen, gerade getestet.
Danke 🙂
Tut mir leid dass ich hier nicht helfen kann. Ich setze Nextcloud ein seit es existiert. Dieses Problem ist mir glücklicherweise noch nie begegnet.
Hallo,
ich habe jetzt mal ein wenig getestet, anscheinend hängt das irgendwie auch mit dem dem Minus „-“ zusammen….
Ich kann z.B. schreiben „Walt Disney – Lustige Taschenbuecher“, aber nicht „Walt Disney – Lustige Taschenbücher“, allerdings kann ich schreiben „Walt Disney = Lustige Taschenbücher“, auch kann ich „Bücher“ oder „Taschenbücher“ schreiben. Aber sobald das „-“ drin ist, geht der Umlaut dort nicht.
Keine Ahnung warum, vorher hatte ich Nextcloud auf einem Raspberry laufen, da ging das alles, nur der Raspberry war halt sehr sehr gemütlich…
Servus Niko,
herzlichen Dank für diese hervorragende Anleitung!
Ich hänge leider an einem Punkt fest:
System läuft, Samba funktioniert, der Indianer ist da, Nextcloud ist installiert, die 001-nextcloud.conf ist auf meinen Servernamen angepaßt, die Fritzbox erneuert die IPs für meine Domain, die Zertifikate wurden ohne Fehlermeldung erstellt und liegen (verlinkt) im passenden Verzeichnis…
Bei jedem Aufruf der Website erhalte ich nicht die Startseite der Nextcloud sondern Gemüse der Art
* @author Joas Schilling * @author Jörn Friedrich Dreyer * @author Lukas Reschke * @author Morris Jobke * @author Robin Appelman * @author Sergio BertolÃn * @author Thomas Müller * @author Vincent Petry * * @license AGPL-3.0 * * This code is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License, version 3, * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANT
usw.
Dazu finde ich zwar (wenige) Stellen im Web, aber bisher nichts hilfreiches.
Der Neuaufbau der Maschine hat nichts gebracht.
Hat jemand eine Idee dazu ?
Vielen Dank !
Wolfgang
Murphy – während des Wartens auf Antworten noch was gefunden:
https://help.nextcloud.com/t/ubuntu-18-04-1-upgrade-messed-with-my-nextcloud-install/34807/4
„Had it install php-mbstring and add +x permissions to Application.php and it fired up and I could log in.“
Die Installation bringt die Oberfläche – wo die Application.php liegt weiß ich allerdings nicht.
bitte ggf. in die Anleitung einpflegen!
Ich wünsche allen ein schönes Weihnachtsfest und einen guten Rutsch !!
Wolfgang
Hallo Wolfgang,
ich bin die Schritte nochmals in einer VM durchgegangen, obwohl ich die Anleitung mehrfach getestet hatte. Aber manchmal ändern sich Abläufe ja.
Bei mir funktioniert allerdings alles einwandfrei. Auch die mbstring-Erweiterung von PHP wird im Artikel installiert. Evtl. hattest du diesen Schritt übersprungen.
Hallo Niko,
danke für die schnelle Reaktion!
ja, das hab ich auch gesehen daß die Installation von php7.2-mbstrings schon erfolgt ist – bei mir hat aber erst die Installation von dem Pakte php-mbstrings geholfen:
sudo apt-get install php-mbstring
Dafür hab ich keine Erklärung …
Herzlichen Gruß
Wolfgang
Hm, das ist wirklich seltsam.
Dankeschön für die Ergänzung. Evtl. haben andere das Problem auch.
Gruß
Niko
gerne. Es reicht aus wenn einer das fertiggrübelt!
Dir einen schönen Abend!
Wolfgang
Hallo Niko,
ich möchte Dir einfach mal Danke sagen, das Problem, welches ich hatte (etwas weiter oben, mit Dateibezeichnung), hat sich erledigt, warum wieso weshalb weiß ich nicht, einmal ging es.
Dann habe ich jetzt auch endlich mal ein Backup Programm nach Deiner Anleitung installiert, super, daher habe ich mir auch Dein eBook vor ein paar Tagen gekauft, sehr gut gemacht :-).
Ich habe, nachdem ich mit Deiner Anleitung für Nextcloud, klar kam, auch meinen Plex PC von LinuxMint 18.3 auf Ubuntu Server 18.04 LTS umgestellt, ging wirklich einfach. Auf beiden PCs läuft jetzt Duplicati, sehr geil :-).
Danke und alles Gute für 2019 🙂
Gruß
Andreas
Hallo Andreas,
freut mich, dass alles klappt. Vielen Dank für das Lob, das motiviert immer sehr.
Gruß
Niko
Ich hänge bei der Installation des Paketes libapache2-mod-php7.2 mit folgender Fehlermeldung:
Paketlisten werden gelesen… Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen…. Fertig
E: Paket libapache2-mod-php7.2 kann nicht gefunden werden.
E: Mittels des Musters »libapache2-mod-php7.2« konnte kein Paket gefunden werden.
E: Mittels regulärem Ausdruck »libapache2-mod-php7.2« konnte kein Paket gefunden werden.
Weiß nicht mehr weiter. Anscheinend ist die Paketliste irgendwie falsch.
vermutlich läuft bei dir schon eine neuere Version zB libapache2-mod-php7.4
Hallo,
erst einmal vielen Dank für die super Anleitung!
Leider bekomme ich die Einbindung meines Ordners z.b. Videos nicht hin, ich bin strikt deiner Anleitung gefolgt, wenn ich bei externen Speicher alles eingebe und dann den Hacken aktiviere bekomme ich nur ein rotes Ausrufezeichen!
Das ist aus der Ferne schwer zu beurteilen. Funktioniert das Einbinden der Freigaben denn an einem anderen PC, über das Netzwerk? Wenn das geht, liegt das Problem bei Nextcloud, bzw. dem Plugin. Wenn das nicht geht, liegt das Problem wahrscheinlich bei Samba.
In meinem Finder sind die freigegebenen Ordner zu sehen, wenn ich einen von ihnen anwähle kommt eine Fehlermeldung:Der Vorgang konnte nicht abgeschlossen werden, da das Originalobjekt für „Audio“ nicht gefunden wurde.
Wahrscheinlich gibt es wohl ein Problem mit Samba.
Hat jemand einen Tip?
PS:
Habe mich als user „Heimnetz“ angemeldet und trotzdem kommt diese Fehlermeldung!
Hallo Niko,
zunächst einmal herzlichen Dank für die Anleitung!
Mein Server läuft nun schon seit einigen Monaten in einer etwas angepassten Form.
Was mir derzeit ein wenig Kopfzerbrechen bereitet ist Certbot. Von Let’s Encrypt habe ich eine Mail mit dem Hinweis bekommen, dass ein Update auf die Version 0.28 erforderlich ist, die nicht in den Paketquellen von Ubuntu 18.04 vorhanden ist.
Ist es sinnvoll hier das PPA von Certbot einzubinden oder gibt es einen anderen, besseren Weg?
Viele Grüße
Thomas
Hallo Thomas,
ich denke das Certbot PPA ist die einfachste Möglichkeit. Da muss ich auch den Artikel noch aktualisieren, bevor die alte Version Mitte Februar aufhört zu funktionieren.
Gruß
Niko
Hallo Niko,
kurze Rückmeldung:
Ich habe das PPA installiert und das Update von Certbot auf die Version 0.28 hat problemlos funktioniert.
Viele Grüße
Thomas
Irgendwie lässt sich in Nextcloud bei mir kein SMB Share einrichten mit dem lokalen smb server..
wie kann dass sein ??
in den logssteht auch immer ein falscher benutzer da steht nicht heimnetz sondern heimnez ohne t obwohl ich mit t eingetragen habe…
Hallo Niko,
ich habe mal wieder ein Problem, einige Dateien sind gelocked, wie kann ich die frei machen und löschen?
Das würde über phpMyadmin funktionieren, somit hatte ich über sudo apt-get install phpmyadmin dieses installiert, ein Passwort für den Zugang vergeben, mich als Nutzer phpmyadmin und dem vergebenen Passwort angemeldet. Allerdings sehe ich die Datenbank nicht. Es wurde wohl eine neue angelegt. Wie kann ich die vorhandene hinzufügen? Oder weißt Du eine andere Option zum unlocken der Dateien?
Danke schon im voraus.
Andreas
Hallo Thomas,
für den Login bei phpmyadmin musst du die Zugangsdaten der Nextcloud Datenbank nehmen, die du auch beim Setup der Nextcloud angegeben hast.
Und mach am besten ein Backup der Datenbank bevor du etwas an den Tabellen änderst. Geht auch in phpmyadmin im Menüpunkt „exportieren“.
Eigentlich Andreas, aber egal 🙂
Danke für den Tip, damit hat es geklappt, ich konnte die Dateien mit „DELETE FROM oc_file_locks WHERE 1“ im SQL Eingabefeld freigeben und danach löschen 🙂
Gruß
Andy
Hallo Niko,
tolle Anleitung mit deinem Homeserver 😉
Nun bin ich auf der Index – Seite von Nextcloud angekommen. Habe wie oben beschrieben alles eingetragen. Danach kommt die Fehlermeldung:
Error while trying to create admin user: Failed to connect to the database: An exception occured in driver: SQLSTATE[HY000] [1045] Access denied for user ’nextcloud’@’localhost‘ (using password: YES)
Ausserdem habe ich eine Frage zu
„Datenbank-Password ist das beim Anlegen der Datenbank vergebene Passwort“
Ist das, das Passwort vom Administrator-Konto anlegen?
Im ersten Schritt musst du das Passwort für die Datenbank eintragen, das im Schritt „Anlegen der Datenbank für Nextcloud“ festgelegt wurde.
Den Administrator-Account für Nextcloud legst du im nächsten Schritt an, nachdem die Datenbank eingerichtet wurde.
Habe es gerade gesehen.
Wie kann ich jetzt das Passwort in MariaDB ändern?
Hallo!
Als erstes, super Tutorial aber das ist man schon aus der alten Version gewohnt 😉
Hab dennoch eine Frage, warum nimmst du Samba und nicht Webdav?
Wo sind die Vorteile von Samba?
Ich frage, weil ich mir vorstellen kann, dass eine Netzwerk-Festplatte, auf die man von überall zugreifen kann ziemlich bequem wäre.
VG
Alex
Hi Alex,
Samba ist halt der Klassiker. Wird von jedem Betriebssystem unterstützt, von den meisten Backupprogrammen, Kodi…
Aber Nextcloud bietet ja standardmäßig Webdav Unterstützung. Über https://example.com/remote.php/webdav hast du auch via webdav Zugriff auf deine Freigaben.
Gruß
Niko
Ach! Schau einer guck! Das ist natürlich eine super Lösung, sonst hätte ich Nextcloud und dann noch extra Webdav über Apache eingerichtet 🙂
Vielen Dank für die schnelle und hilfreiche Antwort.
Alex
Hi Niko,
zuerst mal vielen Dank für das sehr gute Tutorial, dass es tatsächlich auch dem Anfänger möglich macht, zu folgen!
Eine Frage hätte ich aber:
Ich kann problemlos von außen auf meine Nextcloud zugreifen, werde jedoch beim Zugriff über die IP innerhalb des Netzwerkes sofort auf die Domain (also meine Äquivalent zu mimashome.ddns.net) umgeleitet, was natürlich im Heimnetzwerk nicht geht; somit kann ich auch von innerhalb nichts administrieren oder später mal per onlyoffice oder so arbeiten.
Ich vermute, ich könnte das über einen Alias-Eintrag in der 001-nextcloud.conf lösen, oder? Gehe ich ein Sicherheitsrisiko ein, wenn ich von innerhalb und außerhalb meines Netzwerkes auf die Nextcloud zugreife? (Bilde mir ein, mal sowas gelesen zu haben)
Vielen Dank und beste Grüße!
Hi Niko,
wie hast du denn Raid fomartiert. Mit ext4? Wir kommen denn dann die Windows Rechner auf die Shares? Die können doch nur NTFS. Oder habe ich einen Denkfehler?
Und danke für die tolle Anleitung
Grüße
Olaf
Hallo Olaf,
dein Windows PC kommuniziert nicht direkt mit den Festplatten (z.B. über die SATA-Schnittstelle), sondern spricht nur mit dem auf dem Homeserver installierten SAMBA-Server (via SMB/CIFS-Protokoll). Der Samba-Server wiederum schreibt auf die Festplatten. Dein Windows hat keine Ahnung mit welchem Dateisystem die Festplatten auf dem Homeserver formatiert sind.
Hallo Niko,
erstmal großes Lob für das klasse Tutorial! Ich habe alles so aufgesetzt, wie beschrieben, bis auf das RAID, da habe ich nur eine einzelne Platte. Es lief alles, bis ich dann auf die Nextcloud-Seite zum Einrichten bin. Dort habe ich die Angaben genauso eingetragen, wie beschrieben, natürlich mit meinen Usernamen. Aufgefallen ist mir, dass in dem Feld Datenverzeichnis als Voreinstellung /mnt/storage/nextcloud/data stand. Habe das /data dann entfernt und die Installation abgeschlossen. Seither komme ich nicht mehr auf die Seite, kriege die Fehlermeldung 403, Zugriff auf den Server nicht erlaubt. Was kann denn da schiefgegangen sein?
Gruß
Martin
Hallo Martin,
schau mal in die Logfiles des Apache Webserver unter /var/log/apache2/access.log oder /var/log/apache2/error.log. Da sollte stehen was das Problem ist. Möglicherweise ein Problem mit den Lese-/Schreibrechten des Verzeichnisses.
Hallo Niko,
im error.log finde ich Meldungen wie „client denied by server configuration: /var/www/html/nextcloud/index.php, referer https://meine.domain.de/„. Im access.log sehe ich Hinweise, dass irgendetwas mit der index.php nicht stimmt. Welcher User muss denn welche Rechte in dem Verzeichnis haben? Ich nehme an es geht um /var/www/html/nextcloud, oder geht es um /mnt/storage/nextcloud?
Gruß
Martin
Hallo, ich habe es jetzt hinbekommen, habe einfach die Nextcloud-Dateien nochmal ausgepackt und dann lief es wieder. Allerdings kommt die erste Einstellungsseite nicht mehr hoch und es liegen die Daten jetzt nicht wie ich vorher angegeben hatte unter /mnt/storage/nextcloud sondern doch auf der Systemplatte. Jetzt die Frage, wie kann ich das wieder hinbiegen? In den Einstellungen finde ich keine Möglichkeit, das Verzeichnis umzubiegen, geht dann vermutlich nur direkt auf dem Server übers Terminal?
Gruß
Martin
Nextcloud unterstützt das nachträgliche Verschieben nicht offiziell und es ist auch nicht so einfach möglich. Ich würde das Setup von Nextcloud einfach nochmal neu durchführen. Dazu einfach die Datei /var/www/html/nextcloud/config/config.php löschen. Dann kommt beim Aufruf von Nextcloud im Browser wieder der Einrichtungsassistent.
Hallo, ist jetzt auch gelöst, habe ein howto gefunden und jetzt liegen die Daten auf dem großen Laufwerk. Nochmal danke für das Tutorial und die Hilfe!
Hallo Niko,
dein e-Book ist super und es hat letzten Endes alles super geklappt. Mir stellt sich obendrein noch die Frage, wie sicher mein lokales System ist? Welche Schritte kann/muss ich denn ggfs. zusätzlich unternehmen, um den Schutz zu erhöhen?
Gruß
Hallo Aki,
einfache Frage, auf die es keine einfache Antwort gibt. Ein Ubuntu-Server ist ja standardmäßig nicht unsicher und müsste erst durch Zusatzsoftware sicher gemacht werden.
Wie heißt es so schön: „Sicherheit ist kein Zustand. Sicherheit ist ein Prozess“. Dementsprechend die Software immer aktuell halten, besonders das, was aus dem Internet erreichbar ist, wie z.B. Nextcloud. Und das System auf auffälliges Verhalten beobachten. Mit Logwatch kannst du dir beispielsweise Zusammenfassungen von den wichtigsten Logfiles zusenden lassen.
Vielen Dank für die hervorragende Anleitung (y)
Hallo,
bei diesen beiden Befehlen
sudo a2dissite 000-default.conf
sudo a2ensite 001-nextcloud.conf
kam der Hinweis, das ich die neue conf noch mit einem entsprechenden Befehl aktivieren müsste! An diesem Punkt war ich mir nicht sicher und habe es übergangen. jetzt finde ich den Befehl nicht mehr und erhalte beim Aufruf der Nextcloud über den Browser die Fehlermeldung:
Interner Serverfehler
Der Server konnte die Anfrage nicht fertig stellen.
Sollte dies erneut auftreten, sende bitte die nachfolgenden technischen Einzelheiten an Deinen Server-Administrator.
Weitere Details können im Server-Protokoll gefunden werden.
Technische Details
könnte es darin liegen, das ich die neue .conf nicht aktiviert hab?
Es fehlt auch der pfad /var/www/html/nextcloud/data/ und somit auch /var/www/html/nextcloud/data/nextcloud.log
ausgelesen aus der Apache2.log
Jetzt erhalte ich die richtige Seite, nur..
Fehler
Das Datenverzeichnis /media/../../shares/nextcloud kann nicht erstellt oder es kann darin nicht geschrieben werden.
ich habe das ganze erst mal ohne raid und mit etwas anderen Pfaden erstellt als hier. chmod habe ich für den Ordner nextcloud vergeben, aber gleiche Fehlermeldung! muss ich für die HDD auch schreib rechte einrichten?
Der Pfad /media/… hört sich sehr nach einer externen Festplatte an, da darf wahrscheinlich nur dein User schreiben. Versuch mal den Eigentümer des Verzeichnisses auf den Webserver zu ändern „sudo chown -R www-data:www-data /media/../../shares/nextcloud„
www-data ist bereits Besitzer gewesen, daher wundert es mich auch!? Sollte doch dann eigentlich gehen, dachte ich? die zweite HDD ist eig. intern. also per sata.
dank dir erstmal!
Und danke für deine Mühe eine Top Anleitung zu schreiben!!! Bester Mann
Nico hilfe, ich bräuchte doch nochmal deine Hilfe bitte ^^
Ich habe jetzt alles nochmal neu aufgesetzt, lief gleich besser!
ich bin jetzt bei der Startseite zu Nextcloud nur…
ich habe eine SSD 120GB und eine WD 3TB! Wie bekomme ich das Verzeichnis wie von dir angegeben auf die 3TB platte so das danach alles läuft?
“
Dateiverzeichnis sollte geändert werden, so dass dieses nicht auf der SystemSSD sondern auf unseren Storage-Raid liegt. In diesem Fall /mnt/storage/nextcloud“
Bei Dateiverzeichnis musst du einfach ein Verzeichnis eingeben das auf deiner 3TB-Platte liegt und nicht auf der SSD. Bei der Konfiguration im Artikel liegt das Verzeichnis /mnt/storage/nextcloud auf den Festplatten und nicht der SSD. Wo deine Festplatte eingebunden ist hast du ja wahrscheinlich beim Setup konfiguriert.
Ggf. kannst du mit „df -h“ alle eingehängten Dateisysteme anzeigen lassen. Da ist deine Festplatte wahrscheinlich als /dev/sdbX oder ähnlich angegeben und dahinter der Pfad wo die Platte eingebunden ist. Z.B. /media/3TB-Platte. In diesem Fall könntest du /media/3TB-Platte/nextcloud als Dateiverzeichnis verwenden. Wahrscheinlich musst du das Verzeichnis vorher anlegen und dem Benutzer www-data Lese- und Schreibrechte geben.
Ich hoffe ich habe die Frage richtig verstanden.
ich habe unter der 3TB-HDD nun einen Nextcloud Ordner erstellt und per „sudo chown -R www-data:www-data /media/shorty/f37efce3-49bf-41db-902d-c18ada14ab7e/Nexcloud“ sollten doch eigentlich die rechte gesetzt sein, oder welchen Benutzer hast du gemeint?
unter der Nextcloud Ersteinrichtung erhalte ich das..
“
Fehler
Das Datenverzeichnis /media/shorty/f37efce3-49bf-41db-902d-c18ada14ab7e/Nexcloud kann nicht erstellt oder es kann darin nicht geschrieben werden.
“
was mache ich falsch?
Und dank dir für die super unterstützung! Wirklich erstklassig
Der Befehl zum setzen der Rechte stimmt. Hast du das Verzeichnis vorher erstellt? Ansonsten „sudo mkdir /media/shorty/f37efce3-49bf-41db-902d-c18ada14ab7e/Nexcloud“ erstellt das Verzeichnis. Dann nochmal deinen Befehl zum setzen der Rechte ausführen.
Möglicherweise darf der Webserver das Nextcloud-Verzeichnis nicht erstellen, da f37efce3-49bf-41db-902d-c18ada14ab7e dem User Shorty gehört.
Ja das Verzeichnis „Nextcloud“ ist da, ich habe per Terminal nochmals „sudo chown -R www-data:www-data /media/shorty/f37efce3-49bf-41db-902d-c18ada14ab7e/Nexcloud“ drübergebügelt. und wenn ich unter eigenschaften die Zugriffsrechte nachschaue steht da „www-data“.
Es kommt aber die gleiche Fehlermeldung bei der Nextcloud einrichtung! liegts evtl am Browser cache?^^
muss ich evtl noch andere berechtigungen vergeben?
Höchstwahrscheinlich darf www-data gar nicht erst in das Verzeichnis /media/shorty/f37efce3-49bf-41db-902d-c18ada14ab7e wechseln weil hier die Zugriffsrechte fehlen. Prüfe mal die Zugriffsrechte bei den übergeordneten Ordnern, also ob mit einem „ls -l“ bei allen drei Gruppen ein X gesetzt ist.
Du kannst mal ein „sudo chmod a+x /media/shorty/f37efce3-49bf-41db-902d-c18ada14ab7e“ versuchen. Das ist aber schon eine recht weitreichende Erweiterung der Zugriffsrechte.
Evtl. hilft https://wiki.ubuntuusers.de/chmod/ beim prüfen der Zugriffsrechte weiter.
Die Überordner waren alle auf meinen lokalen Benutzer geschlüsselt.
ich habe allen Überordner die schreib Rechte erteilt und erhalte nun bei der Nextcloud Einrichtung ..
„Fehler
Error while trying to create admin user: Failed to connect to the database: An exception occurred in driver: SQLSTATE[HY000] [1045] Access denied for user ’nextcloud’@’localhost‘ (using password: YES) “
;O)
ok läuft, danke dir nochmal für deine Zeit Niko!!!
bei letztem Fehler lag es an dem Befehl „GRANT ALL ON nextcloud.* TO ’nextcloud’@’localhost‘ IDENTIFIED BY ‚password‘ WITH GRANT OPTION;“ bei dem ich vergessen hatte mein Passwort anzugeben anstatt „password“
Vielen Dank
Hallo Nico,
auch ich möchte mich herzlich für die Super-Anleitung für Anfänger*innen bedanken. Es hat super geklappt – auch mit SATA-Festplatte. Dummerweise hatte ich bei der Maria DB (10.1.40) nicht aufgepasst + das Passwort „password“vergeben“. Das musste ich natürlich noch kitten. Die Seite https://websiteforstudents.com/how-to-change-mysql-mariadb-user-passwords-on-ubuntu-16-04-18-04/ war dafür super. Vielleicht sind ja auch andere so schusselig …
Vielen Dank noch mal + ich verlinke das Tutorial demnächst auf meinem Blog mit. Es ist echt klasse!!!
Herzliche Grüße Yuyun
Hallo Nico,
bei meiner Nextcloud (16.0.3.0) erscheinen 2 unklärbare Sicherheits- & Einrichtungswarnungen:
Meldung 01: „Die PHP-Speichergrenze liegt unterhalb des empfohlenen Wertes von 512MB.“
Ich habe alles so angelegt, wie Du es im Tutorial vorgeschlagen hast + es läuft :).
Wie kann ich jetzt den PHP-Speicher erhöhen???
Meldung 02: „Es wurde kein PHP-Memory-Cache konfiguriert. Zur Erhöhung der Leistungsfähigkeit kann ein Memory-Cache konfiguriert werden.“ Es gibt laut Nextcloud-Doku 3 Optionen für einen Memory-Cache https://docs.nextcloud.com/server/16/admin_manual/installation/server_tuning.html / kannst Du einen empfehlen?
und wie lässt sich das einfach konfigurieren?
Vielen Dank im Voraus & Herzliche Grüße
YuYun
Hallo YuYun,
freut mich dass alles funktioniert. Bei den Meldungen handelt es sich ja nicht um Fehler, sondern eher um Optimierungsmöglichkeiten. Das wird dann schnell zu komplex für die Anleitung. Darum kann man sich dann kümmern wenn alles läuft, so wie bei dir.
Zu 01: Das Speicherlimit kannst du in der Konfigurationsdatei von PHP unter /etc/php/7.2/apache2/php.conf bei memory_limit anpassen. Einfach den Wert auf 512M ändern und dann den Apache neu starten.
Zu 02: Ich verwende APCu als Memory Cache und Redis für File locking. Bringt meiner Meinung nach eine spürbaren Geschwindigkeitsvorteil. Beide Programme kann man aus den Paketquellen installieren. Bei Redis ggf. noch ein Passwort vergeben.
Mein Eintrag in der config.php von Nextcloud sieht dann folgendermaßen aus:
'memcache.local' => '\\OC\\Memcache\\APCu',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => '/var/run/redis/redis.sock',
'port' => 0,
'password' => 'PASSWORD',
'timeout' => 1.5,
),
Hallo Nico,
vielen für Deine schnelle Antwort + die Tipps + den Eintrag. Die Installation von Redis war nicht einfach für eine echte Anfängerin. Nach viel Hin- und Her und Aufregung, weil die Cloud plötzlich weg war, hat’s geklappt – ohne Passwort + timeout. Das passenste Script, was ich gefunden habe, war das:
‚memcache.local‘ => ‚\\OC\\Memcache\\APCu‘,
‚memcache.locking‘ => ‚\\OC\\Memcache\\Redis‘,
‚filelocking.enabled‘ => ‚true‘,
‚redis‘ =>
array (
‚host‘ => ‚/var/run/redis/redis.sock‘,
‚port‘ => 0,
‚timeout‘ => 0.0,
),
Jetzt ist alles perfekt.
Unglaublich wie viel sich bei so einer Installation über Ubuntu etc. lernen lässt.
Ganz herzlichen Dank noch mal!!
YuYun
die Webseite funktioniert nicht.
Die Website ist nicht erreichbarDie Server-IP-Adresse von mimashome.ddns.org wurde nicht gefunden.
DNS_PROBE_FINISHED_NXDOMAIN
Natürlich nicht, das ist ein Beispiel. Du musst deine eigene Domain nehmen.
Mit deiner Anleitung habe ich mich getraut in das Thema reinzuspringen, vielen Dank erstmal dazu.
Ich würde gerne meine Nextcloud als zentrale Stelle für meine Dateien haben und dann auf die Ordner (bspw. Dokumente oder Fotos) meines Nextcloud-Benutzer über Samba bzw. Plex zugreifen.
Damit Nextcloud auf die Daten zugreifen kann, werden die Rechte des Datenordner auf www-data:www-data gesetzt. Wenn ich nun Benutzer der Gruppe www-data hinzufüge, hat trotzdem nur www-data Zugriff.
Könntest du mir einen Tipp geben, wie man dies bewerkstelligen könnte?
Kann ich von hier aus auch nicht sagen, irgendwas scheint mit den Zugriffsrechten nicht zu passen. Eigentlich sollte es klappen, sofern du mit Samba und Plex nur Lesezugriff willst.
Ansonsten glaube ich nicht dass du das Problem über die Zugriffsrechte gelöst bekommst, da Dateien immer noch mit unterschiedlichen Usern erstellt werden und die Gruppe standardmäßig nur Leserechte hat. Samba kannst du mit „force user“ in der smb.conf zwingen als anderer User zu schreiben. Oder du lässt den Apache-, Samba- und Plexprozess alle mit dem selben User laufen. Das kannst du in den jeweiligen Konfigurationen einstellen.
Danke für deine Antwort. Das Problem lag darin, dass www-data neue Dateien in den Nextcloudordnern der Gruppe keine Schreibrechte gegeben hat. Man hätte das über setfacl lösen können aber ich versuche, so wenig wie möglich im System zu verändern.
Mein Lösungsansatz ist jetzt, dass ich www-data als Samba-User erstelle. Damit kann ich die Nextcloudordner mittels Samba im Netzwerk freigeben. Indem ich www-data ls force-user eintrage, werden neue Dateien mit den richtigen Rechten ausgestattet. Über einen Cronjob (files:can) lasse ich direkt über Samba hochgeladene Dateien indizieren. Damit werden Dateien von Nextcloud verwaltet.
Siehst du ein Nachteil in diesem Vorgehen? Bzw. würde für dich etwas dagegen sprechen es so zu machen?
Schön dass du eine Lösung gefunden hast. Wie so oft gibt es viele Wege die ans Ziel führen. Wenn es so für dich funktioniert, spricht auch nichts dagegen das Setup so zu nutzen.
Vielen Dank für das Tutorial!
Alles hat funktioniert bis auf einmal, dazwischen lag afaik nur ein apt-get upgrade, Nextcloud meldet, dass
„Dein Datenverzeichnis und Deine Dateien sind wahrscheinlich vom Internet aus erreichbar. Die .htaccess-Datei funktioniert nicht. Es wird dringend empfohlen, Deinen Webserver dahingehend zu konfigurieren, dass das Datenverzeichnis nicht mehr vom Internet aus erreichbar ist oder dass Du es aus dem Dokument-Root-Verzeichnis des Webservers bewegst.“
Ich habe schon viel recherchiert und die apache2.conf mit „AllowOverride All“ angepasst, aber wir haben hier ja eine eigene conf Datei? In jedem Fall hat das nicht geholfen. Die „001-nextcloud.conf“ sieht nach wie vor aus wie hier beschrieben, die SSL Letxencrypt Verbindung funktioniert ebenfalls.
Hat jemand eine Idee was man machen kann, denn Nextcloud hat leider recht, man kommt aktuell einfach so auf meine Dateien.
Vielen Dank im Voraus!
Ich habe eine Lösung gefunden, in der Apache 001-nextcloud.conf habe ich in den nextcloud Settings zwei Optionen aus kommentiert
Von
Options +FollowSymlinks
AllowOverride All
In
#Options +FollowSymlinks
#AllowOverride All
Danach wird die htaccess wieder verwendet. Warum es vorher ging verstehe ich jedoch immer noch nicht. Anscheinend gab es ein Apache Update?
Bzw. ich stelle gerade fest, da ich den Code von diesem Tutorial für meinen Kommentar genutzt habe und nicht der eigentlichen aus der conf Datei, dass ich in meiner Datei ein “Allowoverrride none” stehen hatte, welchen ich auskommenentiert habe. Insofern ein klassischer Userfehler, meine Kommentare könnt ihr gerne löschen.
Hallo Niko,
erst auch einmal ein dickes Dankeschön für diese großartige Anleitung! Nextcloud ist online super erreichbar und mit Samba funktioniert der Zugriff auf den Speicher einwandfrei.
Das einzige Problem ist, dass die Einbindung der Samba-Freigaben in Nextcloud nicht funktionieren. Ich bekomme einfach ein rotes Ausrufezeichen anstelle eines grünen Hakens, ohne dass ich das Problem finden kann. Ich habe sehr genau der Anleitung gefolgt; sogar 3x, weil das mein dritter Anlauf ist und es immer daran hakt.
Hast du vielleicht eine Idee, wie man diesen Fehler finden kann? Eine Fehlermeldung finde ich nicht.
Vielen Dank!
Hey Niko,
vielen vielen Dank für die Anleitung 🙂
Dennoch ergab sich bei mir ein Problem.
Das Einbinden der externen Ordner per Nextcloud und Samba funktioniert bei mir leider kein Stück.
Ich gehe genau nach deiner Anleitung vor, allerdings passiert folgendes, sobald ich den Haken zum hinzufügen eines neuen Ordners setzte.
Es erscheint vor dem Ordnernamen ein rotes Ausrufezeichen.
Sonst nichts, keine Fehlermeldung und nichts….
Im Netz habe ich leider auch keine sinnvollen Beiträge gefunden.
Es würde mich sehr freuen, wenn du oder jemand anders mit evtl. einen Rat geben könnte, was da los ist.
Vielen Dank
Smoke
Hallo Michel und Smoke,
da ich die ganze Woche nicht zu Hause bin kann ich leider nicht viel testen. Habe das Ganze aber gerade in einer virtuellen Maschine probiert und habe das Problem ebenfalls. Leider weiß ich auch nicht was neuerdings das Problem ist und Nextcloud scheint hierzu auch nichts zu loggen.
Als Workaround auf die Schnelle bleibt wohl nur die Ordner nicht via SMB, sondern als lokalen Speicher in Nextcloud einzubinden. Allerdings hat dann Nextcloud nur Lesezugriff. Und wenn Nextcloud Schreibberechtigung bekommt, dann werden Dateien mit unterschiedlichen Usern erstellt, was ebenfalls zu Chaos führt.
Eine Quick-and-dirty-Lösung wäre die Shares mit bindfs für Nextcloud mit dem user www-data zu mounten. Dann könnte man die Ordner als lokalen Speicher in Nextcloud einbinden, Nextcloud hätte Schreibzugriff und trotzdem würden alle Daten mit dem lokalen User heimnetz geschrieben. Siehe https://www.techgrube.de/tutorials/zugriffsrechte-auf-gemeinsame-dateien-fuer-mehrere-user-mit-bindfs-festlegen
Alternativ kann man auch den Apache mit dem User heimnetz anstatt www-data laufen lassen. Ist aber auch unschön.
Eine bessere Lösung fällt mir auf die Schnelle leider auch nicht ein, da ich im Moment nicht wirklich weiß was das Problem ist.
Vielen Dank für deine schnelle Antwort.
Tatsächlich bin ich ein Linux-Anfänger und habe leider keinen Plan, wie ich deinen Vorschlag mit bindfs umsetzen soll.
Evtl. hast du die nächste Woche Zeit, um der Sache auf den Grund zu gehen, oder aber das mit bindfs zu erklären.
Gruß Smoke
Es gab für Nextcloud vor wenigen Tagen ein Update auf die Version 17.0.1, da kommt auch das Problem her:
https://github.com/nextcloud/server/issues/17846
Ich habe versucht eine ältere Version (die 16.0.6) herunterzuladen und zu installieren, aber Nextcloud lässt mich nicht ohne ein Update auf die aktuelle Version auf die Website.
Ich glaube, da muss man auf ein offizielles Update warten. Da dieses Problem schon gepinnt wurde, wird es hoffentlich nicht all zu lange dauern
Hallo nochmal,
ich versuche mich gerade mit der Einbindung per bindfs. Ich verstehe aber nicht wirklich, was ich da machen muss ich tappe da im Dunkeln. Der Plan ist doch, dass ich den Nextcloud-Datenordner im Ordner /mnt/storage/shares mounte, wobei der Nutzer www-data mit den Rechten von heimnetz arbeitet, oder? Wo ist mein Denkfehler mit diesem Befehl?
$ bindfs#/mnt/storage/shares /mnt/storage/nextcloud fuse force-user=www-data,force-group=www-data,create-for-user=heimnetz,create-for-group=heimnetz,chgrp-ignore,chown-ignore,chmod-ignore 0 0
(soll das überhaupt ein Befehl sein? Oder soll das irgendwo in eine Datei geschrieben werden? Die Fehlermeldung „-bash: bindfs#/mnt/storage/shares: Datei oder Verzeichnis nicht gefunden“ lässt mich das zumindest vermuten)
Der Eintrag muss in die Datei /etc/fstab. Ich würde auch nicht den Nextcloud-Datenordner direkt verwenden, da dort ja wahrscheinlich schon Daten liegen, sondern einen Ordner unterhalb. Z.B. /mnt/storage/nextcloud/samba.
Kurze Info an alle die mit dem mounten der Samba-Freigaben kämpfen. Der Bug wurde auf Github bereits behoben, ist aber noch nicht direkt in Nextcloud verfügbar.
Wenn man auf dem Homeserver die Datei
/var/www/html/nextcloud/apps/files_external/lib/Lib/Backend/SMB.php
durch die aktuelle Version direkt aus dem Github Repository
https://github.com/nextcloud/server/blob/master/apps/files_external/lib/Lib/Backend/SMB.php
ersetzt, sollte alles wieder funktionieren.
Es funktioniert! Also beides 🙂
Vielen Dank für den langen Support, den du schon für diese Anleitung leistest!
Hallo. Ich habe Nextcloud nach deiner Anleitung eingerichtet und es funktioniert auch sehr gut. Heute wollte ich ein Update auf die 17.0.1 machen über das Terminal, bekomme jedoch jedesmal folgende Fehlermeldung:
[✘] Check for expected files failed
The following extra files have been found:
.rnd
Update failed. To resume or retry just execute the updater again.
Was soll ich tun?
Habe die .rnd Datei gelöscht und Update läuft. Kann die Frage leider nicht mehr löschen 🙂
Hallo, ich stehe vor einem kleinen Problem,
Ich habe Ihre Anleitung soweit zu 100% befolgt, nun bin ich an dem Punkt, die Ordner Für die Externen Speicher zu erstellen. Problem ist das ein unbekannter Fehler auftaucht, und nur ein rotes Ausrufezeichen auf der linken Seite auftaucht. Screenshot hier: https://ibb.co/cbfJKCd in den logs würde nur das hier auftauchen: {„reqId“:“2nwPtDuU7Kl35gkd5FS9″,“level“:3,“time“:“2019-11-22T21:17:42+00:00″,“remoteAddr“:“XX.XXX.XXX.XX“,“user“:“Stephan-Admin“,“app“:“index“,“method“:“GET“,“url“:“\/index.php\/apps\/theming\/img\/core\/filetypes\/video.svg?v=0″,“message“:{„Exception“:“OCP\\Files\\NotPermittedException“,“Message“:“Could not create folder“,“Code“:0,“Trace“:[{„file“:“\/var\/www\/html\/nextcloud\/lib\/private\/Files\/AppData\/AppData.php“,“line“:155,“function“:“newFolder“,“class“:“OC\\Files\\Node\\Folder“,“type“:“->“,“args“:[„0“]},{„file“:“\/var\/www\/html\/nextcloud\/apps\/theming\/lib\/ImageManager.php“,“line“:155,“function“:“newFolder“,“class“:“OC\\Files\\AppData\\AppData“,“type“:“->“,“args“:[„0“]},{„file“:“\/var\/www\/html\/nextcloud\/apps\/theming\/lib\/ImageManager.php“,“line“:170,“function“:“getCacheFolder“,“class“:“OCA\\Theming\\ImageManager“,“type“:“->“,“args“:[]},{„file“:“\/var\/www\/html\/nextcloud\/apps\/theming\/lib\/Controller\/IconController.php“,“line“:87,“function“:“getCachedImage“,“class“:“OCA\\Theming\\ImageManager“,“type“:“->“,“args“:[„icon-core-filetypes_video.svg“]},{„file“:“\/var\/www\/html\/nextcloud\/lib\/private\/AppFramework\/Http\/Dispatcher.php“,“line“:170,“function“:“getThemedIcon“,“class“:“OCA\\Theming\\Controller\\IconController“,“type“:“->“,“args“:[„core“,“filetypes\/video.svg“]},{„file“:“\/var\/www\/html\/nextcloud\/lib\/private\/AppFramework\/Http\/Dispatcher.php“,“line“:99,“function“:“executeController“,“class“:“OC\\AppFramework\\Http\\Dispatcher“,“type“:“->“,“args“:[{„__class__“:“OCA\\Theming\\Controller\\IconController“},“getThemedIcon“]},{„file“:“\/var\/www\/html\/nextcloud\/lib\/private\/AppFramework\/App.php“,“line“:126,“function“:“dispatch“,“class“:“OC\\AppFramework\\Http\\Dispatcher“,“type“:“->“,“args“:[{„__class__“:“OCA\\Theming\\Controller\\IconController“},“getThemedIcon“]},{„file“:“\/var\/www\/html\/nextcloud\/lib\/private\/AppFramework\/Routing\/RouteActionHandler.php“,“line“:47,“function“:“main“,“class“:“OC\\AppFramework\\App“,“type“:“::“,“args“:[„OCA\\Theming\\Controller\\IconController“,“getThemedIcon“,{„__class__“:“OC\\AppFramework\\DependencyInjection\\DIContainer“},{„app“:“core“,“image“:“filetypes\/video.svg“,“_route“:“theming.Icon.getThemedIcon“}]},{„function“:“__invoke“,“class“:“OC\\AppFramework\\Routing\\RouteActionHandler“,“type“:“->“,“args“:[{„app“:“core“,“image“:“filetypes\/video.svg“,“_route“:“theming.Icon.getThemedIcon“}]},{„file“:“\/var\/www\/html\/nextcloud\/lib\/private\/Route\/Router.php“,“line“:297,“function“:“call_user_func“,“args“:[{„__class__“:“OC\\AppFramework\\Routing\\RouteActionHandler“},{„app“:“core“,“image“:“filetypes\/video.svg“,“_route“:“theming.Icon.getThemedIcon“}]},{„file“:“\/var\/www\/html\/nextcloud\/lib\/base.php“,“line“:1000,“function“:“match“,“class“:“OC\\Route\\Router“,“type“:“->“,“args“:[„\/apps\/theming\/img\/core\/filetypes\/video.svg“]},{„file“:“\/var\/www\/html\/nextcloud\/index.php“,“line“:42,“function“:“handleRequest“,“class“:“OC“,“type“:“::“,“args“:[]}],“File“:“\/var\/www\/html\/nextcloud\/lib\/private\/Files\/Node\/Folder.php“,“Line“:162,“CustomMessage“:“–„},“userAgent“:“Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/78.0.3904.108 Safari\/537.36″,“version“:“17.0.1.1″}
Womit ich soweit auch nichts anfangen kann. gibt es da irgendetwas, dass ich doch übersehen habe, oder worin könnte die Macke liegen?
MfG
Hbae nach dem Schritt mit der Appache Konfiguration leider keinen Zugriff mehr über die *.ddns.net adresse mehr. Naütrlich habe ich diese auf meine eigene abgändert.
Im Browser kommt Zeitüberschreitung. Beim Aufruf über die IP komme ich auf Nextcloud. Jm. eine Idee?
Achso, vor dem laden der Config war ein aufruf der Appache default Seite möglich über *.ddns.net.
Das kann dann eigentlich kaum an der Serverkonfiguration liegen, wenn der Aufruf über die IP-Adresse weiterhin funktioniert.
Klingt eher so, als wäre bei der ddns-Adresse nicht mehr die korrekte IP-Adresse hinterlegt.
Hallo Niko!
Leider komme ich nur bis hierher: „sudo certbot –apache certonly“
Ab dann gehts nicht weiter, egal was ich tue, ich bekomme nicht die Zertifizierung.
In der Fritzbox ist alles eingerichtet, über die „meineadresse“.dynv6.net ist auch alles richtig, von
außen kann ich auch darauf zugreifen.
Ich bekomme diesen Ausdruck:
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Starting new HTTPS connection (1): acme-v02.api.letsencrypt.org
No names were found in your configuration files. Please enter in your domain
name(s) (comma and/or space separated) (Enter ‚c‘ to cancel): xxxxxxxxxx.dnyv6.net
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for xxxxxxxxxx.dnyv6.net
Enabled Apache rewrite module
Waiting for verification…
Cleaning up challenges
Failed authorization procedure. xxxxxxxxxx.dnyv6.net (http-01): urn:ietf:params:acme:error:dns :: DNS problem: NXDOMAIN looking up A for xxxxxxxxxx.dnyv6.net
IMPORTANT NOTES:
– The following errors were reported by the server:
Domain: xxxxxxxxxx.dnyv6.net
Type: None
Detail: DNS problem: NXDOMAIN looking up A for
xxxxxxxxxx.dnyv6.net
Den richtigen Namen habe ich natürlich mit xxxxxxxxx ersetzt.
Ich würde mich auch nicht als Anfänger bezeichnen, aber scheint wohl doch etwas komplizierter zu sein das Ganze.
🙁
Würde mich freuen, wenn da mal ein Update gibt, denn sonst scheint ja die Anleitung im Großen und Ganzen ziemlich gut zu sein.
Besten Grüße,
Volkan
DNS problem: NXDOMAIN looking up A for xxxxxxxxxx.dnyv6.net. Certbot sucht einen A-Record, also eine IPv4 Adresse für xxxxxxxxxx.dnyv6.net und findet keine. Das Problem muss also schon irgendwo in deiner DynDNS-Konfiguration liegen.
Hallo,
das war ja eine superschnelle Antwort, echt Respekt, hätte ich auf ein Samstag nicht gedacht.
Also, bin jetzt das ganze Wochenende hier am versuchen, aber leider mit mässig Erfolg.
Auf „localhost“ Ebene läuft Nextcloud, aber mehr bekomme ich nicht hin.
Da fehlt einfach die Verbindung nach draussen.
Fritzbox ist eingerichtet, Port 80 und 443 alles OK
Auf dnyv6 werden die A und AAAA als richtig angezeigt.
Langsam vergeht einem die Lust, aber ich gib mir noch ein Ruck und versuche noch einges aus.
Schöne Grüße um knapp 2 Uhr an einem Sonntag!
Hallo Niko!
Der Volkan nochmal hier!!! SUPER ANLEITUNG!
Endlich klappt auch bei mir hier alles gut! Das Problem war wirklich die richtigen Einstellungen von meiner Kombination Laptop->VirtualBox->Fritzbox->meinname.ddns.net
Als alles richtig konfiguriert war, war der Rest ein Kinderspiel (dank dir).
:-))))
Wochenende ist dafür drauf gegangen, aber es läuft !!!!!
Super Sache was du hier machst (auch wenn ich erst skeptisch war)
😉
Besten Grüße aus OWL
Volkan
Dankeschön 🙂
Hallo Niko
Nochmal ich. Ich hatte gestern schon auf Seite 2 nachgefragt.
Da ich aber ungeduldig bin, habe ich gestern deine Anleitung durchgearbeitet und siehe da…. Zugriff vom Windows PC über Samba läuft, und Zugriff vom iPhone genauso wie vom lokalen PC, als auch von außerhalb übers Internet auf Nextcloud funktioniert.
Aber alles nur Dank DEINER SUPER ANLEITUNG!!!
Nochmals Danke dafür!!!
Also gleich mal 2 Ordner erstellt (Bilder, Musik) und auf der Konsole geschaut, ob sie auch wirklich da sind… 😉
Dann wollte ich schlau sein, habe meine externe HD direkt an den Server gehängt, gemountet, die beiden Ordner in /media/hd/nextcloud/roland/files wieder gelöscht und die gleichnamigen, jedoch mit Dateien gefüllten Ordner mit Bilder und Musik dorthin kopiert.
Leider sind über die Weboberfläche von Nextcloud die beiden Ordner leer.
Wie kann ich NC dazu bringen, die Dateien in diesen Ordnern anzuzeigen?
Ich habe gelesen, das NC das nachträgliche Verschieben von Ordnern nicht unterstütz, aber in meinem Fall tausche ich ja quasi nur 2 leere gegen 2 volle Ordner aus.
Gibt es da eine Möglichkeit oder ist es einfacher, NC über meinen Windows PC aufzurufen und die Dateien und Verzeichnisse „offiziell“ hochzuladen? Bei knapp 500GB dauert das nun mal etwas länger….
Gruß
Roland
Hallo Roland,
das Problem hatte ich auch schon. Schau mal folgenden Beitrag an. [Nextcloud/Owncloud File Cache aktualisieren].
Etwas ausführlicher steht es auch in der Nextcloud Dokumentation https://docs.nextcloud.com/server/17/admin_manual/configuration_server/occ_command.html?highlight=scan#file-operations-label
Gruß
Niko
Hallo
Jaaaa!!! Hat wunderbar funktioniert! Danke dafür.
Nun wollte ich uTorrent auf dem Server installieren und habe das hier gefunden:
https://www.itzgeek.com/how-tos/linux/ubuntu-how-tos/install-%CE%BCtorrent-utorrent-on-ubuntu-18-04-ubuntu-17-10-17-04.html
Der 2. Befehl ist ja
sudo apt-get install libssl1.0.0 libssl-dev
Mich macht das ssl in dem Befehl etwas stutzig. Nicht dass ich mir meine SSL Verschlüsselung für NC zerschieße, wollte ich lieber nochmal nachfragen.
Oder hat dies mit der Verschlüsselung nicht zu tun…
Danke nochmal für deinen Support!!!
Roland
Ich denke nicht dass das etwas zerschießt. Kann es dir aber auch nicht sicher sagen.
libssl1.0.0 hat du mit ziemlicher Sicherheit eh schon installiert. Ich glaube nicht dass es ein Problem ist, wenn du libssl-dev zusätzlich installierst.
Aber wie gesagt, keine Garantie.
Hallo Niko
…und die, die sich für die Antwort interessieren…
Ich habe es installiert und uTorrent funktioniert genauso wie auch alles andere noch. Also kein Problem.
Hab jetzt nur noch ein Problem damit, dass utorrent nicht automatisch mit reboot des Servers startet.
Gruß
Roland
Ich versuche derzeit nach Deiner Anleitung Nextcloud auf Lubuntu 18.04.03 zu installieren, komme aber nicht weiter. Die Installationen von MariaDB, Letsencrypt und Apache2 liefen (fast) einwandfrei.
Nur auf der ersten Anmeldeseite von Nextcloud bekomme ich immer den Fehler SQLSTATE[HY000] [1045] Access denied for user ‚oc_michael’@’localhost‘ (using password: YES)
Als Admin wollte ich „michael“ mit PW ‚irgendwas‘ angeben.
Wie geht es weiter?
Sollte die Installation von Letsencrypt-Zertifikaten nicht funzen empfehle ich es mit certbot-auto zu versuchen. Hier die Erklärung:
https://forum.ubuntuusers.de/topic/letsencrypt-failed-authorization-procedure-403/
und hier die Abhilfe:
https://gist.github.com/daronco/45eeb9223c57d240e60d094f8bee457e
Ich bin beim Suchen nach einer Anleitung für ein NAS-System auf deine schöne Anleitung gestoßen.
Leider war der zweite gefundene Sucheintrag (https:// die-deutschland-luege.de/linux-home-server-erstellen/der-eigene-server/homeserver-nas-mit-ubuntu-18-04-teil-5-nextcloud) eine dreiste Kopie/ versteckte Verlinkung auf deinen Artikel.
Gerade mit Blick auf die URL besonders ärgerlich, tut mir Leid für deine schöne Artikelreihe.
Hallo Niko,
Deine Anleitung finde ich super.
Leider hatte ich dann doch ein paar Probleme, deren Behebung etwas länger dauerte, weil meine Linux-Erfahrung bis 12/2019 zurück reicht und die Foren wenig Hilfe bieten (jedenfalls dann, wenn man wenig Englisch versteht). Ich verwende als Grundlage Ubuntu 18.04.03 (Stand Dez. 2019). Diese Version installiert PHP 7.4. Nextcloud benötigt jedoch 7.1, 7.2 oder am Besten 7.3. Dies erfuhr ich also erst durch eine Fehlermeldung, als ich mit „sudo -u www-data php occ user:add –display-name=“Voller Name“ [–group=“…“] username“ versuchte einen neuen Benutzer anzulegen. Erst nach Korrektur von PHP7.4 auf PHP7.3 funktionierte nextcloud so wie ich es erwartet habe.
Vielleicht ist es hilfreich, wenn Du Deine Anleitung genau um die beiden Punkte Kontrolle und Anpassung der PHP-Version und certbot-auto (siehe 16.1.2020) ergänzen würdest.
Ansonsten HERZLICHEN DANK für die Anleitung.
LG Michael
Hallo Michael,
ich kann das leider nicht nachvollziehen. Hast du irgendwelche zusätzlichen Paketquellen hinzugefügt?
In den offiziellen Paketquellen von Ubuntu 18.04.3 ist nur PHP 7.2 verfügbar, damit funktioniert alles wie im Beitrag beschrieben. Selbst das aktuellste Ubuntu 19.10 installiert nur PHP 7.3 aus den offiziellen Paketquellen.
Gruß
Niko
Ich bin jetzt fast fertig -danke schonmal für die Anleitung- aber beim letzten großen Schritt komm ich absolut nicht weiter. Ich habe alle Schritte befolgt und trotzdem kommt auf meiner Domain nicht der NextCloud Screen, sondern nur die Apache2 Ubuntu Default Page. Kann mir jemand Abhilfe schaffen?
Rufst du Nextcloud im Browser über https auf? Nur da ist konfiguriert, dass Nextcloud direkt aufgerufen wird. Wenn du unverschlüsseltes http verwendest musst du das erst konfigurieren, oder du probierst http://deinedomain.com/nextcloud.
Dank dem letzten Tipp hat es geklappt. Danke für alles!
Hallo, danke für die Anleitung, sie hilft echt weiter. Leider stehe ich vor einem Problem mit der HTTP01-Challenge bei der Erstellung des Letsencrypt-Zertifikats, die läuft einfach in einen Timeout:
Domain: xxx.yyy.zzz
Type: connection
Detail: Fetching
http://xxx.yyy.zzz/.well-known/acme-challenge/IzsmeuN36CWrWhJXBSnHpZcszyoNKajPQTLAFhw8JZU:
Timeout during connect (likely firewall problem)
Die Ports 80 und 443 sind freigegeben und mein Server ist über die ddns-Adresse sowohl über IPv6 als auch IPv4 auf beiden Ports erreichbar, aber es will einfach nicht funktionieren. Hier mal ein Auszug aus curl:
curl -IkL -m20 http://xxx.yyy.zzz
HTTP/1.1 200 OK
Date: Sat, 15 Feb 2020 21:40:47 GMT
Server: Apache/2.4.29 (Ubuntu)
Last-Modified: Sat, 15 Feb 2020 20:27:05 GMT
ETag: „2aa6-59ea3253c849e“
Accept-Ranges: bytes
Content-Length: 10918
Vary: Accept-Encoding
Content-Type: text/html
Muss ich da noch irgendwas im Apache konfigurieren, damit die Ausstellung des Zertifikats funktioniert? Habe ich irgendwelche Zugriffsrechte verdaddelt? Oder werde ich hier tatsächlich von meinem ISP ausgebremst? Das kann ich aber kaum glauben, denn ich kann auf die Apache-Testseite über HTTP (und damit Port 80) über DDNS-Adresse zugreifen.
Danke schonmal 🙂
Ich nochmal – das Thema hat sich inzwischen erledigt. Die IPv6 Interface-ID, die sich die FritzBox automatisch gezogen hatte, war schlichteg falsch. Jetzt läuft alles 🙂
Hallo Niko,
auch hier nochmal eine Dankeschön für die tolle Anleitung,
bei Nextcloud habe ich ein Problem mit neuen Nutzern und dem ausblenden/sperren von den lokalen Ordnern.
Hintergrund wäre der , das ich für unseren Verein gerne Nextcloud auf meinem Homeserver/NAS nutzen möchte, hier aber einen eigenen Vereinsordner ertstellen und freigeben, das mit dem Ordner Verein klappt, nur hat der Benutzer Vorstand auch Zugriff auf alle lokalen Ordner, die sollen aber gesperrt sein 😉
Über die Nextcloud Hilfe bzw. Forum bin ich da nicht weitergekommen 🙁
lg Alex
Hallo Alex,
das sollte funktionieren, wenn du die User unterschiedlichen Gruppen zuordnest. Beispielsweise könntest du eine Gruppe „mitglieder“ anlegen. Die Benutzer der Vereinsmitglieder gehören zur Gruppe „mitglieder“, der User des Vorstands aber nicht.
Dann teilst du einen Order über das Sharing-Menü mit der Gruppe. Alle Angehörigen der Gruppe können den Ordner dann sehen und verwenden. Der User des Vorstands aber nicht, da er nicht Teil der Gruppe ist.
Eine andere Lösung fällt mir nicht ein.
Gruß
Niko
habs gefunden hatte am falschen Platz gesucht.
unter Einstellungen / Verwaltung / externer Speicher hab ich ganz rechts unter „verfügbar für“ keinen Benutzer eingetragen gehabt, somit war das für alle, jetzt steht da nur noch mein Benutzername drin und jetzt ist nur noch der neue Ordner für den Verein zu sehen 😉
MIt Benutzer gruppen und soweiter hatte ich schon alles probiert, da wren die Ordner für die Gruppen und IMMER die lokalen Ordener zu sehen.
lg Alex
Hey!
Erstmal: Top Beitrag! Hat bis dato ziemlich gut geklappt.
Mein Problem bis hier:
Ich Konfiguriere die sites-av conf 001.. mit meinem ServerName, die weiterleitung hab ich rausgenommen..trotzdem:
Bei Firefox „localhost“ leitet mich immer auf techgrube.de xD ist zwar auch nett, jedoch für mich aktuell nicht zielführend xD
Eine Idee?
Scheine ein Problem mit dem DNS zu haben, weil ich *server.name.de* nicht auflösen kann und die Anfrage sagt: Ladefehler..
Danke schonmal!!
Eines der besten Anleitungen die ich gelesen habe.
Hat alles super funktioniert.
Vielleicht noch ein Tipp: Die Datei 001-nextcloud.conf muss natürlich mit eigenen Infos befüllt werden 😉
Viele Grüße und weiter so
Rfahren
Hallo Niko,
ich verstehe die Dialoge mit bindfs und fuse mount leider nicht. Könntest du die bitte nochmal für Anfänger erklären?
Toller Bog.
VG
Timo
Der Bug in Nextcloud wurde ja behoben, so dass sich das Thema eh erledigt hat. Außer du interessierst dich direkt für bindfs.
Mit bindfs kann man einen Ordner an einer anderen Stelle im Dateisystem mounten. Dabei kann man auch den User bestimmen, mit dem geschrieben wird. Egal welcher User tatsächlich schreibt.
Z.B. schreibt der User www-data von Nextcloud eine Datei. Über bindfs wird diese aber tatsächlich mit dem User heimnetz auf die Festplatte geschrieben, ohne dass Nextcloud davon etwas mitbekommt.
Hallo Niko,
moin zusammen,
zunächst von mir auch ein dickes Lob und Dankeschön für diese Reihe. Es hat sehr viel Spaß gemacht bis hier hin.
Vielleicht hat der ein oder andere auch das folgende Problem, kennt eine Lösung oder kann einen Ansatz anbieten:
Ich habe bis zur Einrichtung von Nextcloud nahezu 1:1 umgesetzt was hier beschrieben wurde. Als Router liegt eine Easybox vor. Eine Domain habe ich mir von Strato gegönnt.
Vom Handynetzt habe ich keine Probleme den Server per MeineDomain.de zu erreichen. Wenn ich das gleiche aber aus meinem Heimnetzwerk versuche, bekomme ich eine Zeitüberschreitung.
Die Ordernfreigaben sind kein Problem, lediglich der Zugriff über die Domain will nicht funktionieren.
Hast du oder hat jemand eine Idee, warum das Problem nur auftritt, wenn ich mich im gleichen Netztwerk, wie der Server befinde, aber von extern ohne Probleme Zugriff habe?
Für Ideen wäre ich sehr dankbar.
Gruß
Simon
Korrektur: Easybox war früher mal. Speedport W723V heißt der aktuelle Router.
Zu diesem ist die Verbindung übrigens über speedport.ip auch nicht immer optimal.
Klingt so, als könne der Router kein NAT-Loopback. Also eine Verbindung vom Heimnetz ins Internet und wieder zurück ins Heimnetz. Wenn es das ist, würde nur ein Firmware-Update oder ein neuer Router helfen.
Eine kurze Recherche hat ergeben: du hast höchst wahrscheinlich Recht. Es sieht so aus, als unterstützt das besagte Modell kein Nat-Loopback.
Es ist auf jeden Fall schon mal beruhigend, dass die Installationen ansonsten alle gut funktioniert haben. Werde mir nochmal durch den Kopf gehen lassen, ob dieser kleine Makel einen neuen Router rechtfertigt, oder ob ich erstmal damit leben kann.
Danke nochmal für die saubere Anleitung und auch für das schnelle Feedback. 10 Daumen hoch.
Hey Niko,
Danke erstmal für die super Ableitung 🙂
Hat alles super geklappt und bisher auch ohne Einwände funktioniert.
Leider ist meine Nextcloud seit ein paar Tagen per App (iPhone) nicht mehr erreichbar und wirft mir Meldungen für „Zeitüberschreitung der Anforderung“ sowie „keine Berechtigung zum ändern oder erstellen von Ordner/Dateien“ aus. Beim Versuch einer Neuanmeldung hat sich der Anmeldevorgang nach Eingabe des Servernamens Doof und Dämlich geladen bis zur Zeitüberschreitung :/
Bin etwas ratlos; ich habe kurz zuvor ein Nextcloud Update durchgeführt und habe den Verdacht, dass dies damit im Zusammenhang stehen könnte.
Hattest du schon einmal ein solche Problem oder vielleicht einen Verdacht woran es liegen könnte?
Gruß,
Marc
Hallo Niko,
vielen Dank für die Anleitung, hat mir bereits beim Aufsetzen meiner NAS super geholfen. Inzwischen ist mir allerdings die SSD mit dem Betriebssystem gestorben und ich musste neu aufsetzen. Bei Nextcloud habe ich jetzt leider einen Fehler gemacht indem ich vergessen habe, den Pfad für die Daten anzupassen, d.h. die Daten werden jetzt in /var/www gespeichter. Kann ich das irgendwo nachträglich nochmal anpassen?
Vielen Dank nochmal!
Hallo Dieter,
der Pfad zum Datenverzeichnis steht in der Konfigurationsdatei unter /var/www/html/nextcloud/config/config.php. Ich denke, dass du dort den Pfad einfach ändern kannst, ich habe das aber selber nicht getestet.
danke für die schnelle Antwort – hat zwar auf den ersten Blick funktioniert, die Synchronisation will dann aber nicht mehr… Also doch nochmal neu aufsetzen.
Hallo Niko,
ich schließe mich den vielen Danksagungen an und freu mich, dass die Umsetzung so gut geklappt hat, nach dieser genialen Anleitung.
Ich würde die Nextcloud auch gerne dazu nutzen Links freizugeben. Gehe ich recht in der Annahme, dass dies durch die SMB-Freigaben aber nicht geht? Nextcloud erlaubt bei mir nur interne Freigaben.
Gibt es eine Möglichkeit diesen Dienst trotzdem zu nutzen?
Vielen Dank und Grüße, Andreas
Hallo Andreas,
anscheinend können für Dateien die über das Externe-Speicher-Plugin eingebunden sind wirklich keine externen Freigaben erstellt werden. Ich verwende das Plugin und die darüber eingebundenen SMB-Freigaben ja, um Problemen mit den Dateiberechtigungen aus dem Weg zu gehen, wenn manche Dateien über die SMB-Freigaben und andere über Nextcloud erstellt werden.
Du kannst natürlich auch deine Verzeichnisse direkt als Datenverzeichnis in Nextcloud einbinden, hast dann halt Berechtigungsprobleme, wenn eine Datei über Samba erstellt wird. Gibt natürlich auch wieder Ansätze das zu lösen. Webserver und Samba-Server mit dem gleichen User laufen lassen, Dateirechte regelmäßig durch ein Skript anpassen, ACLs eventuell, alles auch nicht perfekt.
Du kannst eventuell auch komplett auf Samba verzichten und am Computer via Nextcloud und Webdav auf die Ordner zugreifen. Ist halt deutlich langsamer als Samba.
Die perfekte Lösung habe ich leider nicht. Je nachdem welche Anforderungen man hat ist der eine, oder der andere Weg sinnvoller.
Hallo Niko,
ich danke für die schnelle Antwort. Das habe ich mir auch schon gedacht. So wie es jetzt läuft ist es ja eigentlich eine gute Lösung. Die Samba-Freigabe ist sehr schnell und wir belasten unsere Internetverbindung nicht so sehr, leider befinden wir uns noch in einem nicht so gut ausgebauten Netz. Die Cloud nutzen wir um mit mobilen Geräten Bilder und Aufmaße hochzuladen. Wir haben bisher über Webdav und die Nextcloud App auf die Daten zugegriffen. Ich habe mich aber jetzt für Deine Lösung entschieden, wegen des schlechten Internetzugangs. Wir werden uns was anderes einfallen lassen. Vielen Dank und Grüße, Andreas
Hey Niko, danke für den wunderbaren Guide. Seit langer Zeit läuft der Server ohne Fehler, heute wollte ich dann endlich mal Nextcloud installieren. Das klappt soweit, allerdings taucht immer die FritzBox Login Seite auf, anstatt der Nextcloud Seite. Ich finde den Fehler einfach nicht. Eine Idee?
Grüße
Aki
Hm, schwer zu sagen. Nutzt du DynDNS oder MyFritz mit IPv6? Dann hat die Fritzbox eine andere IPv6-Adresse als der Homeserver. Dann muss in dort die IPv6-Adresse des Homeservers eingetragen sein, nicht die der FritzBox.
Über IPv4 solltest du eigentlich nicht auf der Fritzbox landen, sofern Port 80 und 443 für den Homeserver freigegeben sind.
Danke für deine Antwort. Ich konnte das Problem mkttlerweile eingrenzen. Der Zugriff klappt nur aus dem lokalen Net nichtz, auch das Zertifkat nicht. Hier lande ich immer bei der FritzBox Seite, mit einer unsicheren Verbindung.
Versuch ich es vom Handy mit mobilen Daten, klappt alles einwandfrei und so wie es soll.
Nutze DynDNS.
Hi Nico,
Auch ich bedanke mich ganz herzlich für die tolle Anleitung. Ich habe aus einem alten PC jetzt einen Ubuntu Server mit Nextcloud eingerichtet.
3 Festplatten
1. OS
2. SMB Freigeben media (/mnt/media) mit Filmen
3. smb user (/mnt/storage/shares/user) für SMB
… und Daten der Nextcloud (/mnt/storage/nextcloud)
Nextcloud funktioniert wunderbar, ich habe bloß nicht die SNAP Version genommen, sondern (wie bei der Version 18.04 beschrieben) Nextcloud manuell eingerichtet um das External-Storage-Plugin zu verwenden.
Jetzt würde ich gerne das Speichermedium (/mnt/media) einbinden über External-Storage-Plugin. (SMB/CIF?)
Was muss ich denn wo eingeben?
Host : lokale IP Adresse?
Share: /mnt/media?
Entfernter Unterordner: ?
Domain ?
Benutzer: smb medien-Benutzer?
Passwort: smb medien-Passwort?
Kannst Du helfen?
Viele Grüße
Michael