Hier geht alles um Technik, Programmierung & Co.

Banana Pi: Seafile mit Autostart und HTTPS

2 Kommentare

Die Zeiten der Datenspionage im digitalen Zeitalter wächst. Mit ihm wächst jedoch auch die Angst, seine Daten einer „Cloud“ anzuvertrauen. Ein weiteres Problem von Cloudiensten ist, dass der Upload von Dateien meist eine sehr lange Zeit einnimmt, da die Uploadgeschwindigkeit im eigenen Heim meist sehr stark limitiert ist.

Abhilfe schafft hier nur eigen Selbst-gehosteter Server in den eigenen vier Wänden. Auf diesen kann man, je nach Bandbreite und verbautem Speicher, mit bis zu 100 MB/s zugreifen. Die Owncloud Alternative Seafile eignet sich hierzu besonders gut. Seafile läuft deutlich performanter und wird von einer OpenSource Community entwickelt. Außerdem gibt es einen kostenlose App mit dem „Kamera Upload Dienst“. Einmal aktiviert, lädt dieser automatisch die neu aufgenommenen Bilder und Videos per W-LAN oder Mobilfunk auf den eigenen Server. Somit fungiert er gleichzeitg als Backup, falls mal wieder die Speicherkarte den Geist aufgegeben hat oder man versehentlich ein Bild gelöscht hat. Doch nun zu den eigentlichen Schritten. Alternativ könnt ihr auch mein Video auf Youtube https://youtu.be/4n1d6osMP5c ansehen.

Auf dieser Webseite findest du eine Schritt-für-Schritt Anleitung. Sie beinhaltet die Installation von Seafile auf dem Banana Pi (oder andere Einplatinencomputer) mit Autostart und HTTPS.

Information: Diese Beispiele beziehen sich auf Version 5.1.1 von Seafile!

Wichtig: Dem Banana Pi sollte im Router eine feste IP zugewiesen werden.

 

Schritt 1 (optional):

Wer den Server auch von unterwegs erreichen möchte (außerhalb des W-LAN) benötigt eine DynDNS.

Diese kann man sich unter DNSHome.de anlegen. Wer dazu Hilfe braucht, kann dazu gern in mein oben verlinktes Video reinsehen.


Schritt 2:

Jetzt beginnen wir, die nötigen Pakete zu installieren

apt-get install python2.7 python-setuptools python-simplejson python-imaging python-urllib3 python-flup python-pip python-ldap python-requests sqlite3 sudo nginx


Schritt 3:

Einen neuen Benutzer namens „Seafile“ anlegen, alle Fragen über vollständigen Namen, etc können ignoriert werden

adduser seafile --disabled-login

und wir wechseln direkt zu diesem Benutzer

su seafile


Schritt 4:

Link des Archievs von https://github.com/haiwen/seafile-rpi/releases kopieren und mittels

wget https://github.com/haiwen/seafile-rpi/releases/download/v5.1.1/seafile-server_stable_5.1.1_pi.tar.gz

herunterladen. Das ganze mit

tar xfv seafile-server_stable_5.1.1_pi.tar.gz

entpacken. Anschließend mittels

cd seafile-server-5.1.1

in den Ordner wechseln.


Schritt 5:

Als nächsten Schritt führen wir das Setup aus:

./setup-seafile.sh

  • „server-name“ gebt ihr einen kurzen Namen ein, wie „Homeserver“ o.Ä.
  • „server Domain/IP“ euere IP im Netzwerk oder eure DynDNS
  • Den Rest mit Enter bestätigen

Nun starten wir Seafile

./seafile.sh start

und Seahub

./seahub.sh start 8000

Es folgt die Konfiguration für einen Admin-Account.


Schritt 6:

Nun beginnen wir mit der Einrichtung von HTTPS/SSL, also einer gesicherten Verbindung

nano /home/seafile/conf/ccnet.conf

Hier ergänzen wir die Zeile und ersetzten Domain durch eure IP/DynDNS

SERVICE_URL = https://DOMAIN:8001

und speichern mit strg+x; j und enter.


Schritt 7:

Es folgt die nächste Datei:

nano /home/seafile/conf/seahub_settings.py

und ändern bzw. ergänzen den Eintrag

FILE_SERVER_ROOT = 'https://DOMAIN:8001/seafhttp'

und speichern wieder.


Schritt 8:

Wir starten Seahub neu mittels:

/home/seafile/seafile-server-latest/seahub.sh stop

und

/home/seafile/seafile-server-latest/seahub.sh start-fastcgi

und wechseln wieder zurück zu dem Benutzer „root“ mittels:

exit


Schritt 9:

Als nächstes erstellen wir einen Ordner und ein SSL-Zertifikat mir einer Gültigkeit von 10 Jahren:

mkdir /etc/nginx/ssl

cd /etc/nginx/ssl

openssl genrsa -out seahub.key 4096

Nun erstellen wir die Keys (beim Ausführen des ersten Befehls verlangt Openssl einige Informationen, wie z.B. „Country Name“, …)

openssl req -new -sha512 -key seahub.key -out seahub.csr

openssl x509 -req -sha512 -days 3650 -in seahub.csr -signkey seahub.key -out seahub.crt


Schritt 10:

Nginx mit den neuen Informationen füttern; aber Vorsicht: Nginx ist sehr hungrig!

nano /etc/nginx/sites-available/seahub

und fügt diesen Inhalt ein. Wichtig: „DOMAIN“ ersetzten!

Noch eine Verknüpfung erstellen…

ln -s /etc/nginx/sites-available/seahub /etc/nginx/sites-enabled/seahub

und Nginx neustarten

/etc/init.d/nginx restart


Vorletzter Schritt:

Autostart:

nano /etc/init.d/seafile-server

Diesen Inhalt einfügen. Ausführbar machen:

chmod +x /etc/init.d/seafile-server

und abschließend noch eintragen:

update-rc.d seafile-server defaults


Letzter Schritt:

GENIEßEN und einen Kommentar schreiben, falls mal was nicht funktioniert, ihr Kritik üben wollt, etc. Alternativ auch an folgende E-Mail Adresse:

Ich hoffe, ich konnte euch helfen und natürlich wünsche ich euch nun Viel Spaß mit Seafile 😀 

Schreibe einen Kommentar

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

2 Gedanken zu “Banana Pi: Seafile mit Autostart und HTTPS”