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:

wget http://director.downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2016-05-13/2016-05-10-raspbian-jessie-lite.zip

unzip 2016-05-10-raspbian-jessie-lite.zip

# rm 2016-05-10-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:

dd if=2016-05-10-raspbian-jessie-lite.img of=/dev/sdX

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

Die ganze SD-Karte nutzen:

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.

ssh pi@raspberrypi

Das Passwort ist raspberry

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 -y

cd /var/www/

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

sudo unzip nextcloud-9.0.50.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.

spdns Dynamic DNS Update-Client installieren:

Nun richten wir den spdns Update Client ein.

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 die Datei /etc/spdnsu.conf anpassen. Dort müsst ihr anpassen:

  • Host
  • Username
  • Passwort
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 eine Portfreigabe einrichten. 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 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.

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 https://host.spdns.de/nextcloud in eurem Browser auf. (passt euren Host vor spdns.de an).

Wenn mehrere Benutzer oder größere Dateien auf dem Pi gehostet werden sollen, solltet ihr unter Speicher & Datenbank MySQL auswählen.

Sicherheitswarnung entfernen:

Solltet ihr im Admin-Bereich folgende Fehlermeldung erhalten, …

oc-sicherheitswarung

… könnt ihr diese wie folgt entfernen:

sudo nano /var/www/nextcloud/.htaccess

Dort am Ende der Datei einfügen:

<IfModule mod_headers.c>
 Header always add Strict-Transport-Security "max-age=15768000"
</IfModule>

Memory Cache nutzen

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

sudo apt-get install php-apc

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

Dort vor ); einfügen:

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

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

Anzeige


wallpaper-1019588
I’m Living with an Otaku NEET Kunoichi!? – Trailer stellt Theme-Songs vor
wallpaper-1019588
Hell Teacher: Jigoku Sensei Nube – Neue Infos zum Anime enthüllt
wallpaper-1019588
[Session-Life] Weekly Watched 2024 November
wallpaper-1019588
DIY-Haustierspielzeug: Kreative Ideen, um Deinem Tier Freude und Abwechslung zu bieten