Ziel ist die Vollverschlüsselung der Festplatte(n) mit LUKS. Der Boot soll dabei über eine SD-Karte bzw einen USB-Stick erfolgen, der auch den Schlüssel für die Festplatte speichert.
Voraussetzung
Zunächst wird das Betriebssystem installiert. Dabei muss die /boot und ggf. EFI-Partition auf das externe Speichermedium gelegt werden. Das Root-Partition muss während des Setups bereits mit einem Passwort verschlüsselt werden.
openSUSE / SLES
- Schlüsseldatei erzeugen:
Code: Alles auswählen
dd if=/dev/urandom of=/boot/key bs=512 count=4 - Dateirechte ändern:
Code: Alles auswählen
chmod 400 /boot/key - "/etc/default/grub" zum Schreiben öffnen und folgenden Wert setzen:
Code: Alles auswählen
GRUB_ENABLE_CRYPTODISK=y - Schlüsseldatei dem verschlüsselten Laufwerk hinzufügen:
Code: Alles auswählen
sudo cryptsetup luksAddKey /dev/sdaX /boot/key - cryptsetup mitteilen, dass es zum Entschlüsseln die Schlüsseldatei verwenden soll. Dazu in der Datei "/etc/crypttab" den 3. Wert "none" in "/boot/key" ändern.
- Ramdisk die Schlüsseldatei bekannt machen. Dazu die Datei "/etc/dracut.conf.d/99-initcrypt.conf" zum Schreiben öffnen und folgenden Eintrag setzen:
Code: Alles auswählen
install_items+=" /boot/key " - Ramdisk neu erzeugen:
Code: Alles auswählen
mkinitrd
- Schlüsseldatei erzeugen:
Code: Alles auswählen
dd if=/dev/urandom of=/boot/key bs=512 count=4 - Dateirechte ändern:
Code: Alles auswählen
chmod 400 /boot/key - Schlüsseldatei dem verschlüsselten Laufwerk hinzufügen:
Code: Alles auswählen
sudo cryptsetup luksAddKey /dev/sdaX /boot/key - cryptsetup mitteilen, dass es zum Entschlüsseln die Schlüsseldatei verwenden soll. Dazu in der Datei "/etc/crypttab" den 3. Wert "none" in "/boot/key" ändern.
- Die Datei "/etc/cryptsetup-initramfs/conf-hook" zum Schreiben öffnen und folgendes Wertepaar setzen:
Code: Alles auswählen
KEYFILE_PATTERN=/boot/key - Die Datei "/etc/initramfs-tools/initramfs.conf" zum Schreiben öffnen und folgendes Wertepaar setzen:
Code: Alles auswählen
UMASK=0077 - Ramdisk neu erzeugen:
Code: Alles auswählen
update-initramfs -u -k all