Vorbemerkung

Dieses E-Book zum Thema "Die eigene Cloud - Alternativen zu Dropbox & Co." finden Sie in vergleichbarer Form als HTML-Seiten auf dem Lehrerfortbildungsserver Baden-Württemberg unter der Adresse

http://lehrerfortbildung-bw.de/werkstatt/cloud/.

Die Hyperlinks im E-Book springen entweder zu Zielen im E-Book selbst oder verweisen auf externe Quellen. Links auf externe Quellen sind mit dem Zusatz (extern) gekennzeichnet.

Ulrich Bauer November 2015

Cloud Computing selbst gemacht?

Ganz allgemein beschreibt Cloud Computing (extern) die Tatsache, dass sich - bedingt durch die Zunahme breitbandiger Internetverbindungen - immer mehr Programme und Daten in der (metaphorischen) Wolke im Internet befinden, statt auf dem lokalen Rechner oder dem firmeneigenen Rechenzentrum. Der Zugriff auf die entfernten Systeme erfolgt mit Hilfe eines Browsers oder mit speziellen Apps über das Internet.

Mit welchem Gerät die Verbindung mit der Wolke hergestellt wird, spielt keine große Rolle. In Frage kommen der klassische PC genau so wie  Smartphones, Tablets oder E-Book Reader. Welches Betriebssystem auf dem jeweiligen Gerät läuft, ist unwichtig. Wichtig ist lediglich, dass das Gerät eine Internetverbindung herstellen kann und über einen Webbrowser bzw. die entsprechende App verfügt. Anwendungen und Programme werden von der lokalen Hardware weit gehend entkoppelt.

Eine neue Gerätekategorie - der Cloud-Computer - verzichtet auf ein umfangreiches Betriebssystem sowie auf der Festplatte installierte lokale Programme und arbeitet mit aus dem Internet geladenen Programmen, die im Webbrowser laufen. Die bekanntesten Cloud-Computer sind Google's  Chromebooks mit dem Chrome-Betriebssystem.

Plus ...

Für den Benutzer hat Cloud Computing auf den ersten Blick nur Vorteile: Er kann den aktuellen Roman abends im Bett auf seinem E-Book-Reader lesen und am nächsten Morgen in der U-Bahn auf seinem Smartphone genau da weiter lesen, wo er am Abend zuvor aufgehört hat. Er kann eine Datei auf dem PC in der Schule bearbeiten und speichern - und zu Hause genau da weiterarbeiten, wo er in der Schule aufgehört hat. Welches Gerät oder welches Betriebssystem er einsetzt, um auf seine Daten in der Cloud zuzugreifen, spielt praktisch keine Rolle.

... und Minus

Allerdings zeigen sich hier auch die Probleme des Arbeitens in und mit der Wolke: Der Benutzer gerät in eine Abhängigkeit zum Anbieter der Cloud, denn die ganzen Komfortfunktionen funktionieren nur, solange dessen Server nicht ausfallen.

Darüber hinaus hat der Cloud-Dienstleister quasi die Herrschaft über die Dateien: Versehentlich lokal gelöschte Dateien können nicht nur leicht aus der Wolke nachgeladen werden, der Dienstleister hat auch die Möglichkeit, gegen den Willen des Kunden und ohne Ankündigung Dateien auf dessen Gerät zu löschen. Dies hat Amazon zumindest in einem Fall (extern) auch schon getan. Darüber hinaus erfährt der Dienstleister auch viel über den Nutzer.

Während die physikalische Sicherheit der Daten in der Wolke weitestgehend gegeben ist, bleibt der Schutz der Daten vor fremdem Zugriff ein dringendes Problem. Wer hier auf Nummer sicher gehen will, muss alle seine Daten in der Cloud verschlüsseln. 

Selber machen

Oder eine Cloud unter eigener Herrschaft einrichten. Das ist nicht besonders schwierig, bedingt aber einen gewissen Aufwand, da es mit der einmaligen Einrichtung nicht getan ist, und bürdet dem "Betreiber" eine gewisse Verantwortung auf. Er ist für die Sicherheit seiner Daten - sowohl physikalisch wie auch datenschutzrechtlich - selber verantwortlich und darf sich keine Schlampereien erlauben. Die eigene Wolke muss gepflegt und regelmäßig mit Updates versorgt werden. Falls Sicherheitslücken auftauchen, muss man zeitnah reagieren. Gelegentlich muss man sich auf die Kommandozeile begeben, egal ob man ein Fan der Komandozeile ist oder - wie ich - keiner.

Kurzum - wer das Projekt "Eigene Cloud" angehen will, sollte sich über diese Punkte im klaren sein. Und auch darüber, dass die private Cloud wohl nie ganz den Komfort von Lösungen wie Dropbox und Co. erreicht. 

Zwei Varianten zur Einrichtung der eigenen Cloud stehen in diesem E-Book im Mittelpunkt: Die Einrichtung von ownCloud auf dem eigenen Webspace oder alternativ auf dem preiswerten Mini-Computer Raspberry Pi. Neben der Installation von ownCloud wird auch die Einrichtung von Seafile beschrieben, das einen etwas anderen Ansatz als ownCloud verfolgt und weniger bekannt ist.

Sowohl ownCloudals auch Seafile eignen sich dazu, eine vollwertige private Cloud einzurichten.

1. Die eigene Cloud: Voraussetzungen

1.1. Software für die eigene Cloud

In erster Linie bietet sich ownCloud an. Das Open Source-Projekt  (extern) ist inzwischen recht ausgereift, sehr leistungsfähig und bietet zahlreiche Funktionen, die über die reine Datensynchronisation hinausgehen. ownCloud eignet sich sowohl als eine private Wolke für den Hausgebrauch als auch für große Arbeitsgruppen und den Firmeneinsatz.

Eine weniger bekannte Alternative zu ownCloud ist das in der Community Edition ebenfalls kostenlose Seafile  (extern). Es konzentriert sich auf die Synchronisation von Daten und auf die gemeinsame Arbeit mit Daten.

Sowohl ownCloud als auch Seafile bieten die Möglichkeit, alle Daten verschlüsselt zu speichern.

Es gibt Client-Programme für den Desktop und die gängigen Mobilsysteme (Android und iOS).

1.2 Hardware für die eigene Cloud

Grundsätzlich kann die eigene Cloud "im Internet" oder auf lokaler Hardware installiert werden. "Im Internet" kann Webspace bei einem Webhoster oder ein Virtual- oder Rootserver sein. Als lokale Hardware kommen NAS-Geräte oder im Prinzip beliebige Computer (auch virtuelle Maschinen) in Frage. Die Möglichkeiten werden im Folgenden kurz beschrieben.

Ausführlich vorgestellt werden lediglich zwei Varianten: Die private Cloud auf dem eigenen Webspace und auf dem Mini-Computer Raspberry Pi.

1.2.1. Webspace

Technisch am einfachsten ist die Einrichtung der eigenen Cloud auf dem eigenen Webspace (ok, das ist streng genommen keine Hardware ...)

Wer bei einem der gängigen Webhoster eine Homepage betreibt, hat häufig auch die Möglichkeit, dort Clouddienste einzurichten. Bei manchen Webspace-Anbietern ist es sogar möglich, ein "fertiges" Cloud-Paket (z.B. ownCloud) mit einem Klick zu installieren. Dies ist nicht nur recht komfortabel, sondern hat auch den Vorteil, dass sich meist der Anbieter um die notwendigen (Sicherheits)Updates kümmert.

Eine Liste von Providern, die ownCloud anbieten, findet man bei https://owncloud.org/providers/ (extern).

Bietet der Webspace-Provider kein "1-Click-Paket" an, so ist es meist möglich, das Software-Paket manuell zu installieren.

ownCloud auf dem eigenen Webspace installieren

1.2.2. Raspberry Pi

Der Mini-Computer Raspberry Pi oder seine engen "Verwandten" Cubietruck und Cubieboard eignen sich sehr gut als Hardware für die eigene Cloud. Bei allen handelt es sich um sehr kleine, sehr sparsame und recht preiswerte Rechner, die doch leistungsfähig genug für eine kleine persönliche Cloud sind. Ehrlicherweise sollte man darauf hinweisen, dass der Raspberry Pi in seiner ersten Version gerade mal so ausreicht; beim Raspberry PI 2 sieht das schon viel besser aus. Er ist kein Leistungswunder, kann jedoch eine Cloud für wenige Nutzer gut versorgen. Allerdings sollte man nicht auf die Idee kommen, eine Raspberry Pi zum Ablageplatz eines umfangreichen Multimedia-Archivs zu machen.

