Verschlüsselte Image-Datei für home-Partition anlegen

Hier möchte ich zeigen, wie schnell man eine Verschlüsselte Home-Partition unter Linux einrichten kann. Ich werde hier nur die Variante mit manueller Passworteingabe erklären, da ich selbst auch nur dieses Verfahren nutze. Mit Keydatei die home-Partition zu entschlüsseln macht für mich keinen Sinn, da könnte ich das auch gleich sein lassen. Es geht ja um folgenden Fall – mein Laptop, PC oder NAS wo die Verschlüsselung eingerichtet ist, wird gestohlen aber meine Daten sollen geheim bleiben. Wenn er nun das ganze NAS hat, ist er auch im Besitz der Keydatei und kann die Daten entschlüsseln. Es würde natürlich auch mit einem zusätzlichem Stick gehen, aber so oft starte ich mein NAS nicht neu, daher reicht mit die einmalige Passworteingabe. 
So jetzt aber an die Arbeit.

1. benötigte Software installieren

aptitude install cryptsetup libpam-mount

2. Image-Datei anlegen

dd if=/dev/zero of=tresor.aes bs=1M count=1024

Hiermit wird eine Imagedatei von 1GB angelegt und mit Nullen gefüllt. Wer es größer oder kleiner haben möchte, muß nur den letzten Wert(1024) anpassen.

3. Einhängen des Images als Loopdevice

losetup -f
losetup /dev/loop1 tresor.aes

Mit dem ersten Befehl wird das nächste frei Loop-Device angezeigt. Dieses wird gleich benutzt. Der zweite Befehl hängt das erstellte Image als Loop-Device ein. In meinem Fall unter /dev/loop1

4. Image mit Zufallszahlen beschreiben

dd if=/dev/urandom of=/dev/loop1 bs=1M count=50

Hiermit werden die ersten 50MB mit Zufallszahlen gefüllt um die Sicherheit zu erhöhen. Man kann natürlich auch das gesamte Image im Punkt 1. mit urandom befüllen, aber das dauert.

5. Verschlüsselung anlegen

cryptsetup luksFormat -c aes-cbc-essiv:sha256 -s 256 -y /dev/loop1

Image wird mit 256 Bit AES verschlüsselt. Hier muß mit „YES“ bestätigt werden und danach wird das Passwort festgelegt.

6. Image ins System (Device-Mapper) einbinden

cryptsetup luksOpen /dev/loop1 tresor

7. Filesystem erstellen

mkfs.ext3 /dev/mapper/tresor

In meinem Fall benutze ich das gleiche Dateisystem wie mein unverschlüsseltes Home-Verzeichnis. Man kann natürlich auch vfat oder ext2 benutzen.

8. Image schließen und Loop-Device aushängen

cryptsetup luksClose tresor
losetup -d /dev/loop1

9. verschlüsseltes Image mounten

mount.crypt tresor.aes /media/tresor/
# oder gleich in das entsprechende home-Verzeichnis mounten
mount.crypt /pfad/zum/image/tresor.aes /home/<username>/

Nach der Passworteingabe ist die Imagedatei eingebunden und kann ganz normal verwendet werden.

10. Überprüfung

# welche Devices wurden erstellt?
ls -l /dev/mapper/
# Info über Device ausgeben
cryptsetup status /dev/dm-1