Schlüsseldatei
Archivierte Anleitung
Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Artikel für fortgeschrittene Anwender
Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.
Achtung!
Von dieser Variante wird abgeraten, so lange man sich nicht 100% sicher ist was man tut! Ansonsten ist die gesamte Verschlüsselung wirkungslos!
Die beschriebenen Alternativen sind im Regelfall vorzuziehen.
Hinweis:
Alle folgenden Befehle benötigen Root-Rechte. Man sollte also entweder immer sudo vor das betreffende Kommando setzen oder mit sudo -s Root-Status erlangen!
Diese Anleitung geht auf die Konfiguration und Einbindung von verschlüsselten LUKS-Datenträgern mittels einer Schlüsseldatei ein. Mit dieser lassen sich beliebig viele LUKS-Datenträger ohne extra Passworteingabe öffnen, jedoch ist der Schlüssel im Klartext gespeichert.
Vorbereitung¶
Die Vorbereitung ist identisch mit der des LUKS-Artikels. Dieser sollte zuerst einmal durchgearbeitet und verstanden werden.
Schlüsseldatei erstellen¶
Achtung!
Die erstellte Schlüsseldatei enthält das Passwort im Klartext, sie darf sich folglich nur auf einem verschlüsselten Datenträger befinden und nur für root lesbar sein [1].
mit bekanntem Passwort¶
Der Inhalt der Schlüsseldatei wird exakt als Passwort übernommen, sie darf also auch keinen Absatz am Ende enthalten, da dies sonst als Zeichen angesehen würde. Der folgende Befehl [3] fragt nach dem Passwort und speichert es in der angegebenen <Schlüsseldatei>
.
read -s -p "Password: " passw && echo -n $passw > <Schlüsseldatei> && passw=''
mit zufälligem Passwort¶
Der folgende Befehl erzeugt ein zufälliges Passwort mit 32 Stellen und speichert es in der angegebenen <Schlüsseldatei>
.
tr -dc '0-9a-zA-Z' </dev/urandom | head -c 32 > <Schlüsseldatei>
Einrichtung¶
Hinweis:
Sollte die Schlüsseldatei beschädigt oder gelöscht werden, könnten die damit verschlüsselten LUKS-Datenträger nicht mehr geöffnet werden. Deshalb sollte zu jedem ein zusätzliches, bekanntes Passwort hinzugefügt [2] oder die Schlüsseldatei separat verschlüsselt gesichert werden.
Bestehendes LUKS-Gerät¶
Soll ein bestehendes LUKS-Gerät mit einer neue Schlüsseldatei geöffnet werden können, ist wie folgt vorzugehen:
cryptsetup luksAddKey <Gerät> <Schlüsseldatei>
Das vorhandene Kennwort des LUKS-Gerätes ist einzugeben. Falls man eine Schlüsseldatei verwendet hat lautet der Befehl:
cryptsetup luksAddKey <Gerät> <neue_Schlüsseldatei> --key-file <alte_Schlüsseldatei>
Neues LUKS-Gerät¶
Hinweis:
Es ist aus Sicherheitsgründen empfehlenswert die Partition ein mal mit Zufallszahlen zu überschreiben, vor allen Dingen, wenn auf dieser vorher unverschlüsselte Daten gespeichert waren. [6] Ansonsten sind unter Umständen viele Dateien nach dem Verschlüsseln noch auslesbar.
Soll ein neues LUKS-Gerät mit einer Schlüsseldatei erzeugt werden, wird folgender Befehl eingesetzt [3]:
Achtung!
Alle bisherigen Daten auf dem betreffenden Gerät gehen verloren!
cryptsetup -c aes-xts-plain -s 512 luksFormat <Gerät> <Schlüsseldatei>
Öffnen¶
Manuell¶
Mit diesem Befehl wird das LUKS-Gerät per Schlüsseldatei geöffnet [3]:
cryptsetup luksOpen <Gerät> <Name> --key-file <Schlüsseldatei>
Beim Startvorgang¶
Zum Öffnen eines LUKS-Geräts beim Systemstart wird die folgende Zeile in angepasster Form [4] an die Datei /etc/crypttab angehängt [5].
<Name> UUID=<UUID> <Schlüsseldatei> luks
Anschließend müssen noch mit folgendem Befehl die Startdateien aktualisiert werden:
update-initramfs -u -k all
Entfernen¶
Eine Schlüsseldatei kann wie folgt entfernt werden:
cryptsetup luksRemoveKey <Gerät> <Schlüsseldatei>
Das vorhandene Kennwort des LUKS-Gerätes ist einzugeben. Falls man eine andere Schlüsseldatei verwendet lautet der Befehl:
cryptsetup luksRemoveKey <Gerät> <zu_entfernende_Schlüsseldatei> --key-file <andere_Schlüsseldatei>
bis Hardy¶
Wird Hardy verwendet, muss man einen bestimmten Slot löschen:
cryptsetup luksDelKey <Gerät> <Speicherplatz>
Das vorhandene Kennwort des LUKS-Gerätes ist einzugeben. Falls man eine andere Schlüsseldatei verwendet hat lautet der Befehl:
cryptsetup luksDelKey <Gerät> <Speicherplatz> --key-file <andere_Schlüsseldatei>
bei verlorener Schlüsseldatei¶
Ist die Schlüsseldatei verloren gegangen, muss man einen bestimmten Slot löschen:
cryptsetup luksKillSlot <Gerät> <Speicherplatz>
Das vorhandene Kennwort des LUKS-Gerätes ist einzugeben. Falls man eine andere Schlüsseldatei verwendet hat, lautet der Befehl:
cryptsetup luksKillSlot <Gerät> <Speicherplatz> --key-file <andere_Schlüsseldatei>