Informationen zum Raspberry Pi

1.2.3. NAS

Grundsätzlich ist ein NAS-Gerät im internen Netz ebenfalls geeignet, um ownCloud oder Seafile darauf zu installieren. Auf praktisch allen derartigen Geräten läuft ein (abgespecktes) Linux, das sich durchaus als Grundlage für die eigene Cloud eignet. Allerdings sieht es mit der Aktualisierung des Betriebssystems und der Versorgung mit kritischen Sicherheitsupdates oft nicht so gut aus.

1.2.4. Rootserver oder Server

Ein eigener Server bei einem Provider oder ein dezidierter Linux-Rechner im Haus (und damit im internen Netz) bieten leistungsmäßig deutlich mehr als ein Raspberry Pi oder ein NAS. Allerdings sind Aufwand und Stromkosten deutlich höher. Man mus abwägen, ob man dieses Mehr tatsächlich braucht. Für eine einfache "Arbeitsgruppen-Cloud" dürfte dies eher nicht der Fall sein. Braucht man jedoch eine sehr leistungsfähige Cloud für viele Daten und/oder Benutzer, führt wohl kein Weg am eigenen "richtigen" Server vorbei.

1.3. Raspberry Pi

raspberry.org (extern)

Der Raspberry Pi ist ein Multitalent. Er gilt als einer der kleinsten und sparsamsten Rechner der Welt. Er ist zwar nicht besonders leistungsfähig, dafür aber äußerst vielseitig. Und preiswert ist er noch dazu: Für den kleinen Rechner, ein Gehäuse, ein Netzteil, einen WLAN-Adapter, ein HDMI-Kabel und eine SD-Karte mit mehreren Betriebssystemen muss man weniger als € 60 hinlegen. Den "nackten" Rechner gibt es ab € 30. Er wurde (Stand Mitte 2014) schon über zwei Millionen Mal verkauft.

Es gibt ihn in zwei Versionen - als Raspberry 1 und Raspberry 2. Da der Preisunterschied nur gering und der Raspberry 2 deutlich leistungsfähiger ist als sein Vorgänger, ist die Entscheidung einfach: Raspberry Pi 2!

Rasperry Pi und Zubehör

Der Raspberry Pi hat in etwa die Fläche einer Kreditkarte und ist mit Gehäuse nur einen Finger dick. Er bietet zwei oder vier USB-Anschlüsse sowie einen Netzwerk-, einen Audio-, einen Video- und einen HDMI-Anschluss; außerdem hat er eine Micro-USB-Buchse für ein externes Netzteil und einen SD-Karten-Einschub. Der Pi bootet von der SD-Karte und kann per HDMI (und evtl. einem Adapter) mit jedem Monitor oder Fernseher verbunden werden. Tastatur und Maus lassen sich per USB anschließen, werden aber häufig nur während der Installation des Betriebssystems genutzt.  

Danach laufen viele der Minirechner ohne Maus, Tastatur und Monitor durch und werden entweder über einen SSH-Zugang (extern) oder per Smartphone-App gesteuert.

1.3.1.  Was der Raspberry Pi kann

Der Raspi kann überraschend viel. Natürlich kann man ihn als ganz gewöhnlichen Rechner zum Surfen, Mailen, Kommunizieren und in Version 2 auch als Office-Maschine nutzen. Doch dafür ist der RPi nicht gemacht. Er kann interessantere und spannendere Dinge besser erledigen.

Inzwischen git es eine ganze Reihe von Seiten, die sich ganz dem Raspberry und seinen Möglichkeiten widmen. Zwei davon sind die Themenseiten von heise.de (extern) und Spiegel Online (extern). Dort finden sich zahlreiche Beispiele dafür, was man mit dem RPi alles machen kann. Sie reichen vom Multimedia-Server (extern) über die eigene Wolke (extern) bis zur Tarnkappe fürs anonyme Surfen (extern)

Weitere Beispiele finden Sie in diesem Artikel (extern).

Bild: Philipp Bohk

1.3.2.  Einrichtung

Der Raspberry Pi ist leicht einzurichten: Auspacken, die Platine ins Gehäuse einsetzen, die Peripherie-Geräte anschließen (Tastatur, Maus, Monitor/TV, WLAN-Adapter), die mitgelieferte SD-Karte einstecken und den RPi mit dem Stromnetz verbinden (einen Ein-/Aus-Schalter gibt es nicht).

Empfehlenswert ist es, sich beim Kauf des RPi gleich eine SD-Karte mit NOOBS (extern) mitzubestellen (oder die Software herunterzuladen). Die NOOBS-SD-Karte enthält Raspbian (eine Debian-Variante) und bietet den Download von alternativen Betriebssystemen wie OpenELEC (Mediencenter) u.a. an.

2.  ownCloud

ownCloud (extern) ist eine freie Alternative zu kommerziellen Cloud-Anbietern. Im Gegensatz zu kommerziellen Speicherdiensten kann ownCloud auf einem privaten Server ohne Zusatzkosten installiert werden und ermöglicht so den Benutzern die Kontrolle über ihre Daten. ownCloud ist Open Source und läuft auf Rechnern mit den Betriebssystemen Linux, Mac OS X, Windows u.a. ownCloud ist ein Speicherdienst mit vielen Zusatzfunktionen.

In der Version 8.2 (Stand November 2015) bietet ownCloud u.a. die folgenden Funktionen (extern):

Daten in der Wolke speichern, zwischen einer Vielzahl von Geräten (PC, Smartphone, Tablet usw.) synchronisieren und mit anderen teilen,

auf die Daten von jedem Browser aus und mit Hilfe von Desktop- und mobilen Clients für alle wichtigen Betriebssysteme zugreifen,

Kontakte und Kalender mit PCs und mobilen Geräten (iOS, Android) abgleichen,

externen Speicher (Dropbox u.a.) einbinden,

Daten verschlüsseln,

Fotogalerie,

Musik und Videos abspielen,

PDF u.a. Formate betrachten,

Dateien gemeinsam bearbeiten.

Exkurs: Raspbian auf dem Raspberry Pi installieren

Für den RPi gibt es eine ganze Reihe von Open-Source-Betriebssystemen. Am bekanntesten ist das an den Pi angepasste Raspbian (extern), eine Variante der Linux-Distribution Debian Wheezy (extern).

Rasbian erhält man am einfachsten mittels Noobs (extern), einer besonders einfach zu installierenden "New Out Of the Box Software", die neben Raspbian noch den Zugriff auf andere Betriebssystem-Varianten für den Pi ermöglicht, z.B. Openelec, Raspbmc u.a. Das Prinzip ist recht einfach: Noobs wird auf eine SD-Karte geschrieben und bietet beim Start eine Auswahl der Betriebssysteme an. Man wählt eines aus und installiert es auf der SD-Karte.

Später kann man nach dem Drücken der Shift-Taste beim Booten ein anderes Betriebssystem auswählen und installieren; das vorher gewählte System wird dabei überschrieben.

Laden Sie Noobs (extern) auf Ihren Desktop-Rechner herunter und entpacken Sie die Datei.

Formatieren Sie eine mindestens 4 GB (besser 8 GB) große SD-Karte mit dem Programm SD Formatter 4.0 (extern) für Windows oder Mac OS X. Unter Linux können sie "dd" verwenden, um das Image auf eine SD-Karte zu schreiben; hier gibt es eine Anleitung (extern).

Kopieren Sie danach den Inhalt der entpackten NOOBS-Datei auf die SD-Karte.

Schieben Sie die SD-Karte in den Raspberry Pi und schließen Sie Tastatur (Maus) und Monitor an.

Starten Sie den Pi, indem sie ihn mit dem Stromnetz verbinden.

Wählen Sie beim Start "Raspbian" als Betriebssystem aus. Raspbian wird nun auf dem Pi installiert. Das dauert etwa 20 Minuten.

Nach einem Neustart können Sie das System mit Hilfe von "raspi-config", das automatisch angezeigt wird, konfigurieren.

