Ich suche nach einer Möglichkeit, eine sicherere Methode zum Ausführen einer Offsite-Sicherung zu implementieren, die meine Daten auch vor der Situation schützt, in der ein böswilliger Hacker Root-Zugriff auf meinen Server erlangt hat. Auch wenn das Risiko geringer ist als bei anderen Arten von Risiken, wenn die SSH- und Kennwortsicherheit ordnungsgemäß eingerichtet und das System ordnungsgemäß auf dem neuesten Stand gehalten wird, ist die Menge an Schaden, die dauerhaft angerichtet werden kann, sehr hoch und daher auch ich möchte eine Lösung finden, um das zu begrenzen.
Ich habe bereits zwei Möglichkeiten für Offsite-Backups ausprobiert:
Ein einfaches webdav-Mount mit Root-Schreibberechtigung (und Konfiguration in fstab), in das die gesicherten Daten kopiert werden. Problem : Nicht wirklich eine Offsite-Sicherung, da die Verbindung - und darüber hinaus der Zugriff - zum Offsite-Speicherort als Ordner im Dateisystem ständig offen bleibt. Dies ist ein ausreichender Schutz gegen viele Arten von Angriffen, wenn der Mount über eingeschränkte Zugriffsrechte verfügt (Nur-Root-Lesezugriff), nicht jedoch gegen eine böswillige Person mit Root-Zugriff.
Borg-Backup über SSH mit Schlüsselauthentifizierung. Problem : Die Verbindung zu diesem externen Server kann mit dem auf dem Host gespeicherten Schlüssel hergestellt werden, wenn der böswillige Benutzer Root-Zugriff auf den Host hat.
Als Lösung denke ich über diese möglichen Wege nach, aber ich weiß nicht wie und womit:
- Backups können nur geschrieben oder an das Ziel angehängt, aber nicht gelöscht werden.
- Die Verwendung einer Sicherungssoftware, die die Offsite-Sicherungen verwaltet und das Massenlöschen der Offsite-Sicherungen vom ersten Host nicht unterstützt.
Lösungen, die in meiner Situation nicht wirklich interessant sind:
- Ein zusätzlicher Sicherungsjob auf dem externen Host, der sie an einen Speicherort überträgt, auf den der erste Host aus technischen Gründen nicht zugreifen kann.
Kann jemand Ratschläge geben, wie eine ordnungsgemäße Offsite-Sicherung für meinen Fall implementiert werden kann?