Es kann immer etwas schief gehen …

Die Webseite ist TipTop abgesichert gegen Angriffe, alle Updates sind drin, die elementaren Do’s und Dont’s in Sachen Sicherheit sind beachtet und dann passiert’s trotzdem: die Webseite wurde gehackt!

Gut wer jetzt ein Backup hat. Noch besser dran ist der auch noch eine Wiederherstellungsstrategie vorweisen kann!

Wir wollen kein Backup, wir wollen eine wiederhergestellte Seite! Klick um zu Tweeten

Der erste gute Tipp heisst: Ruhe bewahren. Wer angesichts einer Beschädigung seiner Seite in operative Hektik verfällt macht leicht Fehler und verschlimmbessert die Situation unter Umständen. Rational und professionell den Desasterplan abarbeiten hilft mehr als sich über den Hack zu echauffieren.

Unser Desasterplan im Detail

STEP 1: Umfang der Datensicherung festlegen

Elementarer Umfang ist in jedem Fall die Datenbank der WordPress Installation. Damit sind Einstellungen und Textinhalte schon mal abgedeckt. Nicht in der Datenbank enthalten sind Bilder, Filme, Dokumente und andere Medien, die zu der Seite hochgeladen wurden. Daher ist auch /wp-content/uploads/ in die Minimalsicherung aufzunehmen. Wer ganz gründlich sichern will, nimmt nicht nur das Unterverzeichnis /uploads/ in die Sicherung auf, sondern gleich den kompletten /wp-content/ Ordner und hat damit auch gleich Plugins und Themes weggesichert. Insbesondere bei eigenentwickelten Plugins und Themes oder auch nur ChildThemes ist das dringend geboten. Ebenso sollten wp-config.php und die .htaccess aus dem (WP)Hauptverzeichnis und ggf. aus dem /wp-admin/ Verzeichnis gesichert werden. In beiden finden sich Einstellungen wieder, die ansonsten rekonstruiert werden müssen. Wer noch gründlicher arbeiten mag, nimmt gleich das kompletten WordPress Verzeichnis ins Backup auf – wir kommen ob der Datenmenge da gleich unter »Sicherungsziel« drauf zurück.

STEP 2: Intervall der Datensicherung festlegen

hierzu gibt es keine pauschal richtige oder falsche Aussage. Abhängig von Intervall an Veröffentlichungen sollte auch ein Backupintervall gewählt werden. Eine Seite die nur wenige neue Blogartikel pro Monat und noch weniger Kommentare erhält muss nicht zwingend täglich gesichert werden. Ein Onlinemagazin mit mehreren Mitarbeitern, die täglich einige Dutzend Beiträge veröffentlicht, bedarf u.U. einer stündlichen, gar einer permanenten Sicherung. Die Sicherung muss – egal in welchem zeitlichen Abstand sie erfolgt – immer automatisch getriggert werden. Viele Tools werden erst aktiv, wenn die Seite einen Besuch erfährt. Passiert das über längere Zeit mal nicht, gibt es kein Backup! (Web)Cron ist da die deutlich zuverlässigere Methode um zeitgesteuert das Backup anzustossen. Wichtig an der Stelle: Dinge, Menschen und Verhaltensweisen ändern sich. Wenn unterwegs die Veröffentlichungsfrequenz steigt, ist das Backupintervall nachzuschleifen!

STEP 3: Aufbewahrungsfrist für die Datensicherung festlegen

Ähnlich wie beim Sicherungsintervall gilt hier: wann bekomme ich i.d.R. mit, dass etwas nicht stimmt? Wer nur alle Jubeljahre einmal auf seine Installation schaut wird sich über gut abgehangene Backupdaten freuen, die einen unkompromittierten Stand enthalten. Wer seine Seite wirklich laufend im Blick hat, braucht nur ein paar wenige Schritte zurück um einen intakten Datenbestand vorzufinden.

STEP 4: Ziel der Datensicherung festlegen

Die wichtigste Regel: alles, nur nicht auf dem eigenen Server, vielleicht sogar noch in einem Unterverzeichnis von WordPress. Wird eine Seite angegriffen und beschädigt, ist auch das Backup an der Stelle in Gefahr. Das Sicherungsziel sollte also immer off-site sein. Mit steigender Größe der Seite, mit kürzeren Intervallen und mit längeren Aufbewahrungsfristen steigt der Platzbedarf für ein Backup.

Insbesondere wenn Medien mitgesichert werden, scheidet eMail-Versendung eines Backups sehr schnell aus. Die meisten Mailserver haben Obergrenzen für die Mailgröße, die durch ein Vollbackup schnell geknackt wird.

Einen sehr großen Speicherplatz für sehr kleines Geld bietet der Amazon Web Service (AWS) mit seinem S3-Speicher. Im ersten Jahr sind 5 GB kostenlos zu bekommen, danach fallen i.d.R. auch für sehr große Menge nur Cent-Beträge pro Monat an.

STEP 5: Sicherheitsaspekte bei der Datensicherung beachten

Bei der Übertragung an andere Server per FTP oder an Clouddienste wie Dropbox ist darauf zu achten, das die Zugangsdaten zu diesen externen Stellen nicht Klartext in Dateien oder der Datenbank gespeichert werden. Noch besser ist es den Backup-Trigger und damit die Verwaltung der Zugangsdaten außerhalb von WordPress zu haben. Verwaltungstools wie InfiniteWP o.ä. bieten da gute Möglichkeiten. Die Datenübertragung selbst sollte verschlüsselt erfolgen oder das Backup selbst encrypted sein, damit nicht unterwegs z.B. Zugangsdaten zur Datenbank aus der wp-config.php mitgelesen werden können.

STEP 6: Beweissicherung im Schadensfall

Wer sich den Schaden später noch genauer forensisch untersuchen mag, sichert an der Stelle die schadhafte WordPress Installation weg. Ansonsten ist an der Stelle das Löschen der kompromittieren Dateien und das Leeren der Datenbank angesagt.

STEP 7: Umgebung ausputzen

Je nach Serverumgebung ist hier auch die Mithilfe des Hosters gefragt. Auf jeden Fall muss an dieser Stelle sicher gestellt sein, dass keine neue Infektion eintreten kann.

STEP 8: Wiederherstellung aus dem Backup

Der relativ einfache Teil. Wenn wir an der Stelle angekommen sind ist der Rest business as usual. Daten aus dem Backup einkopieren, SQL-Dump importieren und schon lebt unsere Seite wieder. Für alle Fälle sollte in den nächsten Tagen sehr sorgfältig beobachtet werden, ob nicht neue Eindringungen und Infektionen entstehen.

FAZIT:

Zu jeder Absicherung der eigenen WordPress Installation gehört ein Desasterplan. Zu jedem Desasterplan gehört ein Backup.

 

Kommentar 1

  1. Pingback: WordPress › Deutsch « Nie wieder ohne Backup!

Kommentare sind geschlossen.