Die meisten Vorgaben können Sie einfach übernehmen. Setzen Sie ein neues Passwort für den User "pi", wählen Sie aus, dass das System mit einer grafischen Oberfläche starten soll, geben Sie unter "Advanced Options" an, dass Sie den SSH-Zugang wollen, und vergewissern Sie sich, dass die Spracheinstellungen stimmen. Der SSH-Zugang ist dann wichtig, wenn Sie den Pi später ohne Monitor, Tastatur und Maus betreiben wollen. 

Das System bootet in die grafische Oberfläche. Raspbian ist nun für die Installation von ownCloud, Seafile oder anderen Programmen vorbereitet.

Auf der Desktop-Oberfläche (zum Öffnen “startx” eingeben, falls die grafische Oberfläche nicht automatisch startet) gibt es ein Programm für die Einrichtung des WLAN-Zugangs. Dort kann der WLAN-Adapter ausgewählt (wlan0) und nach dem WLAN gescannt werden. Dann die Zugangsdaten eingeben – fertig. 

2.1. ownCloud auf dem Raspberry Pi installieren

ownCloud bekommen Sie auf verschiedenen Wegen auf den Pi: mit dem Web Installer, der Paketverwaltung von Raspbian/Debian und manuell. 

---------------------------------------------------

Soll der ownCloud-Server auch aus dem Internet erreichbar sein, sind einige zusätzliche Schritte nötig:

Umstellung der Datenübertragung von HTTP auf das sichere Protokoll HTTPS,

Einrichtung von Portweiterleitungen auf dem Router, damit der Seafile-Server aus dem Internet erreichbar ist,

Einrichtung eines DynDNS-Dienstes, damit der Seafile-Server immer unter der gleichen Adresse aus dem Internet erreichbar ist.

Diese Schritte werden in zwei Artikeln im Abschnitt Sicherer Zugriff über das Internet beschrieben.

---------------------------------------------------

Ich empfehle die Paketverwaltung. Dadaurch ist sichergestellt, dass ownCloud jederzeit und problemlos über die Paketverwaltung aktualisiert werden kann. Angeboten werden die aktuellen ownCloud-Pakte über das Owncloud-Repository im Suse Build Service.

Die ownCloud-eigene Update-Funktion kann ich nicht empfehlen. Es ist mir damit noch nie gelungen, ownCloud völlig ohne Haken und Ösen zu aktualisieren ... 

1. Ein Terminal öffnen und mit "sudo -i" root-Rechte anfordern.
2. Den Signaturschlüssel der Owncloud-Entwickler speichern.

wget -nv  https://download.owncloud.org/download/repositories/
    stable/Debian_7.0/Release.key -O Release.key

apt-key add - < Release.key

3.  Die Datei /etc/apt/sources.list.d/owncloud.list mit folgendem Inhalt erstellen

deb http://download.owncloud.org/download/repositories/stable/Debian_8.0/ /

4.  Paketverwaltung aktualisieren und ownCloud installieren

apt-get update
apt-get install owncloud

Jetzt wird ownCloud installiert und danach im Browser konfiguriert.

Um die IP-Adresse des Rechners im lokalen Netz herauszufinden, geben Sie "ifconfig" im Terminal ein.

Folgen Sie den Anleitungen und konfigurieren Sie ownCloud im Browser. Wesentlich sind zwei Schritte: Geben Sie dem Administrator einen Benutzernamen, ein sicheres Passwort und richten Sie eventuell zusätzliche Benutzer ein. Den Administrator sollten Sie nicht admin oder so ähnlich nennen; wählen Sie einen beliebigen anderen Namen. 

Vergewissern Sie sich, dass als Datenbank "SQLite" ausgewählt ist. Für eine ownCloud-Installation mit sehr wenigen Benutzern ist dies die richte Wahl.

MySQL

Falls Sie "MySQL" für eine ownCloud-Installation mit vielen Benutzern und Daten auswählen, müssen Sie die Datenbank zuerst im Terminal mit 

sudo apt-get install mysql-server

installieren und dem mysql-Benutzer "root" ein Passwort geben. Anschließend tragen Sie diesen Benutzer und sein Passwort in den Einrichtungsdialog von ownCloud unter "Datenbank-Benutzer und "Datenbank-Passwort" ein. "Datenbank-Name" ist beliebig; wählen Sie eine Bezeichnung nach dem Muster "oc_xxx". 

Apache

Damit die ownCloud-Daten vor unberechtigtem Zugriff geschützt sind, müssen Sie die Datei /etc/apache2/sites-enabled/000-default ergänzen:

<Directory /var/www/owncloud>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

Starten Sie apache neu mit 

service apache2 reload

Verlassen Sie die Konfigurationsseite und melden Sie sich bei ownCloud an - beispielsweise "http://192.168.178.6/owncloud" (nehmen Sie die IP, die Sie mittels "ifconfig" herausgefunden haben). 

Falls es Probleme bei der Installation gibt:  Hier finden Sie eine

Anleitung zur "manuellen" Installation von ownCloud (extern), die allerdings schon etwas älter ist.

2.2. ownCloud auf dem eigenen Webspace installieren

Damit ownCloud auf einem Webspace installierten werden kann, müssen eine Reihe von Voraussetzungen gegeben sein.

Bietet Ihr Webhoster eine 1-Click-Installation von ownCloud an ist alles klar. Ansonsten überprüft der Web Installer auf der ownCloud-Download-Seite, ob alle Voraussetzungen erfüllt sind.

Gehen sie zu http://owncloud.org/install/ (extern), klicken Sie auf Web Installer und folgen Sie der Anleitung.

Speichern Sie die Installationsdatei mit einem Rechts-Klick auf "here"

Laden Sie die heruntergeladene Datei "setup-owncloud.php" mit einem FTP-Programm auf Ihren Webspace hoch. Sie können z.B. Filezilla (extern) dafür verwenden oder den Dateimanager Ihres Webspace-Providers.

Rufen Sie im Browser http://meinwebspace.de/setup-owncloud.php auf (meinwebspace.de durch Ihre URL ersetzen). Sehen Sie die abgebildete Anzeige, ist alles in Ordnung und ownCloud kann installiert werden.

Folgen Sie den Anleitungen und konfigurieren Sie ownCloud im Browser. Wesentlich sind zwei Schritte: Geben Sie dem Administrator einen Benutzernamen, ein sicheres Passwort und richten Sie eventuell zusätzliche Benutzer ein. Den Administrator sollten Sie nicht admin oder so ähnlich nennen; wählen Sie einen beliebigen anderen Namen.

Verlassen Sie die Konfigurationsseite und melden Sie sich bei ownCloud an - http://meinwebspace.de/owncloud (meinwebspace.de durch Ihre URL ersetzen).

Falls der Web Installer nicht funktioniert: Hier finden Sie eine Anleitung zur "manuellen" Installation von ownCloud (extern), die allerdings schon ein bisschen älter ist. 

2.3. ownCloud einrichten

