Die eigene Cloud mit dem Raspberry Pi und Nextcloud

In diesem Beitrag zeige ich euch wie ihr euch eine eigene Cloud mithilfe des Raspberry Pi, Nextcloud & Let’s Encrypt baut. Ihr benötigt außerdem eine DynDNS Domain. Ich empfehle euch spdyn.de und werde es auch anhand von diesem zeigen.

Einkaufsliste:

Raspbian herunterladen und auf SD-Karte schreiben:

Unter Linux:

wget https://downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2016-09-28/2016-09-23-raspbian-jessie-lite.zip

unzip 2016-09-23-raspbian-jessie-lite.zip

# rm 2016-09-23-raspbian-jessie-lite.zip

Mit folgendem Befehl kann überprüft werden wo die SD-Karte eingehängt ist:

lsblk

Das Image wird mit folgendem Befehl auf die SD-Karte geschrieben:

sudo dd if=2016-09-23-raspbian-jessie-lite.img of=/dev/sdX

sdX ist hierbei durch den Einhängepunkt der eigenen SD-Karte zu ersetzen.

Unter Windows:

Falls ihr Windows Benutzer seit, könnt ihr hier das Image von Raspbian Lite herunterladen und für das schreiben auf die SD-Karte den Win32 Disk Imager verwenden.

Die ganze SD-Karte nutzen und das Passwort des Benutzers pi ändern:

Steckt nun die SD-Karte in den Raspberry Pi, schließt das LAN-Kabel an und gebt ihm Strom. Nach ein paar Sekunden könnt ihr euch über SSH anmelden. Windows-Benutzer benötigen hierfür das Tool PuTTY.

Unter Linux/macOS:

ssh pi@raspberrypi

Das Passwort ist raspberry. 

Unter Windows:

Wie bereits gesagt benötigt ihr als Windows Nutzer das Tool PuTTY.

putty

 

Bei Host Name gebt ihr raspberrypi ein. Es ist sinnvoll bevor ihr unten auf Open klickst, dass ihr bei Saved Sessions Raspberry Pi oder etwas dergleichen eingebt und auf Save klickst. Das macht euch bei häufigen Zugriff via SSH auf euren Raspberry Pi das Leben ein bisschen einfacher.

Nun werdet ihr nach Login und Passwort gefragt.

  • Benutzername: pi
  • Passwort: raspberry

Nun seit ihr auf der Konsole/dem Terminal. Die Konsole/der Terminal ist vergleichbar mit der Windows Eingabeaufforderung.

Das Passwort solltet ihr als erstes ändern. Dies geht mit dem folgendem Befehl:

passwd pi

Danach wird der komplette Speicherplatz der SD-Karte eingerichtet.

sudo raspi-config

Über die Option Expand Filesystem erweitert ihr die SD-Karte.

raspi-config

Anschließend muss neugestartet werden.

Den Raspberry Pi auf den neusten Stand bringen:

sudo apt update
sudo apt upgrade

Nextcloud installieren:

Nun installieren wir Nextcloud auf dem Raspberry Pi:

sudo apt-get install apache2 php5 php5-gd php5-sqlite php5-curl php5-common php5-intl php-pear php-apc php-xml-parser libapache2-mod-php5 curl libcurl3 libcurl3-dev sqlite mysql-server mysql-client php5-mysql phpmyadmin -y

Ihr könnt entweder eine SQLite oder eine MySQL-Datenbank für Nextcloud verwenden. Wenn mehrere Benutzer oder größere Dateien auf dem Pi gehostet werden sollen, solltet ihr MySQL verwenden. Für MySQL und phpmyadmin muss zwei Mal ein sicheres Root Passwort vergeben werden.

Wenn ihr MySQL verwenden möchtet, müsst ihr über http://ip-eures-raspberrypi/phpmyadmin eine Datenbank für Nextcloud erstellen.

Meldet euch mit dem Benutzernamen root und dem von euch vergebenen Passwort an, klickt auf der linken Seite auf +Neu und nennt diese nextcloud.

Solltet ihr SQLite statt MySQL verwenden dann könnt ihr MySQL und phpmyadmin mit folgenden Befehlen entfernen:

sudo apt-get purge mysql-server mysql-client php5-mysql phpmyadmin -y

sudo apt-get autoremove --purge -y

sudo apt-get autoclean

Nun geht es an die Installation von Nextcloud:

cd /var/www/

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

sudo unzip nextcloud-10.0.1.zip

sudo rm nextcloud-10.0.1.zip
sudo chown -R www-data:www-data /var/www/nextcloud

DynDNS Domain bei  spdyn.de

Registriert euch zuerst bei spdyn.de und fügt über euer Profil bei Hosts von Benutzer einen IPv4 Host hinzu.

