Nehmen wir einmal an, wir wollen Daten sicher von A nach B transportieren. Über Netzwerk sollte dies per SCP kein Problem darstellen. Was ist jedoch wenn keine Verbindung besteht und wir die Daten auf CDs oder DVDs herumtragen müssen?
Richtig erkannt: Das Einzige was hilft ist Verschlüsselung. Nur wie?
Ich gehe einmal von einem aktuellen Kernel aus, welcher mit folgenden Optionen gebaut wurde:
Device drivers -> Block devices -> Loopback device support
Module is called „loop“.
Creates /dev/loop0, /dev/loop1, …
Device drivers -> Multi‐device support (RAID and LVM)
-> Multiple devices driver support (RAID and LVM)
-> Device mapper support
-> Crypt target support
Module is called „dm‐crypt“.
Cryptographics options -> Cryptographic API
Select the ciphers you want.
e.g., AES cipher algorithms, module „cipher‐aes“
Dieses Setup ermöglicht uns nämlich die Verschlüsselung selbst, welche sich mit Hilfe von Scripts sogar relativ benutzerfreundlich handhaben lässt. Angenommen wir haben ein fertiges ISO‐File. Unser entsprechendes Script um es zu verschlüsseln könnte wie folgt aussehen:
!/bin/bash
MYISO=$1
echo „Encrypting $MYISO“
echo „Creating loop device for $MYISO“
losetup /dev/loop5 $MYISO
echo „Creating device mapper encryption target“
cryptsetup ‑y ‑c aes ‑h ripemd160 ‑s 256 create encryptmyiso /dev/loop5
echo „Inplace, destructive encryption of $MYISO“
echo „Interruption of this process will destroy $MYISO“
echo „To continue, type YES“
read ENCRYPTISO
if [ $ENCRYPTISO == „YES“ ]
then
STAMP=‘date‘
echo „Encryption started at $STAMP“
cat $MYISO > /dev/mapper/encryptmyiso
STAMP=‘date‘
echo „Encryption finished at $STAMP“
else
echo „Aborting“
fi
echo „Cleanup“
dmsetup remove encryptmyiso
losetup ‑d /dev/loop5
if [ $ENCRYPTISO == „YES“ ]
then
echo „Done. $MYISO is now encrypted.“
fi
Wenn dieses Script gelaufen ist, besitzen wir nun ein verschlüsseltes Image, welches wir nun auf eine entsprechende Silberscheibe brennen können. Gemounted wird das Medium wie folgt:
losetup /dev/loop7 /dev/cdrom
cryptsetup ‑c aes ‑h ripemd160 ‑s 256 create dvd /dev/loop7
mount /dev/mapper/dvd /mnt/cdrom
Unmounten:
umount /mnt/cdrom
dmsetup remove dvd
losetup ‑d /dev/loop7