cryptmount

spialaspia@inventati.org

v0.1 11/01/2008
Guida all'installazione e all'uso di cryptmount, utility per crittare partizioni e file container

1. Cryptmount

1.1 cos'e' cryptmount

Cryptmount e' un piccolo programmino per sistemi GNU/linux che permette a un utente di montare e utilizzare un file system crittato.

1.2 installare cryptmount

E' possibile installare cryptmount partendo dai sorgenti che si possono scaricare dall'homepage del sito:

http://cryptmount.sourceforge.net

oppure installando il pacchetto precompilato per la versione di linux che utilizzate,

cryptmount e' disponibile per debian, ubuntu, slackware e gentoo (secondo quanto riportato nel sito, non so se esista anche per altre distro, nel caso segnalatemelo)

1.3 creare un container crittato

supponiamo che il nostro nome utente sia orione, e che vogliamo crittare la home del nostro utente, le prossime operazioni andranno eseguite come super-utente.

creiamo il filesystem, in questo caso creiamo un file di 512Mb, chiamato orione.fs, nella cartella /home

$ dd if=/dev/urandom of=/home/orione.fs bs=1M count=512

dobbiamo modificare il file /etc/cryptmount/cmtab, che descrive un po' di parametri per il file system crittato.

Inseriamo le seguenti righe:

orione {
    dev=/home/orione.fs dir=/home/orione
    fstype=ext3 fsoptions=defaults cipher=twofish
    keyfile=/etc/cryptmount/orione.key
    keyhash=md5 keycipher=bf-cbc
}

ossia, gli abbiamo detto che il file system crittato si trova nel file /home/orione.fs

il mount-point, ossia dove verra' montato il contenuto del file sara' /home/orione

il file system sara' ext3, l'algoritmo di cifratura sara' il twofish

la chiave sta nel file /etc/cryptmount/orione.key

le altre opzioni non sono importanti a meno di esigenze particolari, i settaggi di default vanno bene.

generiamo la chiave che servira' per decrittare il filesystem e che sara' protetta da una password:

$ cryptmount --generate-key 32 orione

poi creiamo il device mapper /dev/mapper/orione (ovviamente potete chiamarlo come volete), questo serve per creare questo device che verra' visto dal sistema come il device su cui andare a leggere/scrivere.

Ora prepariamo il file system:

$ cryptmount --prepare orione

formattiamo il nostro file system come ext3:

$ mkfs.ext3 /dev/mapper/orione

e ora chiudiamolo:

$ cryptmount --release orione

a questo punto il file system puo' essere montato semplicemente invocando:

$ cryptmount -m orione

e smontato con

$ cryptmount -u orione

Bene, ora abbiamo un file container, pronto per essere montato all'avvio del sistema.

1.4 criptare la home di un utente

supponiamo di voler crittare la home dell'utente orione, cominciamo col fare una copia di backup della sua home e chiamiamola /home/orione.bak

$ cp -pr /home/orione /home/orione.bak

quindi montiamo il filesystem:

$ cryptmount -m orione

rendiamo l'utente orione il proprietario del contenuto del file system crittato:

$ chown -R orione /home/orione*

e facciamo in modo che solo l'utente orione possa accedere alla sua home crittata:

$ chmod 700 /home/orione

e infine copiate il contenuto della vecchia home dentro questo contenitore:

$ cp -pr /home/orione.old /home/orione

1.5 montare la home crittata durante il boot del sistema

per fare in modo che venga montato automaticamente all'avvio (previo inserimento della password), modifichiamo il file /etc/default/cryptmount in modo che contenga:

CM_BOOTFS="orione"

in questo modo durante la sequenza di avvio del sistema vi verra' chiesta la password, se sbagliate a scriverla il file-system non verra' montato, ma sara' sempre possibile montarlo in seguito con il comando

$ cryptmount orione

1.6 cambiare la password del container crittato

per cambiare la password e' sufficiente lanciare:

$ cryptmount --change-password orione

1.7 copyright

Questo testo e' copyleft, chiunque puo' usarlo come meglio crede