Backup auf Server mit verschlüsselter HDD

Probleme mit Samba, NFS, FTP und Co.
Antworten
who
Beiträge: 116
Registriert: 10.02.2010 17:08:13

Backup auf Server mit verschlüsselter HDD

Beitrag von who » 28.02.2017 12:53:44

Hallo,

ich habe bei mir einen kleinen Server mit Debian am laufen und möchte auf diesem meine Rechner sichern. Dabei ist mir wichtig, dass die HDD auf dem Server verschlüsselt ist, die Übertragung zwischen Server und Client muss nicht zwangsweise verschlüsselt sein - ist ja bei mir im Heimnetzwerk.

Wie gehe ich das am besten an? Zurzeit habe ich eine Partition der HDD mit luks verschlüsselt, doch wie binde ich diese HDD ein, wenn ein Backup z.b. mit rsync gestartet wird?

LG
who

uname
Beiträge: 12045
Registriert: 03.06.2008 09:33:02

Re: Backup auf Server mit verschlüsselter HDD

Beitrag von uname » 28.02.2017 13:09:55

Es ist wohl etwas schwierig eine verschlüsselte Partition automatisch einzubinden. Vor allem könnte ein Angreifer einfach dieses Script starten und kommt an die verschlüsselten Daten. Keinesfalls darf diese Partition einzeln zu mounten sein und das Passwort in irgendeiner Form gespeichert vorliegen.

Ich sehe zwei Möglichkeiten:
a.)
- das gesamte System bzw. die genannte Partition wird verschlüsselt
- die Entschlüsselung des gesamten Systems bzw. die genannte Partition erfolgt manuell per Passwort bzw. temporärem USB-Stick (z.B. beim oder nach dem Booten)
- während der Laufzeit des Systems ist die genannte Partition durchgängig unverschlüsselt eingebunden

b.)
- das gesamte System ist verschlüsselt
- die Entschlüsselung des gesamten Systems erfolgt manuell per Passwort bzw. temporärem USB-Stick
- für das Backup gibt es einen eigenen Container mit einem abweichendem Key/Passwort
- die Entschlüsselung /Mounten des Containers erfolgt automatisch vor dem Backup
- die Aufhebung der Verschlüsselung /Unmounten des Containers erfolgt automatisch nach dem Backup
- das automatische Ver- und Entschlüsseln ist nur aufgrund der generellen Verschlüssung sinnvoll

b.) ist für den Fall sicherer, dass ein Angreifer außerhalb der Backup-Zeiten auf den noch laufenden Server zugreift.
a.) und b.) sind geeignet, falls der Server stromlos gesetzt wird und dann entwendet wird
Es ist eine ganz schlechte Idee z.B. im unverschlüsselten /usr/local/bin/script.sh das Passwort für die verschlüsselte Partition bzw. den verschlüsselten Container aufzubewahren ;-) Du wirst auch kein angemessenen Mechanismus finden dieses zu verschlüsseln bzw. zu verschleiern, da es z.B. per Debianstrace zur Laufzeit ermittelbar wäre.

who
Beiträge: 116
Registriert: 10.02.2010 17:08:13

Re: Backup auf Server mit verschlüsselter HDD

Beitrag von who » 28.02.2017 14:56:34

danke für deine ausführliche Antwort!

werde es wohl nach Möglichkeit a) machen.

LG

schwedenmann
Beiträge: 5525
Registriert: 30.12.2004 15:31:07
Wohnort: Wegberg

Re: Backup auf Server mit verschlüsselter HDD

Beitrag von schwedenmann » 28.02.2017 19:11:18

Hallo


Wenn das nur ein Backupserver ist, könnte man auch die backups verschlüsseln, mit dem Backupprogramm, einige backupproggis kennen dieses feature.

Ansonsten müßtest du bei jedem booten das Servers die HD entsperren, ist ein bischen lästig, wenn der nur als file- und backupserver genutzt werden soll :wink: und du keine Monitor angeschlossen hast.

mfg
schwedenmann

breakthewall
Beiträge: 507
Registriert: 30.12.2016 23:48:51

