Gli utenti Linux sono sicuramente abituati ad inserire una password all’avvio del sistema e ogni qualvolta si compie qualche operazione come amministratore.
In questo articolo spieghiamo un metodo che permette di avere un’alternativa a tale operazione; il metodo sfrutta una semplice periferica usb che, pur continuando a permettere l’immagazzinamento dei nostri dati come normalmente accade, funge da autenticazione per l’utente che la utilizza.PAM (Pluggable Authentication Modules) è il sistema di autenticazione predefinito sui sistemi GNU/Linux. Esso è costituito da una serie di moduli, ciascuno dei quali si occupa di una specifica funzionalità: login di sistema, privilegi di root, ecc…

Per l’obiettivo che ci siamo prefissati, sfrutteremo il modulo pam_usb.

Il primo passo da fare è installare i pacchetti necessari, ossia pamusb e pamusb-tools (disponibili nei repository di quasi tutte le distro e in AUR per quanto riguarda Archlinux). Dopodichè inseriamo il dispositivo USB, apriamo un terminale e digitiamo (da root):

pamusb-conf –add-device=NomeDispositivo

NomeDispositivo” può essere un nome qualunque, col quale identificheremo il dispositivo collegato.

Come output otterremo il riepilogo dei dati del dispositivo e, se tutto è in regola, non dovremo far altro che confermare rispondendo “y” alla domanda “Save to /etc/pamusb.conf?

Configurato il dispositivo, dobbiamo ora associarlo all’utente che ne farà uso, quindi procediamo come segue (da root):

pamusb-conf –add-user=NomeUtente

“NomeUtente” va modificato con il nome dell’utente che vogliamo associare al dispositivo. Come visto in precedenza, confermiamo la scelta con “y“.

Memorizziamo l’associazione dispositivo/utente con:

pamusb-check NomeUtente

A questo punto, come anticpato prima, dovremo andare ad abilitare il modulo pamusb; per farlo occorre editare il file /etc/pam.d/common-auth ed aggiungere, immediatamente prima della riga:

auth required pam_unix.so nullok_secure

la seguente istruzione:

auth sufficient pam_usb.so

Salviamo le modifiche e chiudiamo il file. A questo punto, ad ogni richiesta di password, basterà inserire il dispositivo USB, mentre se lasciamo quest’ultimo inserito, l’autenticazione avverrà istantaneamente.

Questo principio di funzionamento si applica anche al login di sistema, difatti, con il dispositivo inserito, il login sarà automatico.

I moduli di PAM permettono di implementare molteplici funzionalità, ad esempio è possibile fare in modo che, andando a rimuovere il dispositivo USB, venga attivato lo screensaver, con conseguente blocco del PC. Per abilitare questa modalità, in KDE, occorre modificare il file /etc/pamusb.conf ed inserire le seguenti istruzioni (ovviamente apportando le opportune modifiche):

<user id=”NomeUtente”>
<device>NomeDispositivo</device>
<agent event=”lock”>dcop kdesktop KScreensaverIface lock</agent>
<agent event=”unlock”>dcop kdesktop KScreensaverIface quit</agent>
</user>

PAM_USB Project