EncryptedImages

Verschlüsselte Bereiche

Es gibt mehrere Möglichkeiten, unter Linux verschlüsselte Bereiche zur Verfügung zu stellen. Sehr einfach geht es mit Hilfe von cryptoloop.

Cooler ist die Verwendung von luks. Damit habe ich aber noch keine Erfahrungen.

Cryptoloop

Vorbereitung

Anlegen einer Datei mit passender Größe (beispielsweise für 5 GB

 dd if=/dev/zero of=/data/ms/azrvisa.img bs=1073741824 count=5

Für eine AES-Verschlüsselung werden 2 Kernel-Module benötigt (Achtung: im alten Master fehlt cryptoloop!)

 modprobe aes
 modprobe cryptoloop

Als nächstes benötigt man ein Loop-Device mit AES-Verschlüsselung

 losetup  -e aes /dev/loop0 /data/ms/azrvisa.img

und kann darin ein Dateisystem anlegen

 /sbin/mkfs.ext3 /dev/loop0

Da man aus den Nullen (siehe dd oben) Rückschlüsse auf die Verschlüsselung oder das Dateisystem ziehen könnte, wird die Verwendung von /dev/randum statt /dev/zero empfohlen. Das kann aber dauern! Einfache Abhilfe: das verschlüsselte Image mit Nullen füllen, durch die Verschlüsselung sieht das von außen ausreichend zufällig aus. Das muss natürlich vor dem Anlegen des Dateisystems passieren.

Als letztes benötigt man noch einen Mountpoint, beispielsweise /media/azrvisa

Benutzen

Wenn man mit dem verschlüsselten Image arbeiten möchte muss man

 modprobe aes
 modprobe cryptoloop
 losetup  -e aes /dev/loop0 /data/ms/azrvisa.img
 mount /dev/loop0 /media/azrvisa

Sudo

Die vorangegangenen Kommandos benötigen alle Administrator (root) Rechte. Mit etwas sudo läßt sich das an Benutzer delegieren

# Host alias specification
Host_Alias LOCALNET = 127.1.0.0/24
Host_Alias CCLOCALNET = 61.1.0.0/16
Host_Alias CCINTERNET = 10.1.0.0/24

# User alias specification
User_Alias CRYPTGROUP = stechert

# Cmnd alias specification
Cmnd_Alias CRYPTCRE = /sbin/mkfs.ext3 /dev/loop0
Cmnd_Alias CRYPTUSE = /sbin/modprobe aes, /sbin/modprobe cryptoloop, /sbin/losetup  -e aes /dev/loop0 /data/ms/azrvisa.img, /bin/mount /dev/loop0 /media/azrvisa

# User privilege specification
root       ALL=(ALL) ALL
CRYPTGROUP ALL = CRYPTCRE, CRYPTUSE

Luks

Links