Da ich ein wunderbares HowTo gefunden habe muss ich zum Vorgehen keine weiteren Ausführungen machen, denke ich. Falls jemand Fragen hat sollten sie hier in den Kommentaren gepostet werden.
Mit dem Einverständnis von Aaron Spettl kopiere ich das HowTo nach hier. Redundanz schadet nie.
Die einzige Anpassung, die ich vornehme, ist das Dateisystem von ext2 auf ext4 zu aktualisieren.
Ziel:
Ein verschlüsselter Container, den man bei Bedarf in das Dateisystem einbindet. Dies soll ohne Neukompilieren des Kernels funktionieren und keine besonderen Pakete benötigen – sowie in meinem Fall auch unter Debian Testing lauffähig sein.
Pakete:
Wir installieren cryptsetup und loop-aes-utils.
1. Erstellen der Containerdatei
An einem beliebigen Ort legen wir die Datei an, die unsere Daten speichern soll – hier 10 GB groß (mit Zufallsdaten gefüllt):
dd if=/dev/urandom of=/home/user/daten.safe bs=1M count=10240
2. Loop-Device
Als root legen wir ein Device an, das einfach auf diese Datei verweist:
losetup /dev/loop0 /home/user/daten.safe
3. Verschlüsselung einrichten
Wir richten nun die Verschlüsselung (Standard: AES mit 256 Bit) auf diesem Device ein – dabei muss das Kennwort angegeben werden:
cryptsetup -y create datensafe /dev/loop0
4. Formatierung
Der Container ist nun im System unverschlüsselt unter /dev/mapper/datensafe vorhanden. Nun richten wir das Dateisystem ein (hier ext4):
mkfs.ext4 /dev/mapper/datensafe
5. Mount
Nach der Formatierung können wir das Device unter einem beliebigen Verzeichnis einhängen (das existieren muss):
mount -t ext4 /dev/mapper/datensafe /mnt/datensafe
Nun kann man auf /mnt/datensafe ganz normal arbeiten, also speziell auch Zugriffsberechtigungen (restriktiv) setzen.
6. Aushängen
umount funktioniert ganz normal, danach noch den Container schließen und das Loopdevice freigeben:
umount /mnt/datensafe/
cryptsetup remove datensafe
losetup -d /dev/loop0
Tipp: Automatisierung mit sudo
Der mount/umount-Prozess inklusive Öffnen/Schließen des Loopdevices und des Containers kann man in ein Skript packen (und auf einem Ubuntu-System dem User mit sudo die Rechte dafür geben).
#!/bin/sh
# datensafe_mount.sh
LOOPDEV=/dev/loop0
SAFE=/home/user/datensafe
CRYPTNAME=datensafe
MNT=/mnt/datensafe
FS=ext4
/sbin/losetup $LOOPDEV $SAFE
/sbin/cryptsetup create $CRYPTNAME $LOOPDEV
/bin/mount -t $FS /dev/mapper/$CRYPTNAME $MNT
und
#!/bin/sh
# datensafe_umount.sh
LOOPDEV=/dev/loop0
SAFE=/home/user/datensafe
CRYPTNAME=datensafe
MNT=/mnt/datensafe
/bin/umount $MNT
/sbin/cryptsetup remove $CRYPTNAME
/sbin/losetup -d $LOOPDEV
Eine Antwort zu “Verschlüsselte Container”
[…] Der guten Ordnung halber trenne ich den Artikel hier in die Anleitung für FDE und die Anleitung für Container. […]