So wählen Sie einen Cloud-Dienst für Sicherungen aus

12

Ich denke darüber nach, einen Cloud-Service zu verwenden, um eine Website meines Kunden zu sichern.

Meine (Kunden-) Hauptanliegen sind (in abnehmender Reihenfolge der Wichtigkeit)

  1. Schutz der IP (Geschäftsgeheimnisse, Quellcode), Benutzerkontodaten usw
  2. Verfügbarkeitsgarantie des Dienstanbieters (um Ausfallzeiten des Webservers zu minimieren)
  3. Kosten
  4. Upload / Download-Geschwindigkeiten

Im Idealfall hätte ich gerne einen Service, der nicht lange an mich gebunden ist (dh ich würde eine Art "Pay-As-You-Go" -Service vorziehen).

Ich möchte auch das Sperren von Anbietern vermeiden, bei denen es so gut wie unmöglich ist, zu einem anderen Dienst zu wechseln.

Ich hätte gerne einige allgemeine Richtlinien zu:

  1. So wählen Sie einen Dienstleister aus
  2. Wer sind die Hauptakteure auf dem Gebiet
  3. Empfehlung der zu verwendenden Software für: Backup / Restore / und Upload / Download der gespeicherten / wiederhergestellten Dateien

Die Serversoftware wird entweder Ubuntu oder Debian sein (ich werde wahrscheinlich eine Frage stellen, welches Betriebssystem als Server verwendet werden soll - ich bin bereits mit Ubuntu vertraut).

RichVel
quelle
Wie groß ist die Website? Enthält es große Datenbanken? Gibt es Zahlen zum Baseballstadion darüber, wie viel der Kunde bereit ist, auszugeben? ($ 100 / Monat, $ 10.000 / Monat?)
RJFalconer
3
In Bezug auf "Geschäftsgeheimnisse und Quellcode" gehören so wichtige Informationen nicht in die "Cloud", unabhängig davon, wie seriös ein Dienst zu sein scheint.

Antworten:

4

Jede Lösung, die keine Verschlüsselung auf der Client-Seite mit vom Eigentümer gehaltenen Schlüsseln beinhaltet, erfüllt nicht die erstgenannte Anforderung (IP-Schutz / Sicherheit) - jeder Hack auf der Server-Seite offenbart unverschlüsselte Daten. Dies schließt Cloud-Synchronisationssysteme wie Dropbox aus, die die Schlüssel besitzen.

Um zu vermeiden, dass die wichtigen Verschlüsselungsschlüssel auf dem Server der Website gehostet werden, der wahrscheinlich auch irgendwann gehackt wird, gehe ich folgendermaßen vor:

  1. Eigener Backup-Server beim Kunden vor Ort - verfügt über Verschlüsselungs- und SSH-Schlüssel für beide anderen Server
  2. Server, auf dem die Website gehostet wird - könnte ein Webhost sein
  3. Cloud-Backup-Server oder -Dienst

Schritt 1: Server (1) zieht das Backup von (2), sodass die meisten Hacks des Website-Servers Backups nicht gefährden. Die Verschlüsselung erfolgt zu diesem Zeitpunkt.

  • Ich würde rsnapshot über SSH unter Verwendung der schlüsselbasierten Anmeldung verwenden, da dies nur minimale Anforderungen an den Webhost und den internen Sicherungsserver stellt - es sei denn, Sie haben eine große Datenbank zum Sichern, ist dies sehr bandbreiteneffizient und speichert mehrere Versionen der Site. und kümmert sich auch um das Löschen alter Backups.
  • Die Verschlüsselung kann mit jedem Datei-zu-Datei-Tool wie GPG erfolgen, indem der rsnapshot-Baum in einen anderen Baum kopiert wird. Alternativ können Sie für Schritt 2 die Duplizität verwenden, um Speicherplatz zu sparen.
  • "Pull" vom Backup-Server ist wichtig - wenn der Hauptserver (2) die Passwörter / Schlüssel für den Backup-Server hat, können und werden Hacker die Backups nach dem Hacking des Hauptservers löschen (siehe unten). Wirklich fortgeschrittene Hacks können trojanisierte SSH-Binärdateien installieren, die dann den Backup-Server gefährden können, aber das ist für die meisten Unternehmen weniger wahrscheinlich.