Alternative kostenlose Dynamic-DNS-Anbieter:

Leider lassen sich für die eigenen Hosts bei spdyn.de bzw. spdns.de derzeit keine Zertifikate von Let’s Encrypt generieren, welche für die Benutzung einer HTTPS-Verbindung notwendig sind. Deswegen findet ihr hier eine kleine Liste mit alternativen Dynamic-DNS-Anbietern:

spdns Dynamic DNS Update-Client installieren:

Nun richten wir den spdns Update Client ein. Der Client sollte auch mit den alternativen Dynamic-DNS Anbietern funktionieren.

cd

wget http://my5cent.spdns.de/wp-content/uploads/2014/12/spdnsUpdater_bin.tar.gz

tar -zxvf spdnsUpdater_bin.tar.gz

sudo mv spdnsu.conf /etc/

sudo mkdir updater

sudo mv spdnsu updater/

sudo chmod u+x updater/spdnsu

sudo chown -R pi:pi /home/pi/updater/

rm spdnsUpdater_bin.tar.gz

Anschließend müsst ihr mit sudo nano/etc/spdnsu.conf die Datei /etc/spdnsu.conf anpassen. Dort müsst ihr anpassen:

  • Host
  • Username
  • Passwort  (falls ihr über die Webseite einen Token generiert habt müsst ihr diesen statt des Passwortes eintragen)
sudo crontab -e

Dort einfügen:

*/10 * * * * /home/pi/updater/spdnsu

Testen, ob alles funktioniert:

./updater/spdnsu

Eure IP-Adresse findet ihr in der Datei /tmp/spdnsuIP.cnf

cat /tmp/spdnsuIP.cnf

Beispielausgabe:

currentIP=111.222.333.444

Portfreigabe einrichten:

Anschließend müsst ihr zwei Portfreigaben einrichten. Eine für den Port 80 und eine für den Port 443. Ich zeige das hier mit einer AVM FRITZ!Box 7490

Meldet euch unter fritz.box auf eurer FRITZ!Box an und geht auf Internet > Freigaben

pf-fb

pf-fb2

pf-fb3

Let’s Encrypt herunterladen und Zertifikat erstellen:

Jetzt geht’s ans Zertifikat.

sudo a2enmod ssl 

sudo apt install git -y

cd /etc

sudo git clone https://github.com/letsencrypt/letsencrypt

cd letsencrypt

sudo ./letsencrypt-auto

Hier müsst ihr eure DynDNS Domain eingeben. Let’s Encrypt erledigt den Rest von selbst.

Let’s Encrypt Zertifikat automatisch erneuern:

Das Zertifikat von Let’s Encrypt läuft nach 3 Monaten ab.  Aber zum Glück kann man sein Zertifikat automatisch erneuern lassen

Als erstes muss die cli.ini im Ordner /etc/letsencrypt erstellt werden:

sudo nano /etc/letsencrypt/cli.ini

Dort einfügen:

rsa-key-size = 4096
text = True
redirect = True
renew-by-default = True
agree-tos = True
email = mail@domain.tld

mail@domain.tld ist mit einer validen Mail-Adresse zu ersetzen. Mit Strg + O, Enter & Strg +X speichert ihr die Datei.

sudo /etc/letsencrypt/letsencrypt-auto certonly --agree-tos --renew-by-default -a webroot --webroot-path /var/www/nextcloud/ -d host.spdns.de

host.spdns.de müsst ihr durch eure DynDNS Domain ersetzen. Nun müssen wir den Befehl noch in crontab einfügen:

sudo nano /etc/crontab

Dort einfügen:

@weekly root /etc/letsencrypt/letsencrypt-auto certonly --agree-tos --renew-by-default -a webroot --webroot-path /var/www/nextcloud/ -d host.spdns.de

Mit Strg + O, Enter & Strg +X speichert ihr die Datei.

DocumentRoot anpassen:

Ändert bei den beiden Dateien /etc/apache2/sites-available/000-default.conf und /etc/apache2/sites-available/000-default-le-ssl.conf die Zeile von

DocumentRoot /var/www/html

zu

DocumentRoot /var/www/nextcloud

Startet anschließend den Apache Webserver neu

sudo service apache2 restart

Nextcloud einrichten:

Nun könnt ihr Nextcloud einrichten. Ruft dazu die URL in eurem Browser auf. (passt euren Host vor spdns.de an).

Dort müsst ihr einen Benutzernamen und ein sicheres Passwort für den Administrator anlegen. Niemals das Administrator-Konto mit admin oder administrator benennen. Legt für eure Daten einen eigenen Benutzer an!

