Bittorrent Sync 800x450

Wie man mit BitTorrent Sync sichere Backups erstellt

Vor einiger Zeit habe ich im Blog von BitTorrent einen Gastbeitrag geschrieben. Darin ging es darum, wie man BitTorrent Sync als Alternative zu Cloud-Storage-Diensten, wie Dropbox und Box, nutzen kann. Der folgende Beitrag ergänzt den Post, der verständlichere Schritt-für-Schritt-Anleitungen zum sicheren Einsatz von BitTorrent Sync bietet.

Sicherheitshinweise

Da der Schwerpunkt dieses Beitrags auf der Sicherheit liegt, wäre es nicht fair gegenüber unseren Lesern, die Bedenken zu ignorieren, die vor kurzem bei einer Hackito Session aufgekommen sind (bei der CloudSigma auch Sponsor war). BitTorrent hat schnell auf diese Bedenken reagiert und sie werden aktuell noch diskutiert.

Falls daher jemand Interesse hat, gibt es eine Open-Source-Alternative zu BitTorrent Sync namens Syncthing.

Den Server konfigurieren

Sie sollten es sich zweimal überlegen, bevor Sie Ihre sensiblen Daten an einen Cloud-Backup-Dienst übergeben. So bequem das sein mag, sollten Sie sich immer fragen, ob es das wert ist, dass Dritte in Ihren Daten herumschnüffeln können.

Die große Herausforderung ist natürlich, Ihre Dateien sowohl sicher zu speichern als auch auch über mehrere Geräte hinweg zu synchronisieren. Glücklicherweise wird das mit Sync viel einfacher.

Es ist zwar möglich, mit Sync einfach zwei Geräte zu synchronisieren, allerdings müssen hierzu beide Geräte online sein. Wenn Sie zum Beispiel Ihren Laptop und Ihren Desktop-Computer zu Hause synchron halten wollen, müssen beide eingeschaltet und in der Lage sein, miteinander zu kommunizieren. Das ist unter Umständen nicht immer der Fall.

Die Lösung für dieses Problem ist die Einbindung eines Servers, der immer zugänglich ist. Das bietet auch den zusätzlichen Vorteil einer weiteren Kopie.

Ein solcher Server könnte zwar bei Ihnen zu Hause sein, allerdings könnte ein cloudbasierter Server aus Resilienz-Gründen sinnvoller sein. Um nicht wieder zum Anfangsproblem zurückzukehren, sollten Sie hier einen Anbieter an einem Standort wählen, an dem der Datenschutz ernst genommen wird, wie CloudSigma und unser Standort in Zürich in der Schweiz. Außerdem sollten Sie auch den Einsatz von Festplattenverschlüsselung in Betracht ziehen, um noch mehr Sicherheit zu gewährleisten.

Die Installation von BitTorrent Sync ist sehr einfach. Wenn Sie zum Beispiel Ubuntu 14.04 für Ihren Server verwenden, müssen Sie nur die folgenden Befehle ausführen:

[bash light=”true”] $ wget https://www.resilio.com/individuals/ -O btsync.tgz
$ tar xvfz btsync.tgz
$ sudo mv btsync /usr/local/bin/
$ sudo useradd btsync
$ sudo mkdir /btsync
$ sudo chown -R btsync:btsync /btsync/
[/bash]

Als Nächstes müssen wir eine Konfigurationsdatei erstellen. Eine minimale Konfiguration würde wie folgt aussehen. Eine vollständige Beispielkonfiguration ist hier verfügbar.

[python light=”true”] {
"device_name": "MyNode",
"listening_port" : 0,
"pid_file" : "/tmp/btsync.pid",
"download_limit" : 0,
"upload_limit" : 0,
"webui" :
{
"listen" : "127.0.0.1:8888",
"login" : "myuser",
"password" : "mypassword",
"allow_empty_password" : false,
"directory_root" : "/btsync",
"dir_whitelist" : [ "/btsync" ] }
} [/python]

Passen Sie dies an Ihre Bedürfnisse an und speichern Sie es mit Ihrem bevorzugten Texteditor unter /usr/local/etc/btsync.conf.

Bitte beachten Sie, dass:

  • Ihr Passwort im Klartext in der Konfigurationsdatei gespeichert wird. Es gibt auch die Option, es stattdessen verschlüsselt zu speichern.
  • Die obige Konfiguration 127.0.0.1 (localhost) überwacht. Daher können Sie nicht von außen auf den Server zugreifen, ohne einen SSH-Tunnel zu verwenden (siehe unten). Sie können dies auf ‘0.0.0.0:8888’ ändern, um es allgemein zugänglich zu machen. Wenn Sie dies tun, würde ich allerdings empfehlen, dass Sie dies in Verbindung mit dem integrierten SSL-Support tun (oder Ihren Server hinter einem Reverse-Proxy zu platzieren, der den SSL-Support ergänzt).

Wenn Ihre Konfigurationsdatei gefüllt ist, können wir nun den Server mit dem folgenden Befehl starten:
[bash light=”true”] $ sudo -u btsync btsync –config /usr/local/etc/btsync.conf
[/bash]

