Voraussetzung zum Zugriff auf verschlüsselte LUKS-Datenträger ist das Paket „cryptsetup“, das wir installieren. Damit kann man dann eine ganze Festplatte, eine Partition, einen USB-Stick oder auch nur einen Container verschlüsseln. In diesem Beispiel werde ich eine ganze Festplatte mit LUKS verschlüsseln.
apt-get install cryptsetup
Mit fdisk -l lasse ich mir alle angeschlossenen Festplatten anzeigen.
# fdisk -l
Das sieht dann für meine zweite Festplatte so aus:
Disk /dev/sdb: 8 GiB, 8589934592 bytes, 16777216 sectors
Disk model: VBOX HARDDISK
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Wer statt der eingebauten Festplatte einen USB-Stick verschlüsseln will, kann den Befehl
lsblk -Sfo +size
verwenden, um die Bezeichung bzw. Kennung des USB-Sticks festzustellen. Im nächsten Schritt verschlüsseln wir dann unsere Festplatte/USB-Stick. Vorsicht ist beim letzten Parameter geboten (/dev/sdb oder eben etwas anders, abhängig von eurem System), der das Device angibt. Die Passphrase sollte entsprechend gewählt werden.
/sbin/cryptsetup --iter-time 5000 --use-random luksFormat --type luks2 /dev/sdb
Im nächsten Schritt öffnen wir mit einem virtuellen Mapping unser Device.
/sbin/cryptsetup open /dev/sdb /local_storage
Jetzt fehlt noch die Formatierung unseres Devices.
/sbin/mkfs.ext4 /dev/mapper/local_storage
Und die Einbindung in das Dateisystem
mount /dev/mapper/local_storage /mnt
Natürlich ist es möglich die Festplatte/Partition/USB-Stick auch wie fstab einbinden zu lassen. Dazu speichern wir in einem keyfile einen Schlüssel zum Öffnen.
touch /root/.keyfile
/sbin/cryptsetup luksAddKey /dev/sdb /root/.keyfile
chmod 400 /root/.keyfile
Es besteht auch die Möglichkeit den Schlüssel nicht lokal zu speichern, sondern z.B via https von einem Remote-Server herunterzuladen. Mehr dazu hier. https://github.com/stupidpupil/https-keyscript
In der Datei /etc/crypttab machen wir noch folgenden Eintrag. UUID entsprechend anpassen.
local_storage UUID=fc9b3180-f35a-4760-a027-223049e0d3ec /root/.keyfile luks
Die /etc/fstab könnte dann mit folgender Zeile ergänzt werden.
/dev/mapper/local_storage /mnt ext4
Nach einem Reboot sollte dann die verschlüsselte Festplatte automatisch eingebunden sein. Praktisch ist LUKS für Backups auf externen Festplatten oder USB-Sticks, auf denen vertrauenswürdige Daten transportiert werden können.
Weiterführende Links:
https://wiki.ubuntuusers.de/System_verschluesseln/
https://www.cyberciti.biz/security/howto-linux-hard-disk-encryption-with-luks-cryptsetup-command/
https://www.kuketz-blog.de/dm-crypt-luks-daten-unter-linux-sicher-verschluesseln/
0 Kommentare