Ich habe ein Debian Linux-System (amd64) auf einem RAID-1-System-verschlüsselten Gerät (LVM auf LUKS) installiert und habe ein RAID-6 mit> = 4 Festplatten, auf denen ich meine Daten ablegen werde (LUKS und möglicherweise LVM).
Ich denke, die Grundidee ist, die systemverschlüsselte Partition (beim Booten lokal oder über ssh) zu entsperren und eine Schlüsseldatei in / etc / crypttab für die RAID-6-verschlüsselte Partition zu speichern. Ist das ein Sicherheitsrisiko? Ich meine ... es ist ziemlich nutzlos, wenn jemand mein System nur lokal / remote betreten kann und ich denke, dass auf Servern, die für "Rooting" anfällig sind (z. B. SSH), viele Dienste ausgeführt werden. Gibt es eine Alternative (neben dem Entsperren der Partition über SSH, was ein Problem sein kann, da z. B. Sicherungsvorgänge bereits vor dem Mounten der Datenpartition gestartet werden).
Auf einem anderen Computer verwende ich mehrere Festplatten mit LUKS + greyhole (kein RAID-6) für Backups, und es wird ein echtes Problem sein, 10 Festplatten zu entsperren, indem man das 10-fache des gleichen Passworts eingibt ...
Antworten:
Sie können
/lib/cryptsetup/scripts/decrypt_derived
in Ihrem verwendencrypttab
, um den Schlüssel von einer Festplatte automatisch für eine andere zu verwenden.Das
decrypt_derived
Skript ist Teil von Debians Cryptsetup-Paket.Kleines Beispiel zum Hinzufügen des Schlüssels von sda6crypt zu sda5:
Da es heutzutage sehr schwierig ist, eine Datei wirklich zu löschen, stellen Sie sicher, dass sich / path / to / mykeyfile auf einem verschlüsselten Laufwerk befindet (
sda6crypt
in meinem Beispiel eine gute Lösung).Im Allgemeinen können Sie eine zusätzliche Sicherheitsschicht hinzufügen, indem Sie die Dateisystemverschlüsselung für den Benutzerbereich verwenden, z. B. über
encfs
. .quelle
decrypt_derived
hat den einzigen Vorteil, dass es keine Schlüsseldatei gibt. Wenn jemand Root-Zugriff erhalten kann, sind Sie normalerweise sowieso verloren. Das Lesen von Schlüsseldateien kann für einen Eindringling etwas einfacher sein als das Ausführen eines Skripts. Um mehr Sicherheit zu erhalten, können Sie Ihr System mit TOMOYO Linux, AppAmor, SMACK, SELinux, grsecurity usw. härten. Dies erfordert jedoch zusätzliche Anstrengungen. Und die Frage, ob es sich lohnt, ist dann wichtiger. Vergessen Sie nicht, eine Sicherungskopie des Schlüssels oder einen separaten Schlüssel für den Fall zu erstellen, dass das Laufwerk abstürzt, wenn der Schlüssel von / abgeleitet ist oder darauf gespeichert ist.Basierend auf der Antwort von jofels ist hier das gleiche Beispiel, ohne dass der Schlüssel in einer Datei gespeichert werden muss. Der Schlüssel wird in einer Named Pipe übergeben, in der nichts auf der Festplatte gespeichert ist.
Sie können
/lib/cryptsetup/scripts/decrypt_derived
in Ihrem Crypttab den Schlüssel von einer Festplatte automatisch für eine andere verwenden. Dasdecrypt_derived
Skript ist Teil von Debians Cryptsetup-Paket.Geändertes Beispiel zum Hinzufügen des Schlüssels von sda6crypt zu sda5:
Die
keyscript
Option funktioniert nur, wenn siecrypttab
von Debians ursprünglichen Cryptsetup-Tools verarbeitet wird. Die Neuimplementierung durch das System wird derzeit nicht unterstützt. Wenn Ihr System systemd verwendet (was die meisten Systeme sind), müssen Sie dieinitramfs
Option erzwingen , dass die Verarbeitung in der initrd durch die Cryptsetup-Tools erfolgt, bevor systemd gestartet wird.quelle