Wenn mehrere Benutzer oder größere Dateien auf dem Pi gehostet werden sollen, solltet ihr unter Speicher & Datenbank MySQL auswählen. Dort müsst ihr zusätzlich den Besitzer der Datenbank (in diesem Fall root), das Passwort des Datenbankbesitzers und den Namen der Datenbank eingeben.

nextcloud-mysql

 

Sicherheitswarnung entfernen:

Solltet ihr im Admin-Bereich folgende Fehlermeldung erhalten, …

 

nextcloud-sicherheitswarnung

… könnt ihr diese wie folgt entfernen:

sudo nano /etc/apache2/apache2.conf

Dort am Ende der Datei einfügen (Servername anpassen!):

<VirtualHost *:443>
 ServerName host.spdns.de
 <IfModule mod_headers.c>
 Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains; preload"
 </IfModule>
</VirtualHost>
<Directory /var/www/nextcloud>
 AllowOverride All
</Directory>

Anschließend den Apache-Webserver neustarten

sudo service apache2 restart

Memory Cache nutzen

Nextcloud empfiehlt euch einen Memory Cache zu nutzen. Diesen richtet ihr wie folgt ein:

sudo nano /var/www/nextcloud/config/config.php

Dort vor ); einfügen:

'memcache.local' => '\OC\Memcache\APC',

Das war die gesamte Installation von Nextcloud auf dem Raspberry Pi.

Optionale Schritte nach der Installation:

Hier zeige ich noch ein paar optionale Schritte welche ihr nach der Installation von Nextclout machen könnt.

TOTP aktivieren:

Mit Hilfe von TOTP (time-based OTP, dt: zeitbasiertes Einmalpasswort) könnt ihr eure Nextcloud Instanz zusätzlich absichern. Denn, sollte jemand euren Benutzernamen und euer Passwort der Nextcloud Instanz herausgefunden haben, so kommt er ohne das zeitbasierte Einmalpasswort nicht rein.

Meldet euch auf eurem Raspberry Pi mit Nextcloud über die Weboberfläche an und geht zu Apps > Tool. Ganz unten findet ihr die App TOTP TwoFactor (Google Authenticator) und aktiviert selbige.

nextcloud-totp

Geht anschließend zu Persönlich > TOTP-Zweifaktorauthentifizierung und setzt den Haken, nun erscheint ein QR-Code und ein TOTP-Schlüssel. Den QR-Code oder den TOTP-Schlüssel müsst ihr mit der App Google Authenticator einscannen/eingeben.

Google Authenticator
Entwickler: Google Inc.
Preis: Kostenlos
Google Authenticator
Entwickler: Google, Inc.
Preis: Kostenlos

Nextcloud Theming:

Eine meiner Lieblingsfunktionen von Nextcloud ist das sehr einfache Theming.

Diese ist über den PunktAdministration > Theming erreichbar. Sprich: Nur der Administrator kann das Theme anpassen. Ich persönlich würde mich freuen wenn jeder User zumindest die Farbe in seinem Account anpassen kann.

Man kann anpassen:

  • Name
  • Webadresse
  • Slogan
  • Farbe
  • Logo
  • Login Hintergrund

nextcloud-theming

Die gemachten Einstellungen kann man mit einem Klick auf den „Rückgängig“-Button zurücksetzen.

Externe 2,5″ Festplatte einbinden:

Ihr habt die Möglichkeit externe 2,5″ Festplatten in Nextcloud einzubinden. Ich zeige euch dies hier mithilfe des WD PiDrive von WDLabs.

Meldet euch via SSH auf eurem Raspberry Pi:

sudo nano /boot/config.txt

Dort am Ende der Datei einfügen:

max_usb_current=1

Mit Strg+O und Strg+X speichert ihr die Datei.

mkdir /home/pi/usbdrive

Überprüfen ob eure USB-Festplatte erkannt wurde:

lsblk

Dort sollte der Name sda bzw. sda1 erscheinen.

Einbinden der Festplatte ins /home/pi/usbdrive:

sudo mount -t auto /dev/sda1 /home/pi/usbdrive
sudo chown -R www-data:www-data /home/pi/usbdrive
sudo nano /etc/fstab

Dort einfügen:

/dev/sda1 /home/pi/usbdrive auto noatime 0 0

Geht in eure Nextcloud > Apps > Nicht aktiviert und aktiviert die App „External storage support„. Um die Festplatte in Nextcloud einzubinden, geht zu Nextcloud >  Euer Benutzername > Administration > Externer Speicher.

Gebt dort den gewünschten Ordnernamen ein (in meinem Fall WD PiDrive), stellt den Speicher auf Lokal und gebt bei Konfiguration den Pfad /home/pi/usbdrive ein.

nextcloud-externer-speicher

WD Pi Drive Enclosure Square 6″ x 6″:

