← Flendermedia Backup

Anleitung: Flendermedia Backup

Voraussetzungen

  • JTL-Shop 5, getestet mit Version 5.7.2 (weitere Versionen prüfen wir gerade)
  • PHP mit der Erweiterung sodium auf dem Server des Shops
  • ein Speicher mit SFTP-Zugang, zum Beispiel eine Hetzner Storage Box
  • der Cron des Shops läuft regelmäßig
  • zum Wiederherstellen: ein Rechner mit PHP 8.1 oder neuer und den Erweiterungen sodium und zlib

Einrichtung in sechs Schritten

Nach der Installation öffnen Sie das Plugin und dort den Reiter „Einrichtung“. Oben sehen Sie, in welchem der sechs Schritte Sie sind; erledigte Schritte sind markiert.

  1. Ordner. Das Plugin schlägt einen Arbeitsordner auf dem Server vor, in dem die verschlüsselten Teile entstehen. Übernehmen oder ändern, dann „Ordner speichern und prüfen“. Das Plugin legt den Ordner an, sperrt ihn und prüft, dass er aus dem Internet nicht erreichbar ist.
  2. Speicher. Anbieter wählen: „Hetzner Storage Box“ oder „Anderer SFTP-Server“. Bei Hetzner tragen Sie Benutzername und Passwort ein (ein eigenes Unterkonto für die Backups lohnt sich), sonst zusätzlich Server und Port. Mit „Speichern und Verbindung prüfen“ verbindet sich das Plugin einmal. Beim ersten Mal zeigt es den Fingerabdruck des Servers; vergleichen Sie ihn mit der Angabe Ihres Anbieters und bestätigen Sie. Danach wählen Sie den Ordner auf dem Speicher aus der Liste oder legen einen neuen an. Das Passwort wird verschlüsselt abgelegt und nie wieder angezeigt.
  3. Vorabprüfung. Ein Klick auf „Prüfen“ zeigt, ob sich Ihr Shop mit dieser Version sichern lässt: Tabellen, Datenbank-Sitzung, Rechte des Datenbank-Benutzers, Sperre im Arbeitsordner, Cron. Rote Punkte verhindern das Einschalten, gelbe sind Warnungen.
  4. Schlüssel. „Schlüssel erzeugen“ erstellt Ihr Schlüsselpaar und öffnet das Notfallblatt in einem neuen Fenster; die Plugin-Ansicht bleibt dahinter stehen. Im neuen Fenster stehen zwei Knöpfe nebeneinander. „Schlüsseldatei speichern“ legt die Datei flendermedia-backup-schluessel-<Kennung>.txt ab, „Notfallblatt ausdrucken“ öffnet den Druckdialog (als PDF speichern geht auch). Erledigen Sie beides, denn dieses Fenster gibt es nur ein einziges Mal. Danach schließen Sie es und machen in der Plugin-Ansicht weiter. Bewahren Sie Datei und Blatt getrennt vom Shop auf. Der Shop behält nur den öffentlichen Teil.
  5. Schlüsselprobe. Laden Sie die eben gespeicherte Schlüsseldatei hoch und setzen Sie das Häkchen „Ich habe das Notfallblatt ausgedruckt (oder als PDF gespeichert) und sicher abgelegt.“ Ohne Häkchen gibt es keine Probe. Ist die Datei schon weg, tippen Sie den Text vom Notfallblatt ab; das Häkchen bleibt Pflicht. Passt der Schlüssel, ist er bestätigt, und das Plugin verwirft ihn sofort wieder. Was Sie bestätigt haben, steht danach mit Datum und Uhrzeit in Schritt 4 und 5 und als Zeile im Logbuch des Shops. Erzeugen Sie später einen neuen Schlüssel, beginnt die Probe von vorn.
  6. Einschalten. „Sicherung einschalten“ wird klickbar, sobald alle Punkte erledigt sind. Fehlt noch etwas, steht es direkt darüber.

Ab dann läuft die Sicherung jeden Tag von selbst. Die Übersicht zeigt Status, Fortschritt, den nächsten Start und die letzten 20 Läufe. Mit „Backup jetzt starten“ legen Sie sofort eines an. Im Kasten „Zeitplan und Aufbewahrung“ stellen Sie ein, wie viele Tage die Backups im Speicher bleiben.

Ein Tipp zum Schluss: Schalten Sie bei der Storage Box automatische Snapshots ein. Dann kann auch jemand, der Zugang zu Ihrem Shop bekommt, Ihre Backups nicht löschen.

Grenzen dieser Version

