Um Daten vor fremden Zugriffen zu schützen, sollte man diese Verschlüsseln. Ein recht effizienter und letztendlich sehr anwenderfreundlicher Weg dazu ist die Verschlüsselung einer ganzen Partition der Festplatte. Linux kann das mit Boardmitteln. Im Folgenden ist ‚X‚ die Festplatte und ‚a‚ die Zielpartition.
Die notwendigen Pakete heißen ‚cryptsetup‘ und ‚lvm2‘. Sie werden wie folgt installiert:
1 |
sudo apt install cryptsetup lvm2 |
Da auf einer verschlüsselten Partition defekte Blöcke besonders blöd wären, sollte man vorweg die paar Minuten eines Tests investieren. Das übernimmt das Tool ‚badblocks‘:
1 |
sudo /sbin/badblocks -c 10240 -s -w -t random -v /dev/sd[X]a |
Um das Knacken des Codes zu erschweren, wird die Partition mit zufälligen Werten vorbeschrieben. Das muss man nicht machen, ja nach eigener Paranoia wird es aber empfohlen ;-). ACHTUNG: Spätestens nach diesem Schritt sind alle bisher gespeicherten Daten auf der Platte weg!
1 |
sudo dd if=/dev/urandom of=/dev/sd[X]a |
Nun geht es an die eigentliche Verschlüsselung. Initilisiert (und auch endültig überschrieben!) wird die Partition mittels:
1 |
sudo cryptsetup --verify-passphrase --hash=sha256 --cipher=aes-cbc-essiv:sha256 --key-size=256 luksFormat /dev/sd[X]a |
Die verschlüsselte Partition muss nun entsperrt und nutzbar gemacht werden. Hier kommt lvm2 ins Spiel. Zunächst wird die verschlüsselte Partition durch die Eingabe von …
1 |
sudo cryptsetup luksOpen /dev/sd[X]a home |
… entsperrt und auf das Device „/dev/mapper/home“ gemappt. Dieses kann nun wie eine normale Partition genutzt werden:
1 2 3 4 |
# Formatieren sudo mkfs.ext4 /dev/mapper/home # Einbinden sudo mount /dev/mapper/home /mnt |
Nun möchte man diese Aktion nicht bei jedem Systemstart durchführen. Hierzu automatisiert man das Entsperren durch einen Eintrag in der Datei „/etc/crypttab“ …
1 2 |
# <target device> <source device> <key file> <options> home /dev/sd[X]a none luks |
… und bindet das neue Device ganz normal über die „/etc/fstab„ein:
1 2 |
# <file system> <mount point> <type> <options> <dump> <pass> /dev/mapper/home /home ext4 defaults 1 2 |
Die LUKS-Verschlüsselung kennt 8 verschiedene Slots für Passwörter. Mit der oben angegebenen Erklärung wird das Passwort im Slot 0 gesetzt. Das Setzen weiterer oder Entfernen alter Passwörter erfolgt interaktiv per Aufruf von:
1 2 3 4 |
# neues Passwort setzen sudo cryptsetup -y luksAddKey /dev/sd[X]a # Passwort entfernen sudo cryptsetup luksRemoveKey /dev/sd[X]a |
Der Parameter „-y“ stellt dabei sicher, dass man das neue Passwort einmal bestätigen muss. Wichtig: Bevor man ein altes Passwort löscht, sollte man einmal probieren, ob das neue Passwort auch passt ;-).
Keine Antworten