Für etwas Nextcloud-Box „Feeling“ kann man sich das WD Pi Drive Enclosure Square kaufen. Das WD Pi Drive Enclosure Square sollte meiner Meinung nach aber etwas größer sein da man die Kabel sehr stark biegt, was nicht gut für die Kabel ist. Hier mal ein Bild damit ihr wisst was ich meine:

wd-pidrive-enclosure-white-square-6x6

Ansonsten gefällt mir das Gehäuse sehr gut

smbclient installieren:

Falls ihr SMB (Server Message Block) oder CIFS (Common Internet File System) Freigaben in Nextcloud einbinden wollt, benötigt ihr ebenfalls die App „External storage support„, zusätzlich müsst ihr aber den smbclient nachinstallieren.

Meldet euch wie SSH auf eurem Raspberry Pi an:

sudo apt-get install smbclient

Nun ist der smbclient installiert und ihr könnt SMB und CIFS Freigaben einbinden.

Anzeige

Steven Seifried

Ich bin Steven, seit Juli 2014 veröffentliche ich auf canox.net die unterschiedlichsten Beiträge zu Linux & Android. Seit September 2015 verwende ich privat ausschließlich Linux (aktuell Ubuntu GNOME 16.04 LTS)

63 Antworten

  1. Arne sagt:

    Schöne Anleitung. Danke.

    Nur stolpere ich über „Das Passwort ist raspberry“. So weit richtig, aber sollte man nicht sofort als erstes das Standardpasswort austauschen? 😉

  2. cafelito sagt:

    Bin gespannt wie es weiter geht.
    Mach weiter so. Daumen hoch…

  3. Steven Seifried sagt:

    @Arne ist korrigiert

  4. Johannes Bauerstatter sagt:

    Ist es möglich eine exteren Festplatte anzuschließen und diese einzubinden? Wie wären die Befehle dafür?
    Vielen Dank und Top Anleitung.

  5. Johannes Bauerstatter sagt:

    Anleitung funktioniert perfekt. Hätte eine Installtion von NGINX Vorteile gegenüber Apache? Im Moment lasse ich es auf einen Raspi 1 laufen und etwas mehr Performance wäre nicht schlecht. 🙂

  6. Steven Seifried sagt:

    Was die Performance angeht bestimmt, Lighttpd ist da glaub ich etwas besser für geeignet.

    http://www.auge.de/usermagazin/hardware/eigene-wolke-owncloud-auf-dem-raspberrypi

  7. Rutschig sagt:

    Hey, nette Anleitung … die werde demnächst mal benutzen. Um das ganze etwas sicherer zu machen könnte man doch die Nextcloud in die DMZ stellen, oder? Soweit ich mal gelesen hatte bringt die das von Hause aus mit (LAN Port 1 oder so).

  8. Steven Seifried sagt:

    Dürfte funktionieren.

  9. Piet sagt:

    Hallo,
    Kann ich dies auch mit eine SD Karte von 8 Gb machen?
    Danke fur die Antwort.

  10. Steven Seifried sagt:

    Ja das funktioniert

  11. Piet sagt:

    Ich bekomme den Bericht „Could not resolve hostname raspberry: Name or service not known“ when Ich dass ssh gebrauche.
    Wass kan ich besser machen?

  12. Steven Seifried sagt:

    Dann schau am besten im Webinterface deines Routers nach der IP des Raspberry Pi

  13. Arndt sagt:

    danke für die detaillierte Anleitung. Hab es zunächst ohne dynDNS und TLS auf einem Bananapi ohne Probleme zum Laufen bekommen. Super Sache.

  14. KT sagt:

    Hallo,
    ich bekomme folgende Meldung : nextcloud can’t create or write into the data directory /var/www/nextcloud/data
    Den directory data besteht nicht.
    Was habe ich verkehrt gemacht?

  15. Steven Seifried sagt:

    sudo mkdir /var/www/nextcloud/data sollte helfen

  16. Matthias sagt:

    Hallo zusammen, ich bekomme folgende Fehlermeldung:
    pi@raspberrypi:~ $ sudo apt-get install apache2 php5 php5-gd php5-sqlite php5-curl php5-common php5-intl php-pear
    Paketlisten werden gelesen… Fertig
    Abhängigkeitsbaum wird aufgebaut.
    Statusinformationen werden eingelesen…. Fertig
    Die folgenden zusätzlichen Pakete werden installiert:
    apache2-bin apache2-data apache2-utils libapache2-mod-php5 libapr1
    libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.1-0 libonig2
    libperl4-corelibs-perl libqdbm14 lsof php5-cli php5-json php5-readline
    ssl-cert
    Vorgeschlagene Pakete:
    apache2-doc apache2-suexec-pristine apache2-suexec-custom php5-dev
    php5-user-cache openssl-blacklist
    Die folgenden NEUEN Pakete werden installiert:
    apache2 apache2-bin apache2-data apache2-utils libapache2-mod-php5 libapr1
    libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.1-0 libonig2
    libperl4-corelibs-perl libqdbm14 lsof php-pear php5 php5-cli php5-common
    php5-curl php5-gd php5-intl php5-json php5-readline php5-sqlite ssl-cert
    0 aktualisiert, 25 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
    Es müssen 7.236 kB an Archiven heruntergeladen werden.
    Nach dieser Operation werden 26,6 MB Plattenplatz zusätzlich benutzt.
    Möchten Sie fortfahren? [J/n] J
    Abbruch.
    pi@raspberrypi:~ $
    Woran kann es liegen, dass er abbricht? Was mache ich falsch?
    Ich nutze den Raspberry PI Modell B Rev 2.0, 512MB, kann es sein das er nicht alles unterstütz oder überfordert ist?

    Cheers matthias

  17. Steven Seifried sagt:

    Hallo Matthias,

    es sollte funktionieren wenn du den Befehl noch einmal ausführst.

    Gruß Steven

  18. Rene sagt:

    Hallo! Danke sehr für die Anleitung. Habe fast alles auf Anhieb hinbekommen. Das einzige was jetzt noch nicht funktioniert ist der Zugriff über https://…, was ja anscheinend für die App zwingend ist.
    Zum troubleshooting mal eine Frage: Bei dem Absatz zu letsencrypt schreibst du am Ende ‚Hier müsst ihr eure DynDNS Domain eingeben. Let’s Encrypt erledigt den Rest von selbst.‘
    Meinst du mit DynDNS Domain die Hostadresse, also z.b. ‚meinname.spdns.de‘?

  19. Steven Seifried sagt:

    Halle Rene,

    danke für dein Lob. Ja damit meine ich die Hostadresse

  20. Rene sagt:

    Oh okay. Na dann habe ich es eigentlich richtig gemacht. Ich kann dennoch nicht über https:// zugreifen. Hast du eine Idee was ich überprüfen kann was schiefgegangen sein kann? Port 443 habe ich freigegeben. Muss man sonst noch etwas im apache enablen oder gibt es irgendwelche Befehle um die SSL funktionsfähigkeit zu überprüfen?

  21. Steven Seifried sagt:

    Es sollte funktionieren. Hast du bei der FRITZ!Box auch den Pi ausgewählt?

  22. Christoph sagt:

    Hallo, das klingt sehr gut. Mein Pi wartet auf die Installation. Nur möchte ich gern über MyFritz statt über spdyn das realisieren. Wie geht das??? Oder bin ich naiv?

  23. Steven Seifried sagt:

    Funktioniert meines Wissens nach mit MyFRITZ leider nicht

  24. Junichs sagt:

    Wieso kann ich nicht über die Fritzbox die Aktualisierung von Spydns laufen lassen?
    Sondern soll ein ominöses Tool benutzen, welches scheinbar nicht mal ein offizielles Tool von denen ist? Der Sinn erschließt sich mir nicht.
    Ich hoffe auf Erleuchtung 😀

  25. Steven Seifried sagt:

    Falls du es über die FRITZ!Box hin bekommst kannst du es natürlich auch über die FRITZ!Box machen

  26. Jimmy Kater sagt:

    habe gelesen, dass man zb mit CNAME einen eigenen eintrag auf den myfritz-namen setzen kann, wenn man denn eine eigene domain irgendwo rumliegen hat… so dass zb ein aufruf mit (die auf irrezahlenundbuchstabenkombi.myfritz.net zeigt) möglich sein sollte.
    das heißt: dieses vorgehen IST möglich. ich weiß nur (noch) nicht, ob das bei der installation des raspi nach der oberen anleitung hilft
    drücke die daumen
    jimmy

  27. Tobias sagt:

    Ich habe eine Frage zum ersten Schritt:
    „Raspbian herunterladen und auf SD-Karte schreiben:“

    Ich nutze einen Windows Rechner, die Befehler wget und unzip sind ja an der Stelle für mich noch nicht nutzbar.
    Auf welche Ebene beziehen sich diese Befehle?
    wenn ich das image normal mit dem Win32diskimager tool installiere, sollte es auch gehen richtig?

    Danke.

  28. Steven Seifried sagt:

    Die Befehle kannst du verwenden wenn du Linux benutzt. Wenn du an deinem Windows-Rechner http://director.downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2016-05-13/2016-05-10-raspbian-jessie-lite.zip in die URL-Zeile deines Webbrowsers eingibst, wird das Archiv automatisch heruntergeladen. Entpacken kannst du es entweder mit 7-Zip oder mit dem Windows-Bordmittel. Das Image schreibst du dann mit Win32 Disk Imager auf die SD-Karte

  29. Dom sagt:

    Hi, danke für das Tutorial! Ich bin zurzeit hinter einer Easybox und habe hier das Port-Mapping eingestellt. Komme auch per http:// auf die cloud, allerdings nicht über https:// … letzteres sollte doch eigentlich aktiviert sein und nicht ersteres? 😮
    Ich habe mich genau an deine Anleitung gehalten. Hoffe Du kannst mir irgendwie weiterhelfen. Danke!

  30. Steven Seifried sagt:

    Hallo Dom,

    leider kenne ich mich mit der Easybox nicht aus, vielleicht hilft dir der folgende Beitrag weiter:

    http://praxistipps.chip.de/easybox-port-freigeben-so-klappts_37860

  31. Rene (2) sagt:

    Hi, tausend dank zunächst für das gute Tutorial. Aber lustiger weise habe ich (Rene(2)) genau das glaube Problem wie der andere Rene. Habe auch LEtsentcrypt mit dem hostname xxx.spdn.eu durchlaufen lassen, die apache virtualhost angepoast und bei der Fritzbox genau so wie im Screenshot die Portfreigaben hinterlegt. Zugriff per http klappt, bei https geht gar nichts und ich finde nicht heraus, woran es liegen könnte 🙁
    Lieben Dank & Gruß
    René

  32. Steven Seifried sagt:

    Hallo Rene (2),

    ich habe nun herausgefunden woran es bei euch wahrscheinlich liegt. Ich habe vor einiger Zeit den Beitrag angepasst (neue Nextcloud-Version und Absätze) und dabei habe ich, so wie es aussieht, die Zeile mit sudo a2enmod ssl gelöscht. Sorry dafür. Ich habe die Zeile nun wieder hinzugefügt. Wahrscheinlich hat es deswegen bei euch nicht geklappt, aber nun sollte es klappen.

    Gruß Steven

  33. Rene (2) sagt:

    Hallo Steven, hab vielen lieben dank, jetzt funktionier alles so, wie es soll =) Tausend dank!!!

  34. Funktioniert das auch mit dem Raspberry Pi 3 unter Raspbian/Jessie

  35. Steven Seifried sagt:

    Ja, funktioniert

  36. Tobias sagt:

    Auto-Erneuerrung der Letsencrypt Zertifikate:
    Hi, ich hatte es schon mal irgendwo gesehen, wie kann ich die Letsencrypt Zertifikate denn automatisch aktualisieren lassen ?
    Danke für eine Antwort. (Meines läuft am 12.10. ab :-o)

  37. Steven Seifried sagt:

    Hallo Tobias,

    man könnte z.B jeden Sonntag ein Skript via cron ausführen, welches das Zertifikat erneuert. Ich werde mich mal dran setzen und dann den Beitrag dementsprechend erweitern.

    Gruß Steven

  38. Tobias sagt:

    Hi Steven, das wäre Klasse,
    irgendwie hat die Antwort eintrag mit meiner E-mail Adresse nicht funktioniert, deshalb antworte ich erst jetzt.
    Habe nun das Problem, dass ich morgen mein Zertifikat abläuft und ich bei der manuelle Erneuerung folgende Fehler meldung bekomme.

    letsencrypt: error: ambiguous option: –renew could match –renew-by-default, –renew-hook

    Jemand eine Idee ?

    Danke Tobias

  39. Tobias sagt:

    Ok, scheinbar habe ich es gefunden:
    Meine letsencrypt installtion liegt scheinbar anderswo. mit
    /etc/letsencrypt/letsencrypt-auto –renew-by-default certonly -d xyz.org
    Habe ich das Zertifikat erneuert bekommen.
    Allerdgins keine Ahnung was ich da wirklich gemacht habe.
    T.

  40. Jan Wallenstein sagt:

    Hallo, nach upgrade vom OC 9 nach NC 10.0.1 kann ich mich anmelden und Dateien hochladen.
    Aber bei der Befehlseingabe
    sudo -u www-data php occ -V
    bekomme ich jede Menge Fehlermeldungen „Can not adopt OID … SNMP …SENSORS-MIB…..“.
    Was ist hier falsch?
    Grüße Jan

  41. Jörn sagt:

    Klasse Anleitung! Vielen Dank dafür!
    Was mich noch interessieren würde, wäre wie man ein geschicktes Backup seines NextCloud Pi’s erstellen könnte. Auf eine externe Festplatte via cron vielleicht? Würde mich freuen, wenn du dies vielleicht in einem deiner nächsten Beiträge einmal aufgreifen könntest 🙂

    Grüße

    Jörn

  42. Steven Seifried sagt:

    Hallo Jörn,

    danke für dein Lob und deinen Vorschlag. Ich werde das mal aufgreifen.

    Gruß Steven

  43. Peter sagt:

    Feine Sache und Anleitung! Habe jetzt NextCloud und Dovecot/Roundcube auf dem raspi3 aufgesetzt, allerdings mit openssl statt letsencrypt und mit noip als DynDNS. Läuft problemlos!

    Vielen Dank und Gruß
    Peter

  44. TimeMen sagt:

    Hey,
    tolles Tutorial, allerdings kann ich es nicht nachmachen.

    Ich besitze meinen RPi 3 nun seit ca. 3 Monaten, und ich habe ihn trotz Linux Kenntnissen (Nutze seit 2 Jahren Linux) nicht zum Laufen gebracht.
    Weder über Lan noch über Wlan kann ich ihn mit unserem Internet verbinden, um so einen Kontakt per SSH herzustellen.

    Es hat ein oder zweimal geklappt, doch sobald ich einen reboot durchgeführt habe, habe ich die Verbindung für immer verloren.
    Dann musste ich immer das Image neu auf meine 32 GB SD brennen.

    Hast du eine Ahnung woran das liegt?
    Das ist nämlich echt nervig. Und ich brenne darauf erstens die Cloud zu installieren, und zweitens Projekte mit Arduino und RPi zu machen.
    Allerdings kann ich ja grade nix machen mit dem RPi da ich keinen Zugriff habe…

    LG
    TimeMen

  45. Steven Seifried sagt:

    Hallo TimeMen,

    ich vermute mal das die SD-Karte ne Macke hat. Bei mir ist das selbe Problem vor einiger Zeit mal aufgetreten und es lag an der SD-Karte,.

    Gruß Steven

  46. Kai sagt:

    Hi Steven,
    klasse Tutorial. Ich bin schon ziemlich weit gekommen. Im Teil „Nextcloud einrichten“ verweist du auf die Installation von MySQL. Ich möchte gerne MariaDB (ist ja quasi MySQL) verwenden. Schreibst du dazu noch ein Tutorial oder kannst auf irgendein HowTo verweisen?
    VG Kai

  47. TimeMen sagt:

    Hallo Steven,
    Meinst du die hat von Anfang an ne Macke?
    Kann man den auch von USB booten?
    Denn meine einzige noch funktionierende SD hat nur 1 GB. Damit komme ich nicht weit.

  48. Czmartin sagt:

    Hi Steven,
    danke für Deine ausführliche Anleitung.
    Ich komme an einem Punkt leider nicht weiter. Nachdem ich über SSH folgendes eingebe:
    sudo apt-get install apache2 php5 php5-gd php5-sqlite php5-curl php5-common php5-intl php-pear
    php-apc php-xml-parser libapache2-mod-php5 curl libcurl3 libcurl3-dev sqlite -y
    cd /var/www/

    erscheint die Meldung
    After this operation, 33.6 MB of additional disk space will be used.
    Do you want to continue? [Y/n]
    wenn ich Y eingebe erscheint:
    Abort.
    pi@raspberrypi:~ $

  49. Steven Seifried sagt:

    @TimeMan: Welches Programm hast du zum draufschreiben benutzt? dd oder den Win32 Disk Imager?
    @Czmartin: Einfach den Befehl nochmal ausführen. Das mit dem Abort/Abbruch macht er bei mir auch mal hin und wieder gerne

  50. Sebastian sagt:

    ahoi,
    danke schonmal für das tutorial, es ist nicht einfach, ein ausführliches und vor allem aktuelles zu finden…
    hier mein problem, folgender befehl:
    sudo /etc/letsencrypt/letsencrypt-auto certonly –agree-tos –renew-by-default -a webroot –webroot-path /var/www/nextcloud/ -d anneseb.spdns.eu

    bringt folgende fehlermeldung:

    Failed authorization procedure. anneseb.spdns.eu (http-01): urn:acme:error:connection :: The server could not connect to the client to verify the domain :: Could not connect to anneseb.spdns.eu

    wenn ich in chrome anneseb.spdns.eu eingebe, kommt nur eine „Webseite nicht erreichbar“.

    Wenn ich anneseb.spdns.eu:443 eingebe, komme ich auf die apache default debian seite …
    Wenn ich die ip des rpi eingebe, komme ich auf die Startseite der Nextcloud.

    Wo liegt der Hase im Pfeffer?

    Danke für die Hilfe!

  51. Steven Seifried sagt:

    Hast du den Ports 80 in deinem Router freigegeben? Wenn Port 80 nicht im Router freigegeben ist, kann Let’s Encrypt die Domain nicht verifizieren.

  52. Sebastian sagt:

    Danke!!
    Ja, das hatte ich mir kurz vorm schlafen dann auch überlegt, ist das eine generelle geschichte, die ich als anfänger einfach nicht weiß?
    Wenn nicht, wäre das vielleicht sinnvoll zu erwähnen, man sieht zwar in der fritz-box-übersicht, dass du den port 80 auch freigegeben hast, aber schreibst nicht, dass let’s encrypt es braucht.
    Daher dachte zumindest ich, dass es evtl für irgendwas anderes gut ist… Mach ich heut abend dann mal.

  53. Danny sagt:

    Danke für die Anleitung, aber an dieser Stelle komme ich nicht weiter. „Anschließend müsst ihr die Datei /etc/spdnsu.conf anpassen.“ Wie mache ich das? Wenn ich „/etc/spdnsu.conf“ eingebe bekomme ich „-bash: /etc/spdnsu.conf: Keine Berechtigung“ als Antwort.

  54. Steven Seifried sagt:

    Die Datei bearbeitest du mit: sudo nano /etc/spdnsu.conf

  55. Paul Friedhelm Günther sagt:

    Moin,
    danke für die Anleitung. Suche nach einer einfachen schon länger. Werde es die Tage mal testen. Was ich mich immer frage sind folgenden Punkte:
    1) schalten sich die HDDs automatisch ab, wenn sie nicht gebraucht werden (vonwegen Lebensdauer)?
    2) wie kann ich die NC spiegeln (z.B. sync mit einet zweiten NC an einem anderen Standort)? Für den Fall, dass mir der PI/HDD durchbrennt o.Ä.

    Danke und Grüße

  56. Hallo,

    1.) soweit ich weiß ja
    2.) Ich bin aktuell am schauen wie man das am besten lösen kann

    Gruß Steven

  57. Mattheus sagt:

    Hallo,
    Einwandfreie Anleitung.
    Noch ein kleiner Hinweis, es sollte erwähnt werden, dass der Apache Server down sein sollte, bevor das Zertifikant erstellt wird.
    Gruß, Mattheus

  58. Daniel sagt:

    Habe die Nextcloud mit Wifi externer Festplatte und Clamav und zum laufen gebracht und nach Sqlite installation auch auf MySql umgestellt ohne die einstellungen und User zu verlieren. Die Anleitung von dir ist super und nachvollziehbar mit etwas vorkenntnis mit dem Terminal. Aber trotz allem habe ich es noch nicht geschafft die Seite auf https zu stellen. Bei dem erstellen der Zertifikate bekomme ich die Fehlermeldung schon zu viele abgerufen zu haben. Habe trotz allem die Cloud weiter erstellt. Nach ca einer Woche lebte die Cloud dann von selbst auf. Aber nur mit HTTP. FritzBox ist gestellt wie beschrieben. Aber die Cloud läuft nur mit http://meine.spdns.org . Wie bekomme ich die nun auf https:// gestellt??

  59. Steven Seifried sagt:

    Hallo Daniel,

    danke für dein Lob.

    Da man, bei jedem Dynamic DNS-Anbieter, eine Subdomain beim jeweiligen Anbieter anlegt und Let’s Encrypt prüft wie viele Zertifikate für die jeweilige Domain ((leider) nicht Subdomain) bereits ausgestellt wurden. Das von Let’s Encrypt gesetzte Limit für Zertifikate pro Domain, in diesem Fall spdyn, scheint derzeit überschritten worden zu sein.

    Um die eigene Nextcloud per HTTPS zu erreichen muss man derzeit einen anderen Dynamic DNS-Anbieter verwenden.Es haben schon sehr sehr viele Leute meine Anleitung umgesetzt und benutzen als Dynamic DNS-Anbieter spdyn. Ich werde eine Liste mit alternativen Dynamic-DNSin den Beitrag „packen“.

    Gruß Steven

  60. Daniel sagt:

    Schade das spdns kein https unterstützt. Ich suche einen Dyn-dns-anbieter welcher kostenfrei ist und dann nicht alle 30 Tage um eine Anmeldung bittet wie bei no-ip bei dem die Adresse bei Nichtanmeldung auf ihrer eigenen Seite den Hostname verfallen lässt. Bei spdyn ist anmelden und fertig ohne Verfallsandrohung und die Cloud darf leben ohne weiteres zutun. Habe übrigens auch schon versucht den Apache zum https zu zwingen mir Redirect… in der conf. .Hat mir auch nur eine Fehlermeldung dann im Firefox gebracht. Danach die conf wieder zurück gestellt muss auch der Verlauf auf Firefox zurückgesetzt werden.
    Gruß Daniel

  61. Steven Seifried sagt:

    Es liegt nicht an spdns sondern an Let’s Encrypt. spdns unterstützt HTTPS.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.