Will man seine Daten auf einem Linux-Laptop sicher vor allen Blicken haben, auch wenn dieser gestohlen wird – dann verschlüsselt man seine Daten. Am besten wird natürlich das komplette System verschlüsselt.
Die Verschlüsselung bietet folgenden Schutz – wenn der Rechner mit einem Live-System gestartet wird, bekommt man über dieses keinen Zugriff, wenn man das Luks-Passwort nicht kennt. Wird die Festplatte ausgebaut und an einen anderen Rechner angeschlossen, bekommt man keinen Zugriff auf die Daten, wenn man das Luks-Passwort nicht kennt.
So gesehen absolut perfekt – nervig ist jedoch die Eingabe des Passwortes zur Entschlüsselung des Systems beim System-Start. Diese Eingabe ist auch nicht wirklich sicherer – wenn man nicht gerade ein anderes Passwort benutzt, als das Passwort für den eigentlichen Login. Wirklich sinnvoll ist die Eingabe des Passwortes ja auch nur dann – wenn das Betriebssystem nicht startet, also wenn die Festplatte ausgebaut wird und beim Zugriff mit einem Live-System.
In diesem Beitrag lesen Sie, wie Sie das System unter Debian, sowie unter Ubuntu und darauf basierenden Linux-Distributionen das System automatisch entschlüsseln.
Mit Clevis Linux automatisch entschlüsseln
Zu Beginn – automatisch entschlüsselt soll die Wurzel-Partition werden, der Rest (/home)wird ja mit dem Passwort beim Login entschlüsselt. Sie müssen diese Partition kennen – dies zeigt etwa ein Blick in die fstab:
cat /etc/fstab
fdisk -l
Zur Erleichterung starten wir zu Beginn folgenden Befehl:
export PATH=/sbin:$PATH
Schnell gesagt, die Partition „/“ muss entschlüsselt werden – in meinem Beispiel also „/dev/nvme0n1p3„. Natürlich muss der Computer einen TPM-Chip eingebaut haben – erhalten Sie auf folgenden Befehl eine Ausgabe, ist dies der Fall:
dmesg | grep -i tpm
Des weiteren werden alle folgenden Befehle als root ausgeführt und Sie müssen das Passwort zur Entschlüsselung kennen. Als Erstes werden die nötigen Pakete installiert:
apt install clevis clevis-tpm2 clevis-luks clevis-udisks2 clevis-systemd clevis-initramfs
Jetzt müssen wir herausfinden welchen Hash der TPM-Chip unterstützt – dies zeigt folgender Befehl:
tpm2_pcrread
Der Hash, hinter dem Zahlenfolgen zu finden sind, wird unterstützt – in diesem Fall „sha256“ – diesen nutzen wir anschließend.
Jetzt speichern wir den Hash des Passwortes zur Entschlüsselung auf dem TPM-Chip, hier wird die root-Partition und der Hash angegeben – in meinem Beispiel also:
clevis luks bind -d /dev/nvme0n1p3 tpm2 '{"pcr_bank":"sha256","pcr_ids":"0,1,7"}'
Nach der Bestätigung mit Eingabe, müssen Sie das Luks-Passwort zur Entschlüsselung des Systems eingeben. Zuletzt wird die neue Einstellung in das Initramfs gespeichert:
update-initramfs -u -k 'all'
Jetzt können Sie das System neu starten – haben Sie die root-Partition richtig angegeben, wird die Eingabe des Passwortes zwar ein bis zwei Sekunden aufleuchten (TPM-Chips sind nicht die schnellsten), aber automatisch eingegeben und das System gestartet.
2 Reaktionen
Ich kann den Sinn des Verfahrens nicht erkennen.
Mein Laptop bzw. das System darauf ist vollverschlüsselt mit LUKS.
Das heißt, nach dem Einschalten des Laptop erscheint die Aufforderung, das Passwort zur Entschlüsselung des Laufwerk einzugeben.
Dann startet, die Entschlüsselung. Ein Benutzerpasswort muss ich nicht eingeben werden, da habe ich automatische Anmeldung eingestellt.
Macht bei mir als einziger Benutzer bzw. mit nur einem Benutzerkonto auch Sinn.
Ich gebe also nur ein Passwort ein, ohne dass der Zugriff auf auf meine System und das Homeverzeichnis nicht möglich ist.
Bei der Verschlüsselung geht es darum – wenn das Betriebssystem läuft, musst Du Dich sowieso mit Deinem Passwort anmelden, ohne Passwort kommst Du nicht an die Daten.
Ist die Festplatte (SSD) jedoch nicht verschlüsselt, kannst die Festplatte ausbauen und an einen anderen Rechner anschließen, oder eben mit einem Live-System darauf zugreifen.
In diesem Sinne – die Verschlüsselung bringt nur dann etwas, wenn das Betriebssystem nicht läuft.