Verschlüsselte Home-Partition unter Gentoo automatisch mounten
Wer zwei verschiedene Festplatten für Root und Home hat und beide verschlüsselt, möchte in der Regel sein Passwort trotzdem nicht zweimal eingeben. Stattdessen kann man die Root-Partition mit einem Passwort schützen, welches man beim Booten eingibt, und die Home-Partition schützt man durch eine Key-Datei, die auf der Root-Partition gespeichert wird.
Nachdem die Root-Partition dann durch die manuelle Passwort-Eingabe entschlüsselt wurde, kann die Home-Partition dank der vorhandenen Key-Datei automatisch entschlüsselt werden. Weil die Key-Datei selbst auf einer verschlüsselten Root-Festplatte liegt, kann ein Angreifer ohne das Passwort trotzdem keine der beiden Festplatten entschlüsseln.
Unter Gentoo können wir das so erledigen: Zunächst erstellen wir uns eine zufällige Key-Datei.
dd if=/dev/urandom of=/root/keyfile-home bs=1024 count=4
chmod 0400 /root/keyfile-home
Dies erstellt eine Key-Datei mit 4096 zufälligen Bits.
Durch die Berechtigung stellen wir sicher, dass nur root
die Datei
lesen darf und nicht ungewollt verändert.
Diese Key-Datei tragen wir nun als Schlüssel in unsere verschlüsselte Home-Partition ein:
cryptsetup luksAddKey /dev/disk/by-partlabel/HOME /root/keyfile-home
Ich verwende, soweit es funktioniert, die Adressierung von Partitionen über
GPT-Partitionslabels. Wenn die Partition kein Partitionslabel hat, kann
man natürlich die Adressierung über /dev/sdXN
oder /dev/disk/by-uuid/
verwenden.
Damit kann die Partition nun bereits mit der Key-Datei geöffnet werden. Um
das beim Boot zu automatisieren, verwenden wir bei Gentoo mit OpenRC
(anders als bei systemd-basierten Distributionen) die Datei
/etc/conf.d/dmcrypt
.
In diese tragen wir unsere Home-Partition und unsere Key-Datei ein:
target=home
source='/dev/disk/by-partlabel/HOME'
key='/root/keyfile-home'
Anschließend müssen wir noch sicherstellen, dass dmcrypt
beim Booten
gestartet wird:
rc-update add dmcrypt boot
Und zuletzt mounten wir die entschlüsselte Partition mit /etc/fstab
:
/dev/mapper/home /home ext4 rw,noatime 0 1
Mit dieser Konfiguration wird die Partition /dev/disk/by-partlabel/HOME
nun beim Booten automatisch mit einer Key-Datei von der (zuvor
entschlüsselten) Root-Partition entschlüsselt und gemountet.