Schlüsselableitung funktioniert nicht

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
duffytkone
Beiträge: 60
Registriert: 29.02.2012 22:46:28

Schlüsselableitung funktioniert nicht

Beitrag von duffytkone » 02.01.2017 20:14:32

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?

Benutzeravatar
Profbunny
Beiträge: 592
Registriert: 04.04.2004 11:12:29
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Bautzen

Re: Schlüsselableitung funktioniert nicht

Beitrag von Profbunny » 03.01.2017 10:41:39

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.
Rechner / Server Debian sid

wanne
Moderator
Beiträge: 7465
Registriert: 24.05.2010 12:39:42

Re: Schlüsselableitung funktioniert nicht

Beitrag von wanne » 03.01.2017 10:58:59

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.
rot: Moderator wanne spricht, default: User wanne spricht.

breakthewall
Beiträge: 507
Registriert: 30.12.2016 23:48:51

Re: Schlüsselableitung funktioniert nicht

Beitrag von breakthewall » 04.01.2017 01:10:15

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.

duffytkone
Beiträge: 60
Registriert: 29.02.2012 22:46:28

Re: Schlüsselableitung funktioniert nicht

Beitrag von duffytkone » 06.01.2017 19:29:35

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 ;-)

wanne
Moderator
Beiträge: 7465
Registriert: 24.05.2010 12:39:42

Re: Schlüsselableitung funktioniert nicht

Beitrag von wanne » 07.01.2017 10:55:08

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.
rot: Moderator wanne spricht, default: User wanne spricht.

Benno007
Beiträge: 111
Registriert: 26.01.2016 19:25:05

Re: Schlüsselableitung funktioniert nicht

Beitrag von Benno007 » 07.01.2017 10:58:17

Ich hatte die verlinkte UU Wiki-Anleitung um cryptroot usw. ergänzt, damit ging es trotz systemd. Dort verlinkt unter "Beim Startvorgang".

Antworten