Smontare la home dopo il logout

Smontare la home dopo il logout, è possibile ?

La risposta è si.

Smontare la home dopo il logout

Smontare la home dopo il logout

Perché dovrei smontare la home dopo il logout?
Nel ufficio il cliente Tizio lavora abitualmente con il suo computer, la home è cifrata, la password di root è conosciuta da tutti perché in effetti la password di root serve maggiormente per la manutenzione, Purtroppo a poco serve avere una home cifrata se poi si può accedere come root e guardarne il contenuto.
L’idea che ho avuto consiste nello smontare la home dopo il logout, in questo modo, ogni volta che l’utente si disconnette, la home viene smontata automaticamente.
Premesso che la vera sicurezza in un computer sta fra la sedia e la tastiera, pertanto l’utente root si può connettere solo dopo che io mi sono alzato dalla sedia, se si connette mentre io sono seduto è perché quel utente sono io.
Scenario:
Accensione computer, login utente davide, montaggio della home e relativa decrittazione della stessa.
Logout utente davide, accensione dello script che si occupa di smontare la home dopo il logout.
Come sempre installiamo la nostra debian (debootstrap), questa volta voglio anche un’interfaccia grafica da urlo, quindi configuro KDE con tutti gli effetti grafici, il cubo che diventa cilindro e le finestre che prendono fuoco e ballano prima di allargarsi/stringersi. In pratica mezzora per chiudere una finestra, una camurria che non finisce mai !
Quando tutto, ma proprio tutto funziona, installiamo il solito software necessario a cifrare il disco
#apt-get install ecryptfs cryptsetup
poi creaiamo un file di giusta dimensione per la swap
#truncate -s 8G /etc/swap.swp
lo incasiniamo a dovere
#shred -v -n2 /etc/swap.swp
e poi procediamo con la cifratura della swap in maniera dinamica, in questo mio precedente articolo spiego come fare. http://www.dibrigida.it/480/la-swap-cifrata/
Adesso è il momento di esportare la home
Come prima cosa scegliamo una passphrase decente del tipo : iohHJGHGFwe78ye7gt7836563ewte34454trhytyjd!£=&fff
quindi
# passwd davide
e digitiamo 2 volte la nostra passphrase
giunti a questo punto dobbiamo migrare la nostra home
#ecryptfs-migrate-home -u davide
inseriamo la passphrase scelta per il login ed in qualche secondo otteniamo la migrazione completa.
A questo punto in /home troviamo la nostra home e la vecchia home, testiamo il tutto per assicurarci che la home cifrata sia davvero funzionante, se tutto è ok possiamo rimuovere la vecchia home
#rm -rf /home/davide.FHTDFYID (la vecchia home è stata rinominata con nomeutente.CARATTERIRANDOM)
Fin qui tutto semplice, quindi a cosa serve scrivere questo articolo?
Il bello viene proprio adesso, è in questo preciso punto del lavoro, quando credevo di aver finito che mi sono reso conto che la cifratura non sarebbe servita a nulla, infatti se faccio il login e poi il logout, root vede comunque tutti i cazzi miei, quindi a cosa è servito cifrare ?
Ecco qui che è necessario creare uno script che si preoccupa di smontare la home dopo il logout.
La difficoltà è che qualsiasi script lancio da utente non può smontare la home perché io ci sto dentro, qualsiasi script lancio da root deve capire quando io sono loggato e quando sono deloggato, se creo un .bash_logout, questo viene eseguito ogni volta che io effettuo un logout, di conseguenza se apro un terminale e poi lo chiudo ho effettuato il logout, ma in ogni caso continuo ad occupare la mia home quindi questa non si smonta, come fare?
Per prima cosa aggiungo l’utente davide al gruppo sudores
#adduser davide sudo
poi edito il file sudores e aggiungo davide con permessi di amministrazione con password e permessi per eseguire mount e umount senza password
#visudo
davide ALL = (ALL) NOPASSWD: /bin/mount
davide ALL = (ALL) NOPASSWD: /bin/umount
davide ALL=(ALL:ALL) ALL
salvo ed esco
adesso andiamo a creare gli script che devono essere richiamati da KDE al login e al logout
$cd ~/.kde
dentro Autostrat ci metto gli script che mi montano i dischi remoti tipo google e altra roba, dentro shutdown ci metto lo script che si preoccupa di smontare la home dopo il logout
$cd shutdown
$vi umountmyhome.sh
#!/bin/bash
lsof /home/.ecryptfs/davide/.Private
fuser -mv /home/.ecryptfs/davide/.Private
echo ‘LAMIAPASSPHRASE’ |sudo umount /home/.ecryptfs/davide/.Private
ESC :wq per uscire e salvare
$chmod 700 umountmyhome.sh
e lo script che si preoccupa di smontare la home dopo il logout è pronto.
Adesso effettuiamo il logout
CTRL ALT F1 ed andiamo in console
root
password
#
#ls -la /home/davide
S O R P R E S A A A A A ! ! !
la home è vuota 🙂
adesso CTRL ALT F7 per tornare nell’interfaccia grafica, login e password
torniamo sul terminale CTRL ALT F1
#ls -la /home/davide
e stavolta è popolata.
Visto che abbiamo trovato il modo di eseguire i comandi al post login ed al post logout, di seguito il mount della directory dello storage post login e il comando di umount post logout.
$cd ~/.kde/Autostart
vi remotemount.sh
#!/bin/bash
PASS=miapassworddiaccessoallostorage
echo ‘MIAPASSPHRASE’ |sudo -S mount -t cifs //IPREMOTO/DIRECTORYREMOTA ~/MOUNTPOINT -o user=$USER,password=$PASS

salviamo ed usciamo
$chmod 700 remotemount.sh
A questo punto riavviamo il computer e verifichiamo che tutto sia correttamente configurato.
Dentro ~/.kde/shutdown mettiamo gli script che devono essere eseguiti al logout dell’utente
Questo è tutto.
E ricorda di smontare la home dopo il logount 🙂


Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *