====== Cifrare cartelle con eCryptfs ====== Autore: **//Fabio Di Matteo//** \\ Ultima revisione: **//10/06/2015 - 09:58//** \\ \\ [[http://ecryptfs.org/|eCryptfs]] è uno dei sistemi di cifratura maggiormente utilizzati nel mondo Linux, viene fornito sottoforma di modulo del kernel e utility pergli utenti. Supportato da molte (tutte?) distribuzioni è uno strumento ideale qualora si voglia cifrare un'intera cartella. Vedremo di seguito come creare la nostra cartella cifrata e come decifrarla all'occorrenza. ===== Creazione della cartella ===== Creiamo una cartella dove vogliamo, nel nostro caso in ''/media/riservato'' e attribuiamo all'utente che ne fara' utilizzo la proprieta'. Fatto ciò creiamo la cartella cifrata con : sudo mount -t ecryptfs /media/riservato /media/riservato Si avviera' il setup guidato testuale della cartella. Rispondendo a tutte le domande alla fine verra stampato a video l'elenco delle opzioni utilizzate durante il mount e verraà montata la cartella. \\ Un esempio delle opzioni: Attempting to mount with the following options: ecryptfs_unlink_sigs ecryptfs_fnek_sig=xxxxxxxxxxx ecryptfs_key_bytes=16 ecryptfs_cipher=aes ecryptfs_sig=xxxxxxxxxxx Mounted eCryptfs Per smontare la nostra cartella bastera' un ''sudo umount /media/riservato''. ===== Montare la cartella ===== Per montare la cartella possiamo impartire il solito comando ''sudo mount -t ecryptfs /media/riservato /media/riservato'' e rispondere a tutte le domande riguardo le opzioni di montaggio oppure creare una comoda entry in ''/etc/fstab'' come la seguente. modificare le opzioni **ecryptfs_sig=xxxx** e **ecryptfs_fnek_sig=xxxx ** in base all'output del setup usato durante la creazione e il montaggio della cartella. #Per /media/riservato /media/riservato /media/riservato ecryptfs rw,user,noauto,ecryptfs_unlink_sigs,ecryptfs_fnek_sig=xxxxxxxxxxx,ecryptfs_key_bytes=16,ecryptfs_cipher=aes,ecryptfs_sig=xxxxxxxxxxx,ecryptfs_passthrough=no,key=passphrase 0 0 Dove come si puo' vedere ho copiato le opzioni riepilogate dal setup. \\ Per un elenco delle altre opzioni consultare **man ecryptfs** ===== Uno script grafico per l'ambiente Desktop ===== Lo script presuppone che sia installato YAD e che si sia configurato sudo in modo tale che il comando 'sudo mount' e 'sudo umount' non chiedano la password ([[sistema:sudo]]). #!/bin/sh #Configurare sudo in modo tale che il comando 'sudo mount' e 'sudo umount' non chiedano la password. MOUNT=/media/riservato #Controllo se la cartella e' gia stata montata e in caso chiedo se smontarla if grep -qs $MOUNT /proc/mounts; then echo "Cartella gia' montata ... " umount=$(yad --title 'Area riservata' --width=320 --text='Smontare la cartella?.\n\n' --text-align='center' --center --form --field='Si, smontala:CHK' --button Ok) YESNO=$(echo $umount | awk 'BEGIN {FS="|" } { print $1 }') if [ "$YESNO" == 'TRUE' ]; then echo "Smonto la cartella ed esco..." sudo umount $MOUNT exit 0; fi exit 0 ; fi password=$(yad --title 'Area riservata' --width=400 --text='Inserire la passphrase per \n accedere alla cartella.\n\n' --text-align='center' --center --entry --entry-label=Passphrase: --hide-text) #Se la password e' vuota esco if [ "$password" == '' ]; then echo "E la sicurezza dove la mettiamo? Esco..." exit 0; fi #modificare le opzioni **ecryptfs_sig=xxxx** e **ecryptfs_fnek_sig=xxxx ** in base all'output del setup usato durante la creazione e il montaggio della cartella. sudo mount -t ecryptfs $MOUNT $MOUNT -o rw,user,users,noauto,ecryptfs_unlink_sigs,ecryptfs_fnek_sig=xxxx,ecryptfs_key_bytes=16,ecryptfs_cipher=aes,ecryptfs_sig=xxxx,ecryptfs_passthrough=no,key=passphrase:passphrase_passwd=$password