Schritt 2: Server (1) überträgt die verschlüsselten Sicherungen an (3), sodass eine Offsite-Sicherung erfolgt. Wenn die Sicherungen in Schritt 1 verschlüsselt wurden, können Sie einfach einen rsync-Spiegel des lokalen rsnapshot-Baums für das ferne System verwenden.

  • Duplizität wäre eine gute Option, um den unverschlüsselten rsnapshot-Baum direkt zu verschlüsseln und auf dem Remote-Server zu sichern. Die Funktionen von Duplicity unterscheiden sich geringfügig von denen von rsnapshot bei Verwendung von GPG-verschlüsselten Tar-Archiven, bieten jedoch eine Sicherungsverschlüsselung auf dem Remote-Host und erfordern nur SSH auf diesem Host (oder können Amazon S3 verwenden). Duplicity unterstützt keine festen Links . Wenn dies erforderlich ist (z. B. für eine vollständige Serversicherung), konvertiert ein Skript den rsnapshot-Baum (der feste Links unterstützt) am besten in eine tar-Datei (möglicherweise nur die Dateien mit>) 1 fester Link, der recht klein sein wird, damit Duplizität die TAR-Datei sichern kann.
  • Da der Remote-Server nur ein SSH-Host ist, möglicherweise mit rsync, kann es sich um einen Webhost (jedoch von einem anderen Hosting-Anbieter und in einem anderen Teil des Landes) oder um einen Cloud-Dienst handeln, der rsync und / oder SSH bereitstellt Diese Antwort bezieht sich auf Rsync-Sicherungen in der Cloud auf die Empfehlung von bqbackup und rsync.net, obwohl ich dem erwähnten Sicherungssetup nicht zustimme.
  • Sie können Amazon S3 als Remote-Server mit doppelter Verfügbarkeit verwenden, was eine gute Verfügbarkeit zur Folge hätte, obwohl große Backups möglicherweise mehr kosten würden.
  • Andere Optionen für verschlüsselte Remote-Backups sind Boxbackup (nicht ganz so ausgereift, einige nette Funktionen) und Tarsnap (kommerzieller Cloud-Dienst auf Basis von Amazon S3 mit einfacher Befehlszeilenschnittstelle, guter Deduplizierung und sehr gründlicher Verschlüsselung).

Die Sicherheit aller verschiedenen Hosts ist wichtig, daher sollte diese an das Sicherheitsprofil des Clients angepasst werden, dh Bedrohungen, Risiken, Angriffsvektoren usw. analysieren. Ubuntu Server ist kein schlechter Start, da es für 5 häufige Sicherheitsupdates gibt Jahre, aber die Aufmerksamkeit auf die Sicherheit ist auf allen Servern erforderlich.

Dieses Setup bietet 2 unabhängige Backups, von denen eines ein hochverfügbarer Cloud-Speicherdienst sein kann, der im Pull-Modus ausgeführt wird, sodass die meisten Angriffe auf die Website die Backups nicht gleichzeitig zerstören können, und verwendet bewährte Open Source-Tools, die dies nicht tun erfordern viel Verwaltung.

  • Unabhängige Backups sind von entscheidender Bedeutung, da Hacker tatsächlich manchmal alle Backups gleichzeitig mit dem Hacken der Website löschen. In den letzten Fällen haben Hacker 4800 Websites zerstört, einschließlich Backups, indem sie die Webhosting-Umgebung und nicht die Websites gehackt haben. Siehe auch diese und diese Antwort .
  • Mit rsnapshot ist das Wiederherstellen sehr einfach - in jedem Snapshot-Baum befindet sich eine Datei für jede gesicherte Datei. Suchen Sie also einfach die Dateien mit Linux-Tools und synchronisieren Sie sie oder scpen Sie sie zurück auf die Website. Wenn der Backup-Server vor Ort aus irgendeinem Grund nicht verfügbar ist, verwenden Sie einfach die Duplizität, um sie vom Cloud-Backup-Server wiederherzustellen. Alternativ können Sie Standardtools wie GPG, rdiff und tar verwenden, um die Backups wiederherzustellen.

Da dieses Setup Standard-SSH und Rsync verwendet, sollte es einfacher sein, einen geeigneten Anbieter mit den richtigen Verfügbarkeitsgarantien, hoher Sicherheit usw. auszuwählen. Sie müssen sich nicht an einen langen Vertrag binden, und wenn der Backup-Dienst eine Katastrophe aufweist Wenn dies fehlschlägt, haben Sie immer noch eine lokale Sicherung und können ganz einfach zu einem anderen Sicherungsdienst wechseln.

