Für eines meiner letzten Projekte war es notwendig Datenträger per Post auszutauschen. Da diese sensible Daten enthielten sollten sie Verschlüsselt werden. Hierfür bietet sich dm-crypt an. Um das Handling etwas zu erleichtern habe ich mich dazu entschieden nicht den Datenträger direkt zu verschlüsseln sondern auf diesem verschlüsselte Container abzulegen.
Containerdatei erstellen:
dd if=/dev/zero of=/tmp/files.luks bs=1M count=5
Finden eines freien loop devices
losetup -f
Einbinden des Containers in das oben zurückgegebene loop device
losetup /dev/loop0 /tmp/files.luks
Formatieren des loop devices mit dem crypt filesystem udn vergeben einer passphrase
cryptsetup -c aes-xts-plain64 -s 512 -h sha512 -y luksFormat /dev/loop0
öffnen des Containers
cryptsetup luksOpen /dev/loop0 files
Dateisystem anlegen und einbinden
mkfs.ext4 /dev/mapper/files
mkdir -p /mnt/files
mount /dev/mapper/files /mnt/files
Ab hier steht das verschlüsselte Device zur Verfügung.
Einbinden des Devices:
$LOOP=$(losetup -f)
losetup $LOOP /tmp/files.luks
cryptsetup luksOpen $LOOP files
mount /dev/mapper/files /mnt/files
Aushängen des Devices:
umount /mnt/files
cryptsetup remove files