Wenn Sie folgende Fehlermeldung erhalten, starten Sie einfach erstmals den Server mit ‘-u btsync’:

btsync: /mnt/jenkins/workspace/Build-Sync-x64/linux/breakpad/client/linux/handler/minidump_descriptor.h:55: google_breakpad::MinidumpDescriptor::MinidumpDescriptor(const string&): Assertion `!directory.empty()' failed.

Da wir Sync konfiguiert haben, um nur 127.0.0.1 zu überwachen, ist der Server nicht allgemein zugänglich. Um auf den Server zuzugreifen, müssen wir einen SSH-Tunnel verwenden. Wenn Sie OS X oder Linux nutzen, ist das sehr einfach. Sie müssen lediglich ein Terminal-Fenster öffnen und folgenden Befehl ausführen:

[bash light=”true”] $ ssh -L 8888:127.0.0.1:8888 -N user@remoteserver.com -v
[/bash]

Damit wird ein sicherer Tunnel auf Ihrem lokalen Rechner erstellt, mit dem Sie auf den Remote-Server auf Ihrem lokalen Port 8888 zugreifen können.

Wenn Sie Windows verwenden, stehen Ihnen einige Werkzeuge zur Erstellung von SSH-Tunneln zur Verfügung. Das beliebteste ist wahrscheinlich PuTTY.

Wenn der SSH-Tunnel aktiv ist, können wir in unserem Browser nur auf http://127.0.0.1:8888 verweisen und uns mit den angegebenen Anmeldeinformationen anmelden.

BitTorrent Sync web interface

Einen Ordner synchronisieren

Sobald Sie sich am Web-Interface anmelden können, ist es Zeit, einen Ordner für die Synchronisation hinzuzufügen. Hierzu müssen Sie BitTorrent Sync auf Ihrem lokalen Computer herunterladen und installieren.

Klicken Sie auf Ihrem lokalen Computer auf die Schaltfläche ‚Add Folder‘ und wählen Sie den Ordner aus, den Sie synchronisieren möchten. Nachdem Sie den Ordner ausgewählt haben, öffnet sich das folgende Dialogfenster. Schließen Sie dieses Dialogfenster und öffnen Sie dann die Einstellungen für die neu erstellte Freigabe:

btsync_preferences_dialogue

Sync Preferences

Wir verwenden hierzu den Nur-Lese-Schlüssel ka auf diese Weise unser lokaler Computer geschützt ist, falls der Remote-Server aus irgendeinem Grund kompromittiert wird. Wenn wir den Schreib-/Lese-Schlüssel verwenden würden, könnte ein Eindringling Änderungen auf Ihren lokalen Computer übertragen.

Gehen wir nun zurück zum Browser-Fenster für den Remote-Server und klicken auf das Symbol ‘Enter a key or link’.
btsync_remote_enter_key

Da wir bereits unseren Nur-Lese-Schlüssel kopiert haben, müssen wir den Schlüssel nur noch einfügen.
btsync_remote_enter_key2

Zuletzt müssen wir noch auswählen, wo der Ordner gespeichert werden soll. Denken Sie daran, dass es gemäß unserer obigen Konfiguration (directory_root) im Ordner’/btsync’ sein muss.
btsync_remote_select_destination

Der Remote-Server und Ihr lokaler Computer werden jetzt synchronisiert. Abhängig von der Größe des Ordners und Ihrer Verbindung kann dies einige Zeit in Anspruch nehmen. Sie können den Prozess sowohl lokal als auch im Web-Interface verfolgen. Wenn es fertig ist, sieht es wie folgt aus:
btsync_remote_finished_sync

Wiederholen Sie diesen Vorgang für jeden Ordner, den Sie synchronisieren möchten.

Zusammenfassung

Das war‘s. Sie sollten nun in der Lage sein, Ihre Daten mit BitTorrent Sync zu synchronisieren. Wenn Sie einen weiteren Desktop hinzufügen möchten, können Sie dort einfach die Schreib-/Lese-Schlüssel einfügen. So können Sie auf den gleichen Dateien arbeiten und beide Geräte synchronisieren. Es ist auch erwähnenswert, dass es mobile Clients für iOS und Android gibt, mit denen Sie sowohl Daten von Ihrem Smartphone (z.B. Fotos) sichern können als auch auf Remote-Daten zugreifen können.

Wenn Sie den Remote-Server neu konfigurieren möchten, müssen Sie lediglich den oben beschriebenen SSH-Tunnel öffnen und Ihren Browser auf die lokale URL verweisen.

Wenn Sie den Remote-Server neu starten müssen (oder wenn Sync abstürzt), dann müssen Sie nur den Befehl btsync noch einmal ausführen, um ihn wieder zu starten.

C770b64f01d6b9360b59e8470c2754f4?s=80&r=g

About Viktor Petersson

Former VP of Business Development at CloudSigma. Currently CEO at WireLoad and busy making a dent in the Digital Signage industry with Screenly. Viktor is a proud geek and loves playing with the latest technologies.