RichVel
quelle
rsnapshot unterstützt nicht nur Hardlinks, sondern verwendet diese in seiner internen Darstellung. Daher sichert Duplicity den rsnapshot-Datenspeicher nicht korrekt, ohne ihn zu tarnen.
ptman
@ptman: Das stimmt - allerdings muss nicht der gesamte rsnapshot-Baum geteert werden. Ich würde duplicity verwenden, um das Verzeichnis "daily.0" von rsnapshot nur im rsnapshot-Baum zu sichern, der den aktuellsten Snapshot des Verzeichnisbaums enthält, der gesichert wird. Die Inter-Snapshot-Verknüpfungen von Rsnapshot zwischen daily.0, daily.1 usw. sind für die Duplizitätssicherung nicht relevant, da nur Verknüpfungen zwischen zwei Dateien in der Snapshot-Struktur von daily.0 angezeigt werden, die festen Verknüpfungen auf dem zu sichernden System entsprechen. Tar kann diese Links in Ordnung erfassen und Duplizität kann sie über die TAR-Datei sichern.
RichVel
2

Betrachten Sie in Bezug auf die Software die Duplizität für inkrementelle Sicherungen mit asymmetrischer Verschlüsselung und einem dummen Empfänger (keine Cloud- Anleitung ).

Tobu
quelle
1

Ich sage meinen Kunden immer, dass die beste, kostengünstigste und effizienteste Backup-Lösung eine ist, die Sie selbst für Ihre eigenen Zwecke erstellen.

Wenn ich ein System für meine Clients erstelle, verwende ich rsync mit SSH-Schlüsseln, um die Authentifizierung zwischen ServerA und ServerB zu verwalten, wobei ServerA die zu sichernden Daten enthält. Der Befehl zum Archivieren und Synchronisieren der Daten ist in einem Bash-Skript in einem nicht über das Internet zugänglichen Verzeichnis enthalten, das von cron alle H Stunden aufgerufen wird (24 für täglich usw. usw.).

Der Backup-Server, serverB, ist NUR für Backups zu verwenden. Ich rate meinen Kunden immer, ein extrem langwieriges Kennwort mit SSH-Schlüsselauthentifizierung zu verwenden, um das Herunterladen von Backups und das Sichern zu ermöglichen. Manchmal müssen meine Clients Backups für D Tage speichern, daher schreibe ich einige Skripte, um dies zu handhaben (Daten aus dem aktiven Backup-Verzeichnis nehmen, einen Zeitstempel anwenden, einem Archiv in einem anderen Verzeichnis hinzufügen).

Jason Berlinsky
quelle
0

Für kleine Unternehmen / Prosumer würde ich den Speicherservice von Amazon empfehlen .

  • Regionskontrolle (dh in einer EU gelagerte Objekte verlassen die EU niemals).
  • 99,9% Verfügbarkeit für einen bestimmten Abrechnungszeitraum
  • 0,150 US-Dollar pro gespeichertem GB und Monat
  • 0,170 USD pro GB heruntergeladen
  • Kostenloser Upload bis Juni 2010, danach 0,10 USD pro GB

Und die eher vage Zusicherung, dass "Authentifizierungsmechanismen bereitgestellt werden, um sicherzustellen, dass Daten vor unbefugtem Zugriff geschützt sind"

RJFalconer
quelle
0

Während bluenovember mit S3 auf dem richtigen Weg ist, ist das Amazon-System keine direkte Backup-Lösung, sondern eine Rohdatenspeicherlösung, für deren Backup immer noch ein Front-End-System erforderlich ist, unabhängig davon, ob es sich um ein paar API-Aufrufe oder eine handelt vollständige Backup-Management-Suite. Etwas wie JungleDisk Server Edition , das S3 im Backend verwendet, aber eine bessere Schnittstelle für die Verwendung als Backup-Lösung bietet, wäre wahrscheinlich besser.

Darüber hinaus bietet JungleDisk eine integrierte Verschlüsselung, die Sie unabhängig davon, wie Sie eine Verbindung zu S3 / "the cloud" herstellen möchten, erweitern müssen. Sie haben auch eine ziemlich nette Client-Software für Linux.

phoebus
quelle
0

Ich speichere mein Backup gerne in Amazon AWS und benutze das kostenlose Tool s3cmd ( http://s3tools.org/s3cmd )

Es kann ziemlich einfach installiert werden (Debian: apt-get install s3cmd).

Alles, was Sie benötigen, um Ihre Dateien in S3 zu speichern, ist ein Amazon AWS-Konto. Dann kann ein einfacher Befehl Ihre Sicherung ausführen, auch inkrementell oder als Synchronisierungslösung, zB:

s3cmd sync /srv/backup  s3://your-bucket-name-at-amazon/

Stellen Sie sicher, dass Sie laufen

s3cms --configure 

Geben Sie zuerst Ihre AWS-Anmeldeinformationen ein.

rauben
quelle