Re: Backup auf Server mit verschlüsselter HDD

Beitrag von breakthewall » 06.03.2017 21:00:43

who hat geschrieben:Wie gehe ich das am besten an? Zurzeit habe ich eine Partition der HDD mit luks verschlüsselt, doch wie binde ich diese HDD ein, wenn ein Backup z.b. mit rsync gestartet wird?
An sich ist das keine große Sache. Und wenn wenn du diesen Server kontrollierst und dieser nur via LAN abgetrennt erreichbar ist, dann muss man die Verbindung auch nicht verschlüsseln. Nichtsdestotrotz würde ich dennoch nahelegen SSH zu nutzen, generell Verschlüsselung wo auch immer möglich einzusetzen. Grundsätzlich fährst immer besser mit einem komplett verschlüsselten System, besonders wenn auf diesem bspw. Schlüsseldateien lagern. Diese sollten niemals woanders liegen als in nur Root zugänglichen Verzeichnissen, und nur Root selbst gehören.

Ein simples Beispiel für so ein Backup könnte sein: NoPaste-Eintrag39779

Hab das vor Jahren mal geschrieben, als recht einfache Lösung ohne großartigen Umfang. Möglicherweise ist es hilfreich für weitere Ideen, wie man so etwas umsetzen kann. Hier kam eine doppelt verschlüsselte Lösung zum Einsatz, mit GPG und LUKS. Es wurde darum GPG hinzugefügt, um auch sichere wie auch verifizierbare Backups an potenziell unsicheren Orten lagern zu können. Aber man kann ebenso auch nur Tar nutzen oder in deinem Beispiel Rsync.

breakthewall
Beiträge: 507
Registriert: 30.12.2016 23:48:51

Re: Backup auf Server mit verschlüsselter HDD

Beitrag von breakthewall » 06.03.2017 21:22:52

uname hat geschrieben:Es ist wohl etwas schwierig eine verschlüsselte Partition automatisch einzubinden. Vor allem könnte ein Angreifer einfach dieses Script starten und kommt an die verschlüsselten Daten. Keinesfalls darf diese Partition einzeln zu mounten sein und das Passwort in irgendeiner Form gespeichert vorliegen.
Ist überhaupt nicht schwierig. Und wenn ein Angreifer es so weit geschafft hat, und unmittelbar über Rootrechte verfügt, dann hat der Nutzer gänzlich andere Probleme. Mit einfachen Mitteln kann man auch nicht verhindern, dass ein Volume einzeln eingehängt werden kann, welches vom System erkannt wird. Was man tun kann ist, diesen Prozess vor dem Nutzer bspw. zu verbergen, wie auch die Verzeichnisse während eines Backups unzugänglich zu machen, sprich die Einhängepunkte. Man kann auch /proc via hidepid=2 einhängen, sodass der Nutzer stets nur eigene Prozesse sehen kann.
uname hat geschrieben:Es ist eine ganz schlechte Idee z.B. im unverschlüsselten /usr/local/bin/script.sh das Passwort für die verschlüsselte Partition bzw. den verschlüsselten Container aufzubewahren ;-) Du wirst auch kein angemessenen Mechanismus finden dieses zu verschlüsseln bzw. zu verschleiern, da es z.B. per Debianstrace zur Laufzeit ermittelbar wäre.
Wenn dann erstellt man nur für Root zugängliche Schlüsseldateien. Generell haben Passwörter in Shellscripten nichts verloren.

Eigentlich lässt sich dies schon verschleiern. Gesetzt den Fall man hat nur Nutzerrechte, dann besteht keine Handhabe an Daten laufender Prozesse zu kommen. Mit Rootrechten kann man natürlich mit gdb oder strace arbeiten, aber auch nur wenn echo "3" > /proc/sys/kernel/yama/ptrace_scope nicht gesetzt wurde. Einmal bei Systemstart definiert wird ein ptrace unmöglich im Betrieb, und auch mit Rootrechten lässt sich das nicht wieder umkehren. Und das ist eine sehr schöne Sache. :D

Antworten