Lieber jetzt ehrlich als später enttäuscht:

  • Nur Datenbank und Konfigurationsdatei. Bilder, Templates, Plugins und die übrigen Dateien des Shops sichert das kostenlose Plugin nicht. Dafür brauchen Sie weiterhin Ihr Hoster-Backup, eine eigene Lösung oder Flendermedia Backup Pro.
  • Nur SFTP. Andere Ziele (WebDAV, FTP, Cloud-Speicher) gibt es nicht. Ihr Hoster muss ausgehende Verbindungen zum Port des Speichers erlauben, bei Hetzner Port 23. Die Verbindungsprüfung in der Einrichtung zeigt, ob das klappt.
  • Ein Speicher. Ohne Speicher liegen die verschlüsselten Backups nur auf dem Server des Shops; die Übersicht warnt dann.
  • Einmal am Tag. Das kostenlose Plugin sichert einmal täglich, voreingestellt gegen 3 Uhr. Mehrmals am Tag kann nur Pro.
  • Aufbewahrung nach Tagen, mit Untergrenze. Voreingestellt sind 7 Tage. So viele der neuesten Backups, wie Sie Tage eingestellt haben, bleiben in jedem Fall liegen, wenigstens zwei. Ein beschädigtes neuestes Backup ist so nie das einzige.
  • Große Tabellen. Jede Tabelle wird in einem Zug gelesen, damit sie im Backup vollständig und in sich stimmig ist. Dafür hat das Plugin je Aufruf höchstens 5 Sekunden. Reicht das für eine Tabelle nicht, bricht der Lauf ab und nennt Tabelle, Zeilenzahl und Zeit; braucht sie mehr als die Hälfte, warnt der Lauf vorher. In unserem Testshop (362 Tabellen, 52 MB) lief die ganze Datenbank in unter einer Sekunde durch. Auf einem langsamen Testrechner lag die Grenze bei rund 850.000 schmalen oder 85.000 breiten Zeilen in einer einzigen Tabelle. Echte sehr große Shops haben wir noch nicht gemessen. Während eine Tabelle gelesen wird, wartet eine Änderung an ihr im Shop höchstens so lange.
  • Ungewöhnliche Tabellen. Unbekannte Spaltentypen oder eine andere Speicher-Engine als InnoDB lassen den Lauf mit Tabelle und Spalte scheitern. Die Vorabprüfung in der Einrichtung meldet das vor dem ersten Backup.
  • Views, Trigger, Prozeduren und Ereignisse stehen in einer eigenen Datei zum Nachschlagen, nicht zum direkten Einspielen.
  • Keine E-Mail. Meldungen erscheinen im Backend des Shops, nicht im Postfach. E-Mails bei einem fehlgeschlagenen oder ausbleibenden Backup gibt es in Flendermedia Backup Pro.
  • Schlüssel verloren, Backups verloren. Ohne Schlüsseldatei und ohne Notfallblatt lässt sich kein Backup öffnen, auch nicht von uns. So ist es gewollt.
  • Wiederherstellung unter Windows haben wir nicht selbst durchprobiert; auf Mac und Linux schon.

Datenschutz

Das Plugin kopiert Daten, die Ihr Shop ohnehin speichert, verschlüsselt an den Speicher, den Sie in der Einrichtung eintragen. Zu Flendermedia baut es keine Verbindung auf: keine Statistik, keine Fehlerberichte, keine Lizenzabfrage bei uns. Wir erhalten keine Daten aus Ihrem Shop und sind deshalb kein Auftragsverarbeiter. Verantwortlich bleiben Sie als Shopbetreiber.

  • Was im Backup steht: die Datenbank Ihres Shops (Kunden, Adressen, Bestellungen, Konten der Administratoren) und die Konfigurationsdatei mit den Zugangsdaten zur Datenbank. Beides verlässt den Server nur verschlüsselt mit Ihrem Schlüssel.
  • Wohin es geht: nur an den Speicher, den Sie eintragen. Mit dessen Anbieter brauchen Sie einen eigenen Auftragsverarbeitungsvertrag, bei Hetzner zum Beispiel für die Storage Box.
  • Was im Shop bleibt: Ihre Einstellungen, die Zugangsdaten zum Speicher (das Passwort verschlüsselt), der öffentliche Teil Ihres Schlüssels und der Verlauf der Läufe ohne Inhalte. Im Logbuch des Shops stehen keine Passwörter.
  • Beim Deinstallieren: Mit „Daten löschen“ entfernt der Shop Einstellungen, Zugangsdaten und Verlauf. Die Backups im Arbeitsordner auf dem Server und auf Ihrem Speicher bleiben liegen; löschen Sie sie selbst, wenn Sie sie nicht mehr brauchen.

Wiederherstellung

Zum Wiederherstellen liegt dem Plugin ein kleines PHP-Programm bei. Es läuft ohne Shop und ohne Datenbank auf jedem Rechner mit PHP 8.1 oder neuer. Die Schritt-für-Schritt-Anleitung steht im Plugin im Reiter „Dokumentation“, Abschnitt „Backup wiederherstellen“, bis zum Einspielen in phpMyAdmin.

Wiederherstellen direkt im Backend Ihres Shops kommt mit einer späteren Fassung.

Support

Fragen zur Einrichtung? Schreiben Sie an info@flendermedia.de. Nennen Sie dabei bitte die Adresse Ihres Shops und die Version des Plugins.