Guten Abend,
ich versuche derzeit einem vorhandenen LUKS-Volume eine neue Schlüsseldatei hinzuzufügen. Dabei soll es sich um eine GPG verschlüsselte Datei handeln. Ich scheitere jedoch daran, diese Datei so als Schlüssel hinzuzufügen, dass ich das Volume anschließend damit öffnen kann.
Das ursprüngliche LUKS-Volume habe ich folgendermaßen erzeugt:
|
Quellcode
|
1
|
# cryptsetup -c aes-xts-plain -s 512 luksFormat /dev/sda
|
Dieses lässt sich über die festgelegte Passphrase erfolgreich öffnen.
Für die Erstellung der neuen Schlüsseldatei habe ich mich an diesem
Tutorial orientiert. Die zufällige Zeichenkette habe ich wie folgt erstellt:
|
Quellcode
|
1
|
# head -c 45 /dev/random | uuencode -m - | head -n 2 | tail -n 1 > key.decrypted
|
Die verschlüsselte GPG-Datei habe ich, nach Anlehnung an ein weiteres Tutorial, so erzeugt:
|
Quellcode
|
1
|
# gpg -c --cipher-algo TWOFISH --digest-algo SHA51n2 --s2k-mode 3 --s2k-digest-algo SHA512 key.decrypted
|
Um zu überprüfen, ob die verschlüsselte Datei auch enthält, was sie enthalten sollte, habe ich diese entschlüsselt. Die angezeigte Zeichenkette ist identisch mit der ursprünglich erzeugten Zeichenkette.
|
Quellcode
|
1
|
# gpg --decrypt key.gpg
|
Nach meinem Verständnis muss die entschlüsselte Schlüsseldatei (key.decrypted) dem LUKS-Volume als neue Schlüsseldatei hinzugefügt werden:
|
Quellcode
|
1
|
# cryptsetup luksAddKey /dev/sda key.decrypted
|
Danach sollte es möglich sein, das LUKS-Volume mit Hilfe des verschlüsselten GPG-Schlüssels zu öffnen:
|
Quellcode
|
1
|
# gpg --decrypt key.gpg | cryptsetup luksOpen /dev/sda luks
|
Dann kommt die Aufforderung zur Eingabe der GPG-Passphrase und der Vorgang wird mit diesen beiden Zeilen quittiert:
|
Quellcode
|
1
2
|
gpg: encrypted with 1 passphrase
No key available with this passphrase
|
Das ist nicht, was ich mir erhofft hatte
Um auszuschließen, dass die Schlüsseldateien irgendwelche Fehler beinhalten, habe ich ein neues LUKS-Volume auf einer anderen Festplatte erstellt. Dieses neue Volume habe ich von Anfang an mit der GPG-Schlüsseldatei erzeugt.
|
Quellcode
|
1
|
# gpg --decrypt key.gpg | cryptsetup -c aes-xts-plain -s 512 luksFormat /dev/sdb
|
Dieses Volume kann ich erfolgreich mit der GPG-Schlüsseldatei öffnen:
|
Quellcode
|
1
|
# gpg --decrypt key.gpg | cryptsetup luksOpen /dev/sdb luks
|
Sämtliche Anleitungen und Tutorials, die ich zu cryptsetup, gpg etc. finden konnte, beziehen sich immer nur auf die zweite Variante. Ich bin fast gezwungen zu glauben, dass das hinzufügen der Klartextschlüsseldatei nicht funktioniert hat oder vielleicht gar nicht den gewünschten Effekt hat.
Meine Frage an euch daher, was habe ich falsch gemacht oder wie kann ich es erreichen, nachträglich die neue Schlüsseldatei hinzuzufügen?