Haben Sie ownCloud erfolgreich installiert, können Sie sich unter einer lokalen IP-Adresse wie z.B. 192.168.1.6/owncloud oder unter der jeweiligen URL (z.B. http://meinwebspace.de/owncloud) als Benutzer mit Administrationsrechten mit dem gerade vergebenen Passwort anmelden.

Eine "leere" Einrichtung von ownCloud begrüßt sie so:

Oben links ist der Pfeil, um das Menü für Dateien, Musik, Kontakte, Kalender und Bilder zu öffnen, auf der rechten Seite das Klapp-Menü für persönliche Einstellungen, Benutzerverwaltung, Apps-Verwaltung, Administrator-Seite, Hilfefunktion und der Knopf zum Abmelden. Im oberen Menü können Ordner erstellt und Dateien/Ordner hochgeladen werden; außerdem gibt es noch ein Suchfeld.

Alle wichtigen Einstellungen werden im rechten Menü vorgenommen.

Persönlich
Hier können Benutzer ihren angezeigten Namen und ihr Passwort ändern und eine E-Mail-Adresse für die Passwort-Wiederherstellung eintragen. Außerdem wird angezeigt, unter welcher WebDav-Adresse ownCloud im Dateimanager zugänglich ist.

Benutzer
Hier kann der Administrator neue Benutzer hinzufügen.

Apps
ownCloud bietet zahlreiche Anwendungen, welche die Funktionalität von ownCloud erweiter. Ein Teil dieser Apps ist standardmäßig bereits aktiviert, andere können auf der Apps-Seite hinzugefügt und aktiviert werden.

Administrator
Auf der Admin-Seite werden eine Reihe von Einstellungen vorgenommen:

Was soll beim Export der ownCloud-Instanz gesichert werden,

Wer darf Daten mit wem teilen,

Soll die Anmeldung über https erfolgen.

Das linke Menü bietet Zugriff auf in ownCloud gespeicherte Daten, Musik und Bilder sowie den ownCloud-Kalender und die Kontaktliste.

Mit einem Klick auf Neu können Sie Ordner anlegen oder Textdateien erstellen/bearbeiten. Mit Hilfe des Pfeils können Sie Dateien direkt in der Weboberfläche zu ownCloud hochladen.

Externer Speicher
Der Administrator kann hier erlauben, dass externer Speicher in ownCloud eingebunden werden kann. Dies können andere ownCloud-Installationen, aber auch Speicherorte wie Dropbox, Google Drive oder lokaler Speicher sein. ownCloud bietet hier die Möglichkeit, alle Speicherorte "unter einem Hut" zusammenzuführen.

HTTPS 
Im Administrator-Menü gibt es ganz unten den Punkt "Sicherheit - Erzwinge HTTPS".

Wenn Sie wollen, dass Ihr Passwort und Ihre Daten verschlüsselt übertragen werden, können Sie hier ein Häkchen setzen. Doch Vorsicht: Tun Sie dies nicht unbedacht und ohne Vorbereitungen - Sie schließen sich sonst selbst aus! Sie sollten zuvor überprüfen, ob Sie Ihre ownCloud-Installtion unter https:// erreichen und nutzen können.

Um das sichere Übertragungsprotokoll HTTPS auf dem Raspberry Pi einzurichten, folgen Sie dieser Anleitung.

Falls Sie ownCloud auf einem Webspace installieren, sollten Sie Ihren Webhoster kontaktieren und nachfragen, ob bzw. wie HTTPS möglich ist.

Serverseitige Verschlüsselung
Falls diese Option gewählt wird, werden alle Daten verschlüsselt auf dem ownCloud-Server und auf eingebundenen anderen Speicherorten verschlüsselt gespeichert. Die einzelnen Benutzer entschlüsseln die Daten mit ihrem Passwort. Die Schlüssel für die Verschlüsselung werden auf dem ownCloud-Server gespeichert und sind deshalb grundsätzlich an- und abgreifbar. Da die Verschlüsselung unumkehrbar ist, ist es wichtig, von allen Schlüsseln ein Bachupzu haben! 

Die ownCloud-Entwickler empfehlen diese Verschlüsselung nur für den Fall, dass externe Speicher in ownCloud eingebunden sind.

Es findet keine client-seitige Verschlüsselung statt, wo der Schlüssel nie das Gerät verlässt, auf dem er gespeichert ist.

Update 
Ebenfalls im Administrator-Menü befindet sich eine Schaltfläche, um ein ownCloud-Update durchzuführen.

Sie können versuchen, durch einen Klick auf die Schaltfläche ein Update durchzuführen. Meiner Erfahrung nach funktioniert dies nicht immer. Konkreter - bei mir hat es noch nie richtig funktioniert ...

Sollten Sie ownCloud per Paketverwaltung installiert haben, sollten Sie die Aktualisierung auch über die Paketverwaltung durchführen. Bei einer ownCloud auf einem Webspace können Sie jedoch versuchen, durch einen Klick auf die Schaltfläche ein Update durchzuführen.

Falls das nicht klappt - hier finden Sie eine Beschreibung des manuellen Updates (extern).

2.4. ownCloud-Clients

ownCloud bietet Client-Programme (extern) für den unkomplizierten Zugriff auf Daten für alle wichtigen PC- und Mobilbetriebssysteme. Die Desktop Sync-Clients für Linux, Mac und Windows sind kostenlos, die Clients für iOS (extern) und Android (extern) kosten 0,89 € bzw. 0,79 €.

Die Abbildung zeigt die Client-App für iPhone/iPad.

Um die Verbindung zwischen dem ownCloud-Client und dem ownCloud-Server herzustellen, gehen Sie zu "Einstellungen" --> "Konten"--> "Neues Benutzerkonto hinzufügen" und geben dort Serveradresse, Benutzernamen und Passwort ein.

3.5.1.Desktop Clients

Die Abbildung zeigt das Menu des Desktop-Clients für den Mac.

Es ermöglicht u.a. den direkten Zugriff auf den lokalen ownCloud-Ordner (das ist derjenige Ordner, der mit Owncloud standardmäßig synchronisiert wird), erlaubt das Hinzufügen zusätzlicher Ordner zur Synchronisation und bietet eine Reihe weiterer Einstellungsmöglichkeiten.

3.5.2. Mobile Clients

Die Abbildung zeigt den mobilen Client für iOS (iPhone/iPad).

Links wird ein ownCloud-Unterverzeichnis angezeigt, im rechten Fenster ist eine Textdatei zur Bearbeitung geöffnet. Die mobilen Clients bieten einen uneingeschränkten Zugriff auf alle Dateien in der ownCloud. Viele Dateiformate können direkt angezeigt, einige auch online bearbeitet werden. Klappt weder das Anzeigen noch das Bearbeiten direkt in Owncloud, können die Dateien heruntergeladen und mit einem anderen Programm angezeigt oder bearbeitet werden. Es ist auch möglich, Dateien mit den mobilen Clients zu ownCloud hochzuladen.

3.5.3. Webdav

Die Daten in ownCloud sind nicht nur über Desktop- und mobile Clients erreichbar, sondern auch über das Webdav-Protokoll. Geben Sie im Dateimanger Ihres Betriebssystems folgende Adresse ein: "webadresse/owncloud/remote.php/webdav". Dateien, die Sie per Webdav zum ownCloud-Server hochladen, werden nicht mit dem ownCloud-Verzeichnis auf dem PC oder Mobilgerät synchronisiert.

Daten, Kalender und Kontakte synchronisieren

Vom Ansatz her ist ownCloud ein Speicherdienst in der Wolke, ähnlich wie Dropbox oder Google Drive. Seine Hauptaufgabe besteht darin, Dateien in der Wolke zu speichern und sie ständig mit lokalen Verzeichnissen abzugleichen, und dies über Geräte- und Betriebssystemgrenzen hinweg. Wer seine Daten in einer über das Internet erreichbaren ownCloud speichert, hat - zumindest theoretisch - immer und überall Zugriff drauf.

Darüber hinaus bietet ownCloud noch einige weitere nützliche Funktionen: Man kann einen oder mehrere Kalender führen und auch seine Kontake und Aufgaben dort verwalten. Eine Fotogalerie und die Möglichkeit, MP3-Songs zu speichern und abzuspielen ergänzen das Angebot. Dateien können für andere zugänglich gemacht und mit ihnen geteilt werden.

Daten

In der Voreinstellung geht ownCloud davon aus, dass es im lokalen Dateisystem einen Ordner mit dem Namen "Owncloud" gibt und dass alles, was in diesem Ordner liegt, ins Verzeichnis "clientsync" auf die ownCloud hochgeladen und künftig synchronisiert wird. Wer will - und wer viel Platz auf seiner ownCloud-Installation hat - kann z.B. unter Windows auch einfach den ganzen "Eigene Dokumente"- Ordner nehmen und synchronisieren lassen.

Es ist auch möglich, das Wurzelverzeichnis von ownCloud als Speicherort auszuwählen; dann verhält sich ownCloud ähnlich wie Dropbox.

Öffnen Sie das Einstellungsmenü des ownCloud-Clients auf Ihrem PC und wählen Sie "Konfiguriere...". Löschen Sie den bestehenden Pfad zu /owncloud/clientsync/ und tragen Sie unter "Server-Adresse" eine neue Verbindung zu /owncloud/ ein. Jetzt ist das Wurzelverzeichnis von ownCloud der neue Speicherort.

Kalender, Kontakte und Aufgaben

Wer bei Null anfangen will, muss nichts weiter tun, als Termine, Kontaktdaten und Aufgaben in die Web-Oberfläche von ownCloud einzugeben. Die meisten Nutzer dürften jedoch daran interessiert sein, vorhandene Kalender, Kontake und Aufgaben nach ownCloud zu exportieren und mit anderen Geräten - insbesondere Smartphones und/oder Tablets - zu synchronisieren. Dies ist mit ownCloud durchaus machbar, erfodert jedoch etwas Arbeit.

Im folgenden wird davon ausgegangen, dass ein einzelner Benutzer seine Kalender und Kontakte bislang bei Google verwaltet und alles zu ownCloud rüberholen will.

Google-Export
Loggen Sie sich auf Ihrem Gmail-Konto ein, klicken Sie links oben auf Gmail --> Kontakte, danach in der Mitte auf Mehr --> Exportieren und wählen Sie "Meine Kontakte" aus. Exportieren Sie die Daten im vCard-Format. Als Ergebnis bekommen Sie eine Datei mit der Endung .vcf. Rufen Sie jetzt die Kontaktansicht in ownCloud auf, klicken Sie auf "Importieren" und wählen Sie links unten die VCF-Datei für den Import aus.

Um den Google-Kalender zu exportieren öffnen sie Googles Kalenderansicht und klicken oben rechts auf das Zahnrad-Symbol. Wählen Sie Einstellungen --> Kalender und dann (etwa in der Mitte der Seite) "Kalender exportieren". Es wird eine Zip-Datei erstellt. Entpacken Sie die Zip-Datei und laden Sie die resultierende Datei mit der Endung .ics zu ownCloud hoch. Klicken Sie die Datei im Browser an; ownCloud fragt nach, in welchen Kalender die Daten importiert werden sollen. Ein Klick auf "Importieren" übernimmt die Kalenderdaten.

Thunderbird

Auch die Synchronisation des Thunderbird-Adressbuches und der Daten in den Thunderbird-Erweiterungen Sunbird und Lightning ist möglich. Der Export der Thunderbird Kalender-Erweiterung Lightning in die ownCloud geschieht ohne fremde Hilfe: Rechtsklick auf Kalenderübersicht --> "Neuer Kalender" --> "Im Netzwerk". Hier ist dann CalDAV auszuwählen und die ULR zum ownCloud-Kalender einzutragen. Um die Kontakte abzugleichen, brauchen Sie die Erweiterung Sogo Connector (extern).

Termine und Kontakte mit iOS und Android synchronisieren

Unter iOS lässt sich die Synchronsiation von Terminen und Kontakten sehr leicht realisierien. Einfach in den Systemeinstellungen unter "Mail, Kontakte, Kalender" einen CalDAV und einen CardDAV-Account hinzufügen und die ownCloud-Daten eintragen.

Unter "Server" ist der Pfad zu ownCloud einzutragen: Beim Kalender "http://meinwebspace.de/remote.php/caldav/principals/Nutzername/"
und bei Kontakten
"http://meinwebspace.de/remote.php/carddav/principals/Nutzername/".

Bei Android gestaltet sich die Sache etwas schwieriger, da es von Haus aus nichts mit cardDAV und calDAV anfangen kann. Es gibt allerdings (kostenpflichtige) Apps, welche die Synchronsiation erledigen. Kontakte bekommt man mithilfe von CardDAV-Sync (extern) und Termine mithilfe von CalDAV-Sync (extern) aufs Smartphone oder Tablet.

3. Seafile

Cloud-Dienste wie Dropbox, One Drive, Google Drive oder T-Online Mediencenter (alle extern) sind sehr beliebt. Sie bieten ihren Nutzern in erster Linie Bequemlichkeit: Alle wichtigen Daten auf der Festplatte des PC oder auf Smartphone und Tablet werden automatisch mit dem Online-Speicher des Anbieters synchronisiert und stehen so überall und auf jedem Gerät jederzeit zur Verfügung. Kaum jemand möchte diese Annehmlichkeit heute noch missen. Allerdings hat diese Bequemlichkeit einen Preis. Die Nutzer müssen ihre privaten Daten auf Gedeih und Verderben einem der Anbieter überlassen.

Doch es gibt einen Ausweg aus diesem Dilema - die eigene Cloud, die persönliche Wolke unter der Kontrolle der Nutzer. ownCloud ist ein recht leistungsfähiges Beispiel für solch eine persönliche Wolke; sie bietet neben der Synchronisation der Daten auch die Verwaltung von Terminen und Kontakten in der Cloud.

Für alle, welche diese Dienste nicht unbedingt brauchen, wird hier eine Alternative vorgestellt, die sich im wesentlichen auf zwei Aufgaben konzentriert: die Synchronisation von Daten und das gemeinsame Arbeiten mit Dokumenten in der Gruppe. Seafile ist etwas performanter als ownCloud. Beide Produkte sind Open Source. ownCloud wird von einer Entwicklergemeinde betreut, Seafile ist das Produkt einer chinesischen Firma.

Seafile (extern) ist in der Community-Edition (extern) kostenlos, relativ einfach zu installieren und in der Zahl seiner Benutzer nicht eingeschränkt. Den Seafile-Server gibt es in Versionen für Linux, Windows und den Minirechner Raspberry Pi. Clients (Apps) stehen für die Mobil-Betriebssysteme Android und iOS und für die Desktop-Betriebssysteme Linux, Mac OS X und Windows zur Verfügung.

Da der Seafile-Server seinen eigenen Webserver mitbringt, ist seine Installation nicht schwierig; weil aber eine Reihe von Bedingungen gegeben sein müssen, ist Seafile nicht so sehr für die Installation auf einem Webspace, sondern eher für die Einrichtung auf einem eigenen Server oder dem Raspberry Pi geeignet.

Hier wird Seafile in erster Linie für Heimanwender vorgestellt, und zwar am Beispiel der Installation auf dem Raspberry Pi.

Allen, die eine eigene Cloud wollen, sollte klar sein, dass es mit der Einrichtung allein nicht getan ist. Die Installation muss mit einigem Arbeitsaufwand gepflegt werden (Updates, Sicherheitslücken usw.) - einmal einrichten und dann nichts mehr daran ändern geht nicht.

3.1. Seafile auf dem Raspberry Pi installieren

Betriebssystem Raspbian installieren

Im Folgenden wird die Installation des Seafile-Servers auf dem Raspberry Pi in einem lokalen Netzwerk beschrieben. Es wird davon ausgegangen, dass der Pi die IP-Adresse "192.168.178.44" hat.

---------------------------------------------------

Soll der Seafile-Server auch aus dem Internet erreichbar sein, sind einige zusätzliche Schritte nötig:

Umstellung der Datenübertragung von HTTP auf das sichere Protokoll HTTPS,

Einrichtung von Portweiterleitungen auf dem Router, damit der Seafile-Server aus dem Internet erreichbar ist,

Einrichtung eines DynDNS-Dienstes, damit der Seafile-Server immer unter der gleichen Adresse aus dem Internet erreichbar ist.

Diese Schritte werden in zwei Artikeln im Abschnitt Sicherer Zugriff über das Internet beschrieben.

---------------------------------------------------

Für große Datenmengen und viele Benutzer ist die Seafile-Variante für den Raspberry Pi nicht geeignet. Dies liegt daran, dass die Leistung des Mini-Rechners begrenzt ist und die Pi-Variante nicht mit einer leistungsfähigen Datenbank arbeitet. Der Pi reicht gut für den heimischen Einsatz; soll es aber mehr sein, ist eine der Seafile-Varianten für "richtige" Linux- oder Windows-Server die bessere Wahl. 

3.1.1. Seafile-Server vorbereiten

Öffnen Sie als (Standard-)Benutzer "pi" auf dem Raspberry Pi das "LXTerminal".

Um Seafile installieren zu können, müssen eine Reihe von Voraussetzungen geschaffen werden. Geben Sie nacheinander die folgenden Befehle ein, um fehlende Software zu installieren:

sudo apt-get install python-setuptools

sudo apt-get install python-imaging

sudo apt-get install sqlite3

Legen Sie einen Benutzer "seafile" an, geben Sie ihm ein Passwort, wechseln Sie in sein Home-Verzeichnis und erstellen Sie ein neues Verzeichnis "seafile":

sudo adduser seafile

sudo su seafile

cd

mkdir seafile

Laden Sie nun die aktuelle Version des Seafile-Servers (extern) für den Raspberry Pi herunter und entpacken Sie diese (StandNovember 2015: Version 4.4.3). Der Link zum Download ist unten auf der Seite.

tar -xvf seafile-server_4.4.3_pi.tar.gz 

3.1.2. Seafile-Server einrichten

Wechseln Sie in das entpackte Verzeichnis und starten Sie das Installations-Skript:

cd seafile-server-4.4.3 

./setup-seafile.sh

Es werden eine Reihe von Angaben abgefragt. Geben Sie dem Seafile-Server einen Namen, tragen Sie die Netzwerkadresse des Pi ein (z.B. die lokale Adresse 192.168.178.44), bestätigen Sie den Speicherort für die Daten und tragen Sie bei "admin email" Ihre Mailadresse und ein Passwort ein.

Nun müssen Sie noch den Seafile-Server und das Webinterface Seahub starten:

cd seafile-server-latest

./seafile.sh start

./seahub.sh start

SSH

Nach einem Neustart des Pi starten die beiden Server nicht automatisch. Falls Sie den Raspberry Pi nach der Ersteinrichtung ohne Bildschirm und Tastatur betreiben, müssen Sie sich von einem Rechner im lokalen Netzwerk als Benutzer "seafile" über ssh einloggen. Unter Linux und Mac OS X können Sie das im Terminal erledigen, unter Windows benötigen Sie das Programm PuTTY. Laden Sie die Datei "putty.exe" herunter und öffnen Sie das Programm; eine Installation ist nicht nötig.

Starten Sie PuTTY, geben Sie z.B. "seafile@192.168.178.44" unter "Host Name (or IP address)" ein, wählen Sie "SSH" aus und klicken Sie auf "Open". Wenn Sie sich zum ersten Mal mit dem RPi verbinden, werden Sie gefragt, ob Sie dem Server vertrauen. In einem vertrauenswürdigen Netz können Sie dies mit "Ja" bestätigen. In Zukunft sollte diese Warnung nur noch auftauchen, wenn sich die Konfiguration des ssh-Dienstes auf dem RPi geändert hat. Geben Sie im Terminalfenster das Passwort für den Benutzer "seafile" ein.

Um Seafile manuell zu starten, geben Sie im Terminal nacheinander die folgenden Befehle ein:

cd seafile-server-latest

./seafile.sh start

./seahub.sh start

Damit Seafile bei jedem Neustart des Pi automatisch gestartet wird, folgen Sie dieser Anleitung (extern).

Update

Seafile verfügt über keine automatische Update-Funktion; Updates müssen manuell heruntergeladen, entpackt und ins richtige Verzeichnis kopiert werden. Allerdings gib es seit einiger Zeit Update-Skripe, die das Updaten erleichtern. Mehr dazu in der Seafile-Dokumentation (extern).

3.1.3.  Seafile-Weboberfläche

Der "Seahub" - erreichbar mit einem Browser über die Adresse http://ipadresse:8000" - ist die Schaltzentrale von Seafile.

Starten Sie einen Browser und geben sie z.B. "http://192.168.178.44:8000" ein, um auf die Weboberfläche von Seafile zuzugreifen. Geben Sie die E-Mail-Adresse und das Passwort ein, die Sie bei der Installation des Servers angegeben haben.

Die Weboberfläche von Seafile startet. Sie ermöglicht die komplette Steuerung von Seafile. Hier können neue Bibliotheken (zu synchronisierende Ordner) angelegt, für andere freigegeben, Favoriten verwaltet oder Nachrichten mit anderen Seafile-Nutzern ausgetauscht werden.

Beim ersten Start der Weboberfläche gibt es für jeden Nutzer lediglich die Standbibliothek "Meine Bibliothek"; weitere Bibliotheken können hinzugefügt werden.

Verschlüsselung

Bibliotheken können auch verschlüsselt werden. Dazu rechts oben auf "Neue Bibliothek" klicken und dann ein Häkchen vor "Verschlüsseln" setzen und ein mindestens 8 Zeichen langes Passwort einbegeben. Bei den Desktop-Clients wird der Schlüssel nicht auf dem Server, sondern nur auf dem Client-PC gespeichert. Lediglich beim Zugriff über die mobilen Clients wird der Schlüssel vorübergehend auf dem Server gespeichert.

Bibliotheken

Seafile organisiert die Daten der einzelnen Nutzer grundsätzlich in Bibliotheken auf dem Server, denen jeweils ein Verzeichnis/ein Ordner auf der lokalen Festplatte zugeordnet wird. In der Terminologie von Seafile werden Bibliotheken vom Server auf die lokale Festplatte des Clients - es können mehrere Geräte Clients sein - heruntergeladen. Natürlich sind die Bibliotheken zu Beginn der Arbeit mit Seafile leer oder fast leer. So befindet sich in "Meine Bibliothek" am Anfang nur die Datei "seafile-tutorial.doc". Die Bibliotheken füllen sich in dem Maße mit Dateien, wie die Inhalte lokaler Ordner mit den Bibliotheken auf dem Server synchronisiert werden.

In der Praxis ist die Arbeit mit Seafile recht einfach: Alle Dateien, die Sie in einem Unterordner des Verzeichnisses "Seafile" speichern, werden mit dem Seafile-Server synchronisiert.

Ein Klick auf das Werkzeugsymbol rechts oben öffnet das Menü für die Systemadministration, wo in erster Linie neue Benutzer und zusätzliche Administratoren eingerichtet werden können.

Die wichtigsten Funktionen stellen auch die Seafile-Clients für diverse Betriebssysteme zur Verfügung. 

3.1.4. Seafile Clients

Clients gibt es für Linux, Mac OS X, Windows, Android und iOS. Sie können auf dieser Seite (extern) bzw. in den Stores vonGoogle (extern) und Apple (extern) heruntergeladen werden.

Installieren Sie den Desktop-Client für Ihr Betriebssystem. Bei der Initialisierung werden Sie gefragt, in welchem Ordner die Seafile-Bibliotheken gespeichert werden sollen.

Wenn Sie unter Windows den Ordner "Eigene Dokumente" auswählen, erstellt Seafile dort einen Ordner mit der Bezeichnung "Seafile". Im obigen Beispiel wird der Ordner "C:\Users\uli\Documents\Seafile\Meine Bibliothek" erstellt. Er ist bis auf das Seafile-Tutorial leer, da noch keine Daten dort gepeichert wurden.

Im nächsten Schritt geht es darum, ein Konto hinzuzufügen. Geben Sie oben die Adresse des Seafile-Servers im lokalen Netz (oder seine URL im Internet), Ihre E-Mailadresse und Ihr Passwort ein und klicken Sie auf "Login".

Der Seafile-Client startet und fragt, ob er die Standardbibliothek herunterladen soll. Stimmen Sie zu. Sobald der Seafile-Client läuft, finden Sie ein neues Icon unten rechts in der Taskleiste (hier am Beispiel Windows).

Um eine Bibliothek mit einem lokalen Verzeichnis zu synchronisieren, klicken Sie im Client mit der rechten Maustaste auf die Bibliothek und wählen "Synchronisieren Jetzt" aus. Alternativ können Sie die Bibliothek mit der Maus auswählen und dann links oben auf das Symbol mit der Wolke und dem Pfeil klicken.

Um ein zusätzliches Verzeichnis zu synchronisieren (eine neue Bibliothek zu erstellen), können Sie auch einfach das Verzeichnis in den unteren Bereich des Clients ziehen und im folgenden Dialogfenster bestätigen.

Sie können auswählen, ob die Bibliothek verschlüsselt gespeichert werden soll; falls ja, geben Sie zwei Mal das Passwort ein.

Alle Operationen können Sie auch mit den Mobil-Clients von Seafile durchführen. Im Bild unten ist der Client für Android abgebildet.

3.1.5. Seafile nutzen

Die Kernaufgabe von Seafile ist das Synchronisieren von Daten zwischen dem Seafile-Server und den Clients. Dies bedeutet, dass alle Daten, die in vorher festgelegten Ordnern auf den Clients - Desktop-PCs oder Mobilgeräten - gespeichert werden, auch in der entsprechenden Bibliothek auf dem Seafile-Server landen. Seafile sorgt so nicht nur für erhöhte Datensicherheit, da es immer ein Backup auf dem Server gibt, sondern ermöglicht es auch, über Gerätegrenzen hinweg auf Dateien zuzugreifen.

Doch Seafile bietet auch noch andere nützliche Dienste an. Dazu gehört in erster Linie die Möglichkeit, in Gruppen Dokumente zu teilen und gemeinsam an ihnen zu arbeiten.

Um Benutzer hinzuzufügen, Gruppen einzurichten und das Teilen von und gemeinsame Arbeiten an Dokumenten zu ermöglichen, müssen Sie die Weboberfläche von Seafile starten, z.B. "http://192.168.178.44:8000".

Benutzer hinzufügen

Klicken Sie rechts oben auf das Werzeugsymbol, um in den Administrations-Modus zu gelangen, und dann auf "Add User". Tragen Sie E-Mail-Adresse und Passwort des neuen Benutzers ein und klicken Sie auf absenden.

Es wird nun angezeigt, dass es einen neuen Seafile-Benutzer gibt.

Gruppen einrichten

Um eine Gruppe zu Seafile hinzuzufügen, klicken Sie oben auf "Gruppen" und dann auf "Neue Gruppe". Im unteren Beispiel wird die Gruppe "testteam" erstellt.

Bibliotheken freigeben und teilen

Sie haben jetzt die Möglichkeit, ganze Bibliotheken, einzelne Ordner oder einzelne Dateien für alle Gruppenmitglieder freizugeben. Klicken Sie oben auf "Start" und dann auf "Meine Bibliotheken". Wenn Sie mit der Maus über eine Bibliothek fahren, wird rechts ein Teilen-Symbol angezeigt. Klicken Sie auf dieses Symbol, wählen Sie dann "Gruppen" und die gewünschte Gruppe aus.

Alle Mitglieder der Gruppe "testteam" können nun auf die gesamte Bibliothek "lfb" zugreifen; dabei kann eingestellt werden, ob dies nur lesend oder aber lesend und schreibend geschehen darf.

Es ist auch möglich, Bibliotheken - oder Teile davon - öffentlich, d.h. für alle, freizugeben.

Gemeinsam mit Dokumenten arbeiten

Die Möglichkeiten, Dokumente direkt auf dem Seafile-Server zu bearbeiten, sind in der freien Community-Edition arg eingeschränkt. Online (direkt auf dem Server) können nur Text-, Markup- und Quelldateien bearbeitet werden. In der Praxis bedeutet dies, dass die Benutzer andere Dokumente erst auf ihr Gerät herunterladen, dort bearbeiten und anschließend wieder auf den Seafile-Server hochladen müssen. Das ist ziemlich umständlich.

Nur die kostenpflichtige Business-Edition von Seafile bietet mehr Formate zum Online-Bearbeiten an.

Fazit

Zusammenfassend kann man festhalten, dass sich die Community-Edition von Seafile sehr gut dafür eignet, Dateien online zu speichern und mit unterschiedlichen Geräten zu synchronisieren. Auch das Teilen von Dateien mit anderen Benutzern klappt problemlos. Jedoch sind die Möglichkeiten, gemeinsam an Dokumenten zu arbeiten, zu sehr eingeschränkt, um im Alltag punkten zu können.

Informationen zu Seafile

Seafile Homepage (extern)

Seafile Wiki (extern)

Installationsanleitung (extern)

Installationsvideo (extern)

Server automatisch starten (extern)

4. Sicherer Zugriff aus dem Internet

Wer seine private Cloud lediglich im heimischen Netz benutzt, muss nichts weiter tun - außer natürlich das Heimnetz vor Angriffen aus dem Internet zu schützen. Das geschieht am einfachsten dadurch, dass alle nicht benötigten Ports (Wikipedia, extern) für die Kommunikation mit dem Internet dicht gemacht werden. Diese Einstellungen werden meist im Router vorgenommen. Viele Router sind so voreingestellt, dass alle nicht benötigten Ports ohnehin dicht sind und bei Bedarf freigegeben werden müssen.

Wer allerdings auch aus dem Internet auf seine eigene Cloud zugreifen will, muss deutlich mehr Aufwand betreiben. Dabei sind zwei grundsätzliche Schritte zu unterscheiden.

Im ersten Schritt geht es darum, die eigene Cloud überhaupt unter der immer gleichen Adresse aus dem Internet erreichbar zu machen. Dies ist nötig, da Endanwender von ihren Internetprovidern in aller Regel dynamsche IP-Adressen zugewiesen bekommen. Diese dynamischen Adressen nach dem Muster 123.456.789.1 ändern sich meist nach spätestens 24 Stunden. Um also immer unter dem beispielhaften Namen "meinecloud.meinnetz.de" erreichbar zu sein, muss man einen Dienst bemühen, der die wechselnden IP-Adressen immer auf "meinecloud.meinnetz.de" umleitet. Solche Dienste werden meist DynDns genannt.

Im zweiten Schritt muss der Zugriff auf die eigene Cloud so sicher gemacht werden, dass übertragene Passwörter und Daten nicht von Unbefugten "mitgelesen" werden können. Dies geschieht durch  die Aktivierung der SSL-Verschlüsselung im Webserver und die Erzeugung eines SSL-Zertifikats. Ist dies erledigt, kommuniziert die private Cloud künftig verschlüsselt. Man kann dies daran erkennen, dass in der Adresszeile des Browsers "https" statt "http" angezeigt wird. 

4.1. Weiterleitung und Dyndns einrichten

Das Gerät (NAS, Raspberry Pi, Server), auf dem die eigene Cloud läuft, befindet sich nach der Einrichtung im lokalen Netz; aus dem Internet ist es (noch) nicht erreichbar. Wenn Sie von überall her auf Ihre Cloud zugreifen wollen, müssen Sie das Gerät für den Zugriff aus dem Internet öffnen. Dies geschieht über eine Portweiterleitung (extern) im Router.

Vereinfacht gesagt sorgt eine Portweiterleitung dafür, dass der Router (extern) eine Anfrage aus dem Internet auf eine lokale IP-Adresse und einen bestimmten Port umleitet. Hier ein Beispiel: Das Gerät (und damit auch die Cloud) ist im lokalen Netz unter der IP-Adresse http://192.168.1.6 erreichbar - und zwar nur im lokalen Netz, nicht von "außen". Damit 192.168.1.6 vom Internet her erreichbar wird, muss der Router Anfragen aus dem Internet auf diese interne Adresse zulassen.

Jeder Internetanschluß hat genau eine öffentliche IP-Adresse. Bei einer Portweiterleitung sorgt der Router dafür, dass Anfragen an diese öffentliche IP-Adresse bei einem Gerät im lokalen Netz landen. (Dass sich die öffentliche IP-Adresse eines gewöhnlichen Internetanschlusses in der Praxis alle 24 Stunden ändert, tut erst mal nichts zur Sache - dazu später mehr). 

4.2. Router-Einstellungen

Router werden für gewöhnlich über eine Weboberfläche mit dem Browser konfiguriert. Melden Sie sich als Administrator an Ihrem Router an; häufig ist die IP-Adresse 192.168.1.1 oder so ähnlich. Eine Fritzbox erreichen Sie über 192.168.178.1. Suchen Sie im Menü nach Portweiterleitung/Port Forwarding. 

Wählen Sie dort die IP-Adresse des Gerätes im lokalen Netz aus (beispielsweise 192.168.1.6) und weisen Sie ihm eine beliebige Portnummer zu. Aus Sicherheitsgründen sollten Sie eine "hohe" Portnummer verwenden (von 1024 bis 65535).

Damit das Gerät im lokalen Netz immer die gleiche IP bekommt, sollten Sie dies im Router unter "LAN IP Setup" (oder so ähnlich) einstellen. 

4.3 Webserver Apache  anpassen

Auch der Webserver - meist Apache - auf dem Gerät muss wissen, dass die Cloud auf dem Port xxxxx läuft. Die Einstellung wird in der Datei /etc/apache2/sites-enabled/000-default vorgenommen. Öffnen Sie die Datei mit einem Editor 

sudo nano /etc/apache2/sites-enabled/000-default

und tragen Sie in der ersten Zeile nach *:80 durch ein Leerzeichen getrennt *:xxxxx ein. (Ersetzen Sie xxxxx durch die von Ihnen gewählte Portnummer).

Starten Sie Apache neu:

sudo /etc/init.d/apache2 restart

Wurden diese Einstellungen erfolgreich übernommen, ist Ihre persönliche Cloud aus dem Internet über die (beispielhafte) Adresse
http:// 100.200.300.000:2222/owncloud zu erreichen;
:2222 bezeichnet den gewählten Port.

Die IP-Adresse Ihres Internetanschlusses finden Sie durch einen Besuch bei http://www.heise.de/netze/tools/meine-ip-adresse/ (extern) heraus.

Schön und gut. Allerdings haben Privatpersonen in aller Regel sog. dynamische IP-Adressen, die sich nach spätestens 24 Stunden ändern. Wie kriegt man es also hin, dass die eigene Cloud immer unter der gleichen Adresse zu erreichen ist? Hier springen Dynamische DNS-Dienste ein (extern), welche die häufig wechselnden (numerischen) IP-Adressen auf die immer gleiche URL umsetzen.

4.4. DynDNS

Eine Reihe solcher Dienste sind kostenlos. Dazu gehören beispielsweise NoIP, dnsdynamic, changeIP und afraid (alle extern). Melden Sie sich bei einem der Dienste an und wählen Sie ein kostenloses Angebot. Bei NoIP erhalten Sie dann z.B. eine Adresse nach dem Muster meine-cloud.no-ip.biz oder meine-cloud.no-ip.info. Ein kleines Programm auf Ihrem Computer sorgt dafür, dass Ihre ownCloud immer unter der gleichen Adresse erreichbar ist. Einen allgemeinen Überblick über kostenlose DynDNS-Dienste gibt es hier (extern).

Viele Router unterstützen von sich aus bestimmte DynDNS-Dienste; in diesem Fall nehmen Sie die Einstellungen im Router vor. Einige der weit verbreiteten AVM-Router ("Fritz!") bieten den Myfritz-Dienst (extern) an, ebenfalls eine DynDNS-Lösung.

4.5 VPN

Eine weitere Möglichkeit, sich einen sicheren Zugang zum heimischen Netz zu verschaffen, ist ein Virtual Private Network (extern). Dabei verbindet sich ein beliebiges Gerät im Internet, auf dem eine VPN-Software läuft, mit dem heimischen Router und erlaubt es, auf die Geräte im (entfernten) heimischen Netz so zuzugreifen, als befänden sie sich in einem lokalen Netz.

Wie das mit einer Fritzbox von AVM funktioniert, habe ich (in einem anderen Zusammenhang) indiesem Blog-Beitrag (extern) beschrieben.

4.6 Zertifikat erzeugen und SSL einrichten

Da Apache der am weitesten verbreitet Webserver ist, wird sowohl die Aktivierung der SSL-Verschlüsselung als auch die Erzeugung eines Zertifikats am Beispiel von Apache erläutert. Die Dateinamen und Pfadangaben beziehen sich auf aktuelle Ubuntu- bzw. Debian-Systeme. Das grundsätzliche Vorgehen ist jedoch unabhängig vom jeweiligen Linux-System.

Zertifikat

Wir gehen davon aus, dass die private Cloud meist nur von einer recht überschaubaren Zahl von Anwendern genutzt wird. Deshalb setzen wir hier auf ein selbst erzeugtes Zertifikat. Selbst-signierte Zertifikate werden allerdings von den meisten Browsern nicht akzeptiert. Es kommt zu einer Fehler-/Warnmeldung, wenn mit einem solchen Zertifikat auf die persönliche Cloud zugegriffen wird.

Allerdings kann man den Webbrowser dazu bringen, das Zertifikat trotzdem zu akzeptieren. Im obigen Beispiel (Chrome) muss man dazu zuerst auf "Erweiterte Informationen" und dann ganz unten auf "Weiter zu xxxxx (unsicher)" klicken. Da nur relativ wenige Nutzer häufig auf die private Cloud zugreifen, ist dies wohl hinnehmbar. Die meisten Browser kann man überreden, das "unsichere" Zertifikat über eine Ausnahmeregel dauerhaft zu akzeptieren.

Bei StartSSL (extern) bekommen Sie ein Gratis-Zertifikat, das ein Jahr gültig ist. Ein solches Zertifikat kann den Vorteil haben, dass es von vielen Browsern und Programmen "out-of-the-box" akzeptiert wird.

Schlüssel

Zunächst muss ein privater Schlüssel erzeugt werden. Melden Sie sich am Gerät (NAS, Raspberry Pi, Server) an und starten Sie ein Terminal.  Mit "sudo -i" verschaffen Sie sich root-Rechte, danach wird der Schlüssel erzeugt

openssl genrsa -out /etc/ssl/private/apache.key 2048

und als /etc/ssl/private/apache.key gespeichert.

Zertifikat

Das SSL-Zertifikat wird (ebenfalls als root) erzeugt

openssl req -new -x509 -key /etc/ssl/private/apache.key -nodes -days 365 -sha256 -out /etc/ssl/certs/apache.crt

und als

/etc/ssl/certs/apache.crt

gespeichert.

Nach Eingabe des Befehls zum Erstellen des Zertifikats werden einige Angaben abgefragt. Wichtig ist, dass der "Common Name", d.h. der Domainname, für welchen das Zertifikat eingesetzt wird, korrekt ist (beispielsweise meinecloud.de).

Apache

Zum Abschluss sind noch einige Einstellungen des Webservers Apache vorzunehmen:

Port 443
Apache muss auf Port 443 lauschen. Öffnen Sie die Datei /etc/apache2/ports.conf mit einem Editor (nano). Der folgende Abschnitt muss so aussehen:

<IfModule mod_ssl.c>

Listen 443

</IfModule>

Starten Sie Apache neu.

sudo service apache2 reload

SSL-Modul aktivieren

sudo a2enmod ssl

sudo service apache2 force-reload

SSL-Webseite konfigurieren
Einen VirtualHost für TLS/SSL einrichten. Erstellen Sie die Datei /etc/apache2/sites-available/ssl.conf mit folgendem Inhalt:

<VirtualHost *:443>

SSLEngine on

SSLCertificateFile /etc/ssl/certs/apache.crt

SSLCertificateKeyFile /etc/ssl/private/apache.key

# Pfad zu den Webinhalten

DocumentRoot /var/www/

</VirtualHost>

Aktivieren Sie diesen VirtualHost mit

sudo a2ensite ssl.conf

sudo service apache2 force-reload

Weitere Hinweise zum Einrichten von SSL finden sie in diesem Artikel (extern) im Ubuntu-Wiki. Die obige Anleitung folgt weitest gehend diesem Artikel.

Meine erfahrungen mit der eigenen cloud

.

Seit etwa Version 3 oder 4 betreibe ich ownCloud auf meinem Webspace bei 1und1. Später kam dann noch eine Installation auf dem Raspberry Pi dazu. Seafile habe ich erst vor etwa 2 Jahren entdeckt und ebenfalls auf einem Raspberry Pi installiert.

In allen Fällen waren Installation und Einrichtung in relativ kurzer Zeit erledigt - relativ meint hier, dass es nicht Tage gedauert hat, um ownCloud und Seafile zum Laufen zu bringen, sondern nur ein paar Stunden.

Ziemlich zeitaufwändig ist die Pflege der Einrichtungen. Ganz besondere Probleme machen die Updates. Erst seit es möglich ist, ownCloud ziemlich zuverlässig über die Paketverwaltung von Debian (und anderen Distributionen) zu aktualisieren, empfehle ich ownCloud überhaupt für Privatanwender. Davor war das Updaten grauenvoll, ging meist schief und hat mich sehr viel Zeit gekostet.

Seafile muss nach wie vor manuell upgedated werden: Neue Version herunterladen, entpacken und dann per Skript (man muss genau das richtige auswählen!) installieren. Da gibt es viele Fehlerquellen und entsprechend oft kann etwas schief gehen.

Die Performance von Seafile im lokalen Netz ist bei mir ewas besser als die von ownCloud. Überraschenderweise schlägt in Bezug auf Schwuppdizität (hat Heise darauf ein Copyright?) meine ownCloud bei 1und1 beide lokalen Installationen.

Wer den Komfort und die Bequemlichkeit von Dropbox und Co. erwartet, liegt bei der eigenen Cloud falsch. Hier muss man Kompromisse eingehen. Weder Seafile noch ownCloud bieten die Integration in andere Programme/Apps. Die Grundfunktionen eines funktionierenden Synchronisationsdienstes bieten beide, ownCloud auch noch deutlich mehr.

Ich muss gestehen, dass ich in meiner täglichen Arbeit immer noch mehr mit Dropbox und Co. arbeite als mit ownCloud oder Seafile. Aber das kann sich ja noch ändern ...