Seite 1 von 1

Schlüsselableitung funktioniert nicht

Verfasst: 02.01.2017 20:14:32
von duffytkone
Hi!

Habe versucht nach folgender Anleitung eine Schlüsselableitung bei meinem Debian testing einzurichten
https://wiki.ubuntuusers.de/LUKS/Schl%C ... ableitung/

Ziel ist es neben einer verschlüsselten sdd (/dev/sda5) auf dem das ganze Debian liegt auch noch eine verschlüsselte Festplatte (/dev/sdb4) für Daten hintereinander weg ohne zwei Passworteingaben einzubinden.

Wenn ich das System starte gebe ich ganz normal das erste Passwort ein.

Danach wird folgendes ausgegeben:

Code: Alles auswählen

systemd[1]: [/run/systemd/generator/systemd-cryptsetup@datacrypt. service:13] Failed to add required mount for, ignoring: lvmroot
Please enter passphrase for Disk XXX (datacrypt) on /mnt/datacrypt: 
Wenn ich dann das Passwort was ich zur Sicherheit zu der Festplatte hinzugefügt hatte eingebe, startet alles normal.

meine /etc/crypttab

Code: Alles auswählen

<target name>	<source device>		<key file>	<options>
lvmroot UUID=89afe99d-b094-4478-af0b-54754fa29f62 none luks
datacrypt UUID=5c428896-1577-4efb-9683-5724e202edbb lvmroot luks,keyscript=/lib/cryptsetup/scripts/decrypt_derived
blkid wirft aus:

Code: Alles auswählen

/dev/mapper/lvmroot: UUID="jKJDvW-xWCz-dxbS-zYAf-OUVZ-e97f-oQj5jz" TYPE="LVM2_member"
/dev/mapper/xxx--vg-root: UUID="7a483112-7f58-473f-8d25-0b07e72d2c84" TYPE="ext4"
/dev/sda1: UUID="3a39006b-2773-41f0-a535-1df7849f77b7" TYPE="ext2" PARTUUID="6a44d561-01"
/dev/sda5: UUID="89afe99d-b094-4478-af0b-54754fa29f62" TYPE="crypto_LUKS" PARTUUID="6a44d561-05"
/dev/sdb1: UUID="FA05-D528" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="b13adc15-f680-4400-9d67-a8921837095d"
/dev/sdb2: PARTLABEL="Microsoft reserved partition" PARTUUID="7d336a8c-4e0b-48ef-baf8-b5cfa339f88b"
/dev/sdb3: UUID="B0540A97540A6108" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="0b0d5d44-7f33-4700-84b2-396058bd128e"
/dev/sdb4: UUID="5c428896-1577-4efb-9683-5724e202edbb" TYPE="crypto_LUKS" PARTUUID="e1c69780-fa04-41ea-a9c9-9b86dca3731e"
/dev/mapper/xxx--vg-swap_1: UUID="e87f038c-891a-46a9-9087-d3759293a895" TYPE="swap"
/dev/mapper/datacrypt: LABEL="DATA" UUID="10e23d23-cdad-40db-942e-9b6314d3b423" TYPE="ext4"
Ich hab mich außerdem an folgenden schritten https://wiki.ubuntuusers.de/System_vers ... -editieren versucht, da debian testing ja auch mit systemd arbeitet.
Ich hab das aber auch in verschiedenen Einstellungen leider nicht hinbekommen.

Kann mir jemand weiterhelfen?

Re: Schlüsselableitung funktioniert nicht

Verfasst: 03.01.2017 10:41:39
von Profbunny
soweit ich mich erinnere, funktioniert das mit systemd nicht. ich habe einen direkten key dafür auf der verschlüsselten platte angelegt,
damit kommt systemd klar.

Re: Schlüsselableitung funktioniert nicht

Verfasst: 03.01.2017 10:58:59
von wanne
Habe nirgends gesehen dass irgend welche keyscripts mit Systemd funktioniert haben.
Glaube nicht, dass du Schlüsselableitung und Systemd zum laufen bekommst.
duffytkone hat geschrieben:Ziel ist es neben einer verschlüsselten sdd (/dev/sda5) auf dem das ganze Debian liegt auch noch eine verschlüsselte Festplatte (/dev/sdb4) für Daten hintereinander weg ohne zwei Passworteingaben einzubinden.
Für diesen Zweck bietet die /etc/crypttab extra eine eigene Spalte (keyfile) an.
Verstehe nicht, warum das ums verrecken keiner nutzen will und alle irgend welche Workarounds bauen. Der Debian installer spielt da auch ganz oben mit.

Das geht so (als root)

Code: Alles auswählen

touch /etc/keyfile # Keyfile anlegen
chmod 600 /etc/keyfile #keyfile unlesbar machen
haed -c 16 /dev/urandom > /etc/keyfile #Zufälligen Schlüssel erzeugen
cryptsetup luksAddKey --key-file /etc/keyfile /dev/disk/by-partuuid/e1c69780-fa04-41ea-a9c9-9b86dca3731e #key hinzufügen
Deien crypttab muss dann so aussehen:

Code: Alles auswählen

lvmroot UUID=89afe99d-b094-4478-af0b-54754fa29f62 none luks
datacrypt  /dev/disk/by-partuuid/e1c69780-fa04-41ea-a9c9-9b86dca3731e /etc/keyfile luks
Du kannst per gdisk und c und 4 vielleicht noch ein PARTLABEL hinzufügen, dann musst du nicht mit den hässlichen uuids rumarbeiten.
Ist aber nur zur übersichtlichkeit.

Re: Schlüsselableitung funktioniert nicht

Verfasst: 04.01.2017 01:10:15
von breakthewall
Das Problem hier ist eindeutig Systemd. Selbst in der Manpage "man crypttab" steht geschrieben, dass Systemd keine Keyscripts unterstützt. Doch was du vor hast ist einfach mit Schlüsseldateien zu realisieren wie der Vorposter bereits erläutert hat. So kannst beliebige Volumes via Schlüsseldatei öffnen, während das eine Volume welches die Schlüsseldateien enthält via Passwort geöffnet wird. Funktioniert wunderbar, allerdings ist etwas Handarbeit gefragt.

Re: Schlüsselableitung funktioniert nicht

Verfasst: 06.01.2017 19:29:35
von duffytkone
vielen Dank an @wanne deine Anleitung hat geholfen!

Ich habe sie nur ein wenig noch angepasst, (wahrscheinlich hattest du dich einfach vertippt);-)

Code: Alles auswählen

touch /etc/keyfile # Keyfile anlegen
chmod 600 /etc/keyfile #keyfile unlesbar machen
head -c 16 /dev/urandom > /etc/keyfile #Zufälligen Schlüssel erzeugen
cryptsetup luksAddKey /dev/disk/by-partuuid/e1c69780-fa04-41ea-a9c9-9b86dca3731e /etc/keyfile #key hinzufügen
Und dann die /etc/crypttab wie von dir beschrieben geändert.

Bisher hatte ich es mit der Ableitung unter Jessie gemacht, da hat es noch funktioniert, aber so klappt es ja auch ;-)

Re: Schlüsselableitung funktioniert nicht

Verfasst: 07.01.2017 10:55:08
von wanne
Laut man cryptsetup sollte

Code: Alles auswählen

cryptsetup luksAddKey /dev/sdxY keyfile
das gleiche machen wie

Code: Alles auswählen

cryptsetup luksAddKey --key-file keyfile /dev/sdxY
machen. Zumindest habe ich das so verstanden.
Aber hat ja funktioniert.

Re: Schlüsselableitung funktioniert nicht

Verfasst: 07.01.2017 10:58:17
von Benno007
Ich hatte die verlinkte UU Wiki-Anleitung um cryptroot usw. ergänzt, damit ging es trotz systemd. Dort verlinkt unter "Beim Startvorgang".