Userzeichnis mit AES

Aus NOBAQ
Zur Navigation springenZur Suche springen

Für Daten"archivierung" hab ich mir nun einen Benutzer angelegt, dessen Homeverzeichnis komplett mit AES verschlüsselt sein soll.

Ich find das nicht so unpraktisch, da mein Rechner 24 Stunden rennt und wenn die Daten zumindest nur manchmal zugänglich sind (nämlich wenn ich eingeloggt bin und sie brauche) und sich so die Wahrscheinlichkeit etwas minimiert, dass die Daten in falsche Hände geraten.


Zum Glück macht es Debian einfach, cryptoloop zu installieren.

aptitude install loop-aes-source
aptitude install loop-aes-utils

Mittels des module-assistenten kann ich nun das passende Kernelmodul direkt Debian-konform erstellen. Einfach die loop-aes Module auswählen, compilieren und das deb installieren (mittels m-a).

Der Benutzer "nobaq" existierte schon. Ich erstelle direkt im Homeverzeichnis des Users ein 1GB Image. Die alten Daten kommen zuvor raus.

cd /home/nobaqdd if=/dev/zero of=image.aes bs=1M count=1000losetup -Te aes128 /dev/loop1 image.aesNo such encryption aes128mount
[...]
/home/system/mldonkey/mldonkey.img on /home/system/mldonkey type ext3 (rw,nosuid,loop=/dev/loop0)

Hoppala, ist ja bereits ein Loopdevice gemountet und damit auch das Kernelmodul.

umount /home/system/mldonkey
rmmod loop
modprobe loop
losetup -Te aes128 /dev/loop1 image.aes
mkfs -t ext2 /dev/loop1

Es macht echt Spass mit Linux zu arbeiten wenn der neue Treiber mitten im Betrieb einfach aktualisiert werden kann.

Nun ist das Image fertig eingerichtet:

losetup -d /dev/loop1

In die fstab schreib ich nun den Mountpoint rein damit jeder das Medium mounten kann. Ist ja nicht schlimm, da es sowieso verschlüsselt wurde (-o owner ging leider nicht, aus welchem Grund auch immer):

/home/nobaq/image.aes /home/nobaq ext2 noauto,rw,user,loop,encryption=aes128 0 0

In die bashrc kommt rein:

#!/bin/bash

cd /tmp
 
if ! grep -q ‘/home/nobaq’ /proc/mounts
then
	if ! mount /home/nobaq
	then
		exit
	fi
fi

cd ~

bash

cd /tmp
umount /home/nobaq 2>/dev/null
exit

Jedesmal wenn ich nun ein "su nobaq" mache oder mich einlogge wird das Image gemountet, sofern es nicht bereits gemountet ist.

Einzig das ausloggen ist noch etwas ein Problem, da muss ich halt dafür sorgen, dass die Partition immer schon ungemountet ist.