Installazione di un filesystem criptato sotto GNU/Linux

Questo semplice mini-howto spiega come creare un device criptato per proteggere le informazioni in esso contenute, ad esempio per installare un server che non possa essere “rubato” o per un portatile contenente informazioni sensibili. La distribuzione di riferimento e’ la GNU/Linux Debian 4.0 ma i passi da seguire sono gli stessi anche in altre distribuzuioni.

Iniziamo con l’installare il software necessario, ci serve infatti il pacchetto cryptsetup

apt-get install cryptsetup
Se disponiamo di una partizione che desideriamo criptare, es. la /dev/hda3 questa va prima opportunamente preparata con il comando:

cryptsetup -c “aes-cbc-essiv:sha256” -s 256 luksFormat /dev/hda3
-c imposta il metodo di cifratura
-s è il size della chiave in bit, di default è 128.

Il comando chiede una passphrase che verrà usata per accedere al dispositivo.

Una volta cifrata la partizione dobbiamo agganciarle un device virtuale che poi formatteremo in modo tradizionale.

Per inizializzare il device virtuale su usa:

cryptsetup luksOpen /dev/hda3 device_criptato
Questo comando crea il device /var/mapper/device_criptato.

A questo punto possiamo formattare il device appena creato:

mkfs.ext3 /dev/mapper/device_criptato
Fatto ciò possiamo montalo ad esempio sotto /mnt:

mount /dev/mapper/device_criptato /mnt
e lavorarci …. Ovviamente riavviando è necessario ripetere il tutto da “cryptsetup luksOpen” in poi … se invece vogliamo che il tutto sia disponibile all’avvio dobbiamo editare i seguenti file:

/etc/crypttab
/etc/fstab
All’interno di /etc/crypttab aggiungere la riga:

device_criptato /dev/hda3 none luks
All’interno di /etc/fstab aggiungere la riga:
/dev/mapper/device_criptato /mnt ext3 defaults 0 2
E il gioco è fatto … il sistema si ferma durante l’avvio e chiede la passphrase per montare il device. 😉 Occhio a non smarrirla! In tal caso avrete semplicemente perso tutti i dati memorizzati all’interno della partizione.