Ist es unter Ubuntu 11.10 möglich, 2 mit LUKS / LVM verschlüsselte Festplatten zu entschlüsseln, indem beim Booten nur eine Passphrase eingegeben wird?

8

Hier die Konfiguration, die ich habe: - 2 Festplatten, - die erste wird mit LUKS und LVM verschlüsselt. Ich möchte in der Volume-Gruppe eine zweite Festplatte verschlüsselt hinzufügen. Ich habe es erfolgreich installiert und verschlüsselt. Beim Booten muss ich jedoch zwei Passphrasen eingeben, um beide Festplatten zu entschlüsseln.

Gibt es nicht eine Möglichkeit, nur eine zu verwenden?

AlBundy
quelle
Das hat bei mir funktioniert
Tim Abell

Antworten:

4

Ich finde endlich einen Trick, um nur ein Passwort einzugeben und alle meine physischen Festplatten verschlüsseln zu lassen.

Ich verschlüssele die erste mit einer Passphrase, ich verschlüssle die zweite mit einer Schlüsseldatei, die ich auf der ersten Festplatte (/ root / mykeyfile) speichere.

Und mit der korrekten Zeile in der Datei / etc / crypttab macht es den Trick.

Aktualisieren Sie / etc / crypttab

sda5_crypt UUID = fb07f1e8-a569-4db9-9fd7-fc1994e093b5 keine luks

sdb1_crypt UUID = 4c0687f0-d7af-4f2e-9c57-5ca8e909d492 / root / mykeyfile luks

AlBundy
quelle
dd if = / dev / urandom von = / root / mykeyfile bs = 1024 count = 20 Dies ist ein Beispiel für die Erstellung einer zufälligen Zeichenfolge, die als 'Schlüsseldatei' verwendet werden soll.
EarthmeLon
1
Das Problem dabei ist, dass ein Kompromiss beim Zugriff auf Ihr Dateisystem (z. B. Berechtigungsprobleme oder kleinere Probleme) zu einem wichtigen Kompromiss führen würde, einem viel größeren Problem. Ich empfehle dringend gegen diese Praxis. Siehe meine Antwort für eine bessere (und automatische) Methode.
schleichen
Können Sie erklären, wie das funktionieren soll? Startet LVM im verschlechterten Modus und repariert sich dann selbst, sobald die zweite PV verfügbar ist?
aij
0

Unter Ubuntu ist es möglich, einen vom Stamm abgeleiteten Schlüssel als zusätzlichen Schlüssel auf anderen Dateisystemen zu verwenden. Dies hat den Vorteil, dass Ihr Schlüssel für die anderen Laufwerke nicht im Dateisystem selbst enthalten ist.

Bevor Sie dies tun, stellen Sie zunächst sicher, dass / tmp nur auf dem RAM montiert ist! Ich schlage den Einzelbenutzermodus für diese Änderung vor.

mount -t ramfs none /tmp

Anschließend können Sie den abgeleiteten Schlüssel exportieren:

# replace vda5_crypt with the cryptsetup name of your root luks
# have a look in /dev/mapper or 'pvdisplay' to find it...
/lib/cryptsetup/scripts/decrypt_derived vda5_crypt > /tmp/key

Und fügen Sie es dann Ihren anderen Geräten hinzu:

# use your own disks here instead of sdb1 sdc1 sdd1 etc
cryptsetup luksAddKey /dev/sdb1 /tmp/key
cryptsetup luksAddKey /dev/sdc1 /tmp/key
cryptsetup luksAddKey /dev/sdd1 /tmp/key
rm /tmp/key

Dadurch können die Ubuntu-Init-Skripte den abgeleiteten Schlüssel verwenden, sobald der Root entsperrt ist, um den Rest der Blockgeräte zu entsperren und sie auf ähnliche Weise unter / dev / mapper verfügbar zu machen. Ich bin nicht sicher, ob sie / etc / crypttab-Einträge benötigen - probieren Sie sie zuerst aus, und wenn sie nicht angezeigt werden, legen Sie sie ohne Schlüssel in crypttab ab, und sie sollten entsperrt werden.

(Ich habe nichts davon getestet.)

schleichen
quelle
Ich habe es ohne Crypttab unter Debian versucht, und es hat nicht funktioniert. Selbst mit Crypttab funktioniert es nicht, aber ich bin näher gekommen. sdb3_crypt UUID = 4a ... sda3_crypt luks, initramfs, keyscript = decrypt_derived. Die Option initramfs wird benötigt, um das in den initramfs enthaltene sccript decrypt_derived zu erhalten. Beim Start kann es jedoch immer noch nicht geladen werden.
aij
-1

Sie können theoretisch eine temporäre Umgebungsvariable in einem benutzerdefinierten Startskript festlegen, auf das dann von den Initialisierungsskripten für Ihren Entschlüsselungsprozess verwiesen wird. Ich habe das tatsächlich vor ein paar Jahren gemacht.

Sie können auch Ihre vorhandenen Init-Skripte für Ihre Festplatte löschen und ein benutzerdefiniertes Skript schreiben, das Ihr Kennwort einmal eingibt und dann mit den beiden Entschlüsselungsprozessen fortfährt.

Alternativ können Sie Ihr LVM-Volume möglicherweise auf das zweite Laufwerk erweitern. Wenn ich mich richtig erinnere, sollte sich die Verschlüsselung übertragen.

Tim Brigham
quelle
1
Das LVM basiert auf dem zugrunde liegenden verschlüsselten Volume. Wenn Sie das LVM erweitern, ohne ein anderes verschlüsseltes Volume zu erstellen, wird der der Volume-Gruppe hinzugefügte zusätzliche Speicher nicht verschlüsselt.
schleichen
-2

Nein, es gibt keine Möglichkeit, dies sofort zu tun.

cstamas
quelle