Verschlüsselte Container

closeDieser Artikel wurde vor 3 Jahren 5 Monaten 8 Tagen veröffentlicht. Die Informationen in diesem Artikel sind möglicherweise veraltet. Bitte benutze die Suche oder das Archiv, um nach neueren Informationen zu diesem Thema zu suchen.

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).

1
2
3
4
5
6
7
8
9
10
11
12
#!/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

1
2
3
4
5
6
7
8
9
10
11
#!/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

Über David

Mein Name ist David Mändlen und ich blogge hier über GNU/Linux-Themen, die mich interessieren. Schwerpunktmäßig kann man sich von mir an dieser Stelle Anleitungen und Kommentare rund um freie Software erwarten, insbesondere mit einem starken Fokus auf sicherheitsrelevante Themen. Mein eigenes Blog findet ihr unter lairddave.wordpress.com. Dort schreibe ich auch über andere für mich relevante Themen und freue mich auf euren Besuch.
Dieser Artikel wurde veröffentlicht in freie Software, Sicherheit, Software und mit , , , getaggt. Speichere den Permalink.

Ein Kommentar zu „Verschlüsselte Container”

Hinterlasse einen Kommentar