PAM - Cifratura della home directory tramite truecrypt

Quella che segue e' la procedura da seguire per cifrare tramite truecrypt la home directory di un utente su un sistema operativo Linux, in modo che essa venga montata automaticamente al login dello stesso. A titolo esemplificativo verra' illustrata la procedura per l’utente andrea la cui home directory si trovi in /home/andrea.

Si presuppone che l’ultima versione di truecrypt sia gia' installata e configurata sul sistema.

Per prima cosa e' necessario creare un volume cifrato per l’utente con il comando truecrypt -t –c e seguire la procedura guidata inserendo le informazioni che verranno richieste come la tipologia di volume, percorso, algoritmi di cifratura ecc.
Durante la procedura, alla richiesta del tipo di Filesystem selezionare l'opzione None. Si raccomanda inoltre di impostare la stessa password utilizzata per il login dell’utente.  
In caso contrario al login dello stesso, verra' stampato a video un messaggio in cui viene richiesto l’inserimento della password del volume cifrato. Il messaggio in questione pero' potrebbe essere mostrato ciclicamente e con una velocita' tale da non consentire all’utente il tempo necessario per inserire la propria password.
A titolo esemplificativo si ipotizza che il volume cifrato corrisponda al file /home/andrea.tc, ma nulla vieta di creare il volume cifrato su una partizione disponibile.  

Ovviamente, per potere creare il file sotto la directory /home il comando precedente deve essere lanciato come utente root. Successivamente si dovra' modificare gruppo ed owner del file corrispondnete al volume cifrato: chown andrea:andrea /home/andrea.tc

Sempre come utente root montare il volume creato e verificare il device ad esso associato::

truecrypt -t –-filesystem=none /home/andrea.tc  
truecrypt -t –l

Ipotizzando che il device mostrato nell’output del comando truecrypt -t –l sia /dev/loop1, creare un nuovo filesystem, ad esempio di tipo ext3, sul device in questione, e smontare il volume cifrato al fine di salvare le modifiche apportate:

mkfs.ext3 /dev/loop1
truecrypt -t –d

Una volta creato e preparato il volume installare il pacchetto libpam-mount: apt-get install libpam-mount

Editare il file /etc/pam.d/login ed aggiungere dopo le due direttive

@include common-account
@include common-session

la linea

@include common-pammount

Editare il file /etc/security/pam_mount.conf.xml, aggiungendo la seguente linea nella sezione relativa ai volumi:

<volume fstype=”truecrypt” user=”andrea” path=”/home/andrea.tc” mountpoint=”/home/andrea” />

A questo punto, loggandosi con l’utente andrea, se la password impostata per il volume cifrato sia uguale a quella utilizzata per accedere al sistema il volume verra' montato automaticamente nella directory /home/andrea. La directory in questione pero', potrebbe avere root rispettivamente come owner e gruppo della stessa e dei file in essa contentuti.
Sara' quindi necessario loggarsi per una volta come utente root in un’altra shell, modificare l’owner della home directory dell’utente e smontare il volume cifrato in modo da salvare le modifiche apportate:  

chown –R andrea:andrea /home/andrea
truecrypt -t -d

In questo modo al successivo login dell’utente andrea, la propria home directory verra' montata assegnandole il proprietario corretto.
D'ora in poi loggandosi come andrea verra' montato il volume cifrato al posto della home dell'utente, senza richiedere alcuna password in caso essa sia uguale a quella dell'utente.  
Al logout dello stesso, verra' automaticamente eseguito l’umount del volume in questione.
Ovviamente, nel caso l’utente dovesse cambiare la propria password, sara' necessario modificare anche la password associata al volume cifrato con il comando truecrypt -t -C /home/andrea.tc, pena l’impossibilita' di effettuare il login e montare la propria home directory, a causa dei problemi precedentemente esposti.

Privacy Policy