Questo Sito utilizza i cookie. continuando a navigare acconsenti all'uso dei cookie. OK    Ulteriori informazioni
PAMUSB è un modulo PAM (Pluggable Authentication Modules) che consente di fornire l’autenticazione mediante un dispositivo USB. Ciò significa che è possibile utilizzare una memoria USB al posto della password, per qualsiasi attività, dall’accesso al sistema, all’avvio di programmi amministrativo, al posto delle richieste di sudo e così via.

Installazione di PAMUSB
E’ possibile installare PAMUSB tramite Ubuntu Software Center oppure tramite il comando:

sudo apt-get install pamusb-tools




Configurazione di un dispositivo USB
Terminata l’installazione basterà inserire una periferica USB e autorizzarla tramite terminale con:

sudo pamusb-conf --add-device=Acer

Acer è il nome usato per identificare il dispositivo.
Scelto il dispositivo fisico da usare verrà richiesta quale partizione usare. Se fosse presente soltanto una partizione nel dispositivo sarà evitata la richiesta e mostrato solo questo avviso:

Which volume would you like to use for storing data ?
* Using "/dev/sdc1 (UUID: 0DF9-F3B5)" (only option)

Name : Acer
Vendor : M-Sys
Model : DiskOnKey
Serial : M-Sys_DiskOnKey_0704C21621003613-0:0
UUID : 0DF9-F3B5

Save to /etc/pamusb.conf ?
[Y/n]

n
Immettere la scelta con Y e un sintetico Done confermerà l’avvenuto salvataggio.

Adesso diventa necessario indicare a PAMUSB quali utenti dovranno essere autorizzati con questa periferica. E’ possibile farlo con:

sudo pamusb-conf --add-user=UTENTE

Indicando ovviamente al posto di UTENTE il nome utente da autorizzare. E’ possibile autorizzare se stessi con:

sudo pamusb-conf --add-user=$USER

La variabile $USER punta sempre al proprio nome utente.

Which device would you like to use for authentication ?
* Using "Acer" (only option)

User : ubuntu
Device : Acer

Save to /etc/pamusb.conf ?
[Y/n]


Qualora fosse stato autorizzato più di un dispositivo verrà richiesto quale utilizzare, se ce ne fosse soltanto uno la richiesta sarà saltata e basterà confermare con Y i dati presentati.

Attivare infine la periferica memorizzando le informazioni sul dispositivo USB con:

pamusb-check $USER

* Authentication request for user "ubuntu" (pamusb-check)
* Device "Acer" is connected (good).
* Performing one time pad verification...
* Regenerating new pads...
* Access granted.

Questa operazione attiverà l’utente ubuntu per il dispositivo Acer e installerà la chiave nel dispositivo USB.


Attivazione di PAMUSB
Prima che PAMUSB entri in funzione è necessario attivare il modulo tra quelli che effettuano l’autenticazione. Ci sono tante maniere per attivare i moduli di PAMUSB, io preferisco quello controllato, senza toccare i files di autenticazione direttamente.

Creaiamo un file di nome pamusb con:

sudo vim /usr/share/pam-configs/pamusb

Al suo interno incolliamo quanto segue:

Name: PAMUSB authentication
Default: yes
Priority: 257
Auth-Type: Primary
Auth:
sufficient pam_usb.so


Salviamo e chiudiamo l’editor di testo, infine aggiorniamo le autorizzazioni con:

sudo pam-auth-update



Assicuriamoci che sia presente il modulo PAMUSB nell’elenco e senza toccar nulla premiamo Invio per confermare.

Per disattivare PAMUSB basterà eseguire nuovamente l’ultimo comando e togliere la spunta alla voce PAMUSB authentication.


Test di funzionamento
Passiamo infine a provare il funzionamento di PAMUSB in maniera semplice:

sudo -K

Questo comando fa sì che sudo dimentichi le precedenti autorizzazioni e dal prossimo sudo chieda nuovamente l’autorizzazione.

sudo whoami

* pam_usb v0.4.2
* Authentication request for user "ubuntu" (sudo)
* Device "Acer" is connected (good).
* Performing one time pad verification...
* Access granted.
root


In situazioni normali sudo richiederebbe l’immissione della password, adesso invece ha eseguito il controllo dell’autenticazione con la chiave USB e se tutto è andato nella maniera corretta supererà la richiesta ed eseguirà il comando whoami col permesso di root, restituendo appunto root.

In questo modo tutte le richieste di sudo, gksudo, gksu, etc saranno automaticamente risolte da PAMUSB, in presenza della chiavetta USB.



Anche la richiesta di password per l’accesso sarà risolta da PAMUSB e appena cliccato sopra l’utente avverrà automaticamente l’accesso se il dispositivo USB è già inserito.



Attenzione!
Se si utilizza una home crittografata, non utilizzare l’accesso senza password, altrimenti la partizione home non verrà montata.

Nel caso si smarrisse o formattasse la chiave USB sarà sempre possibile accedere per mezzo della password:

* pam_usb v0.4.2
* Authentication request for user "ubuntu" (sudo)
* Device "Acer" is not connected.
* Access denied.
[sudo] password for ubuntu:



Blocco e sblocco automatico del salvaschermo



Anche la richiesta di sblocco del salvaschermo sarà automaticamente risolta da PAMUSB, quindi dopo l’abbandono del computer, basterà reinserire la penna in una qualsiasi porta USB, attendere alcuni secondi e muovere il mouse.

Se la schermata di sblocco è già stata presentata non sarà sbloccata automaticamente, basterà premere Annulla (oppure il pulsante ESC) e muovere nuovamente il mouse per far autenticare automaticamente.

Volendo è anche possibile fare in modo che lo schermo venga bloccato alla rimozione del dispositivo USB e sbloccato automaticamente all’inserimento. Per far ciò è necessario modificare il file pamusb.conf in questo modo:

sudo gedit /etc/pamusb.conf

Trovare la sezione:

<user id="ubuntu">
<device>
Acer
</device>
</user>

E modificarla in questo modo:

<user id="ubuntu">
<device>
Acer
</device>
<agent event="lock">gnome-screensaver-command --lock</agent>
<agent event="unlock">gnome-screensaver-command --deactivate</agent>
</user>


Nel caso si usasse xscreensaver invece del salvaschermo di GNOME basterà sostituire gnome-screensaver-command con xscreensaver-command.
Salvare il file, chiudere l’editor di testo ed eseguire:

pamusb-agent

pamusb-agent[2617]: pamusb-agent up and running.
pamusb-agent[2617]: Watching device "Acer" for user "ubuntu"


Rimuovendo il dispositivo USB sarà bloccato lo schermo e mostrati i messaggi sul terminale:

r pamusb-agent[2617]: Device "Acer" has been removed,
locking down user "ubuntu"...
pamusb-agent[2617]: Running "gnome-screensaver-command --lock"
pamusb-agent[2617]: Locked.


Reinserendo il dispositivo USB invece:

pamusb-agent[2617]: Device "Acer" has been inserted.
Performing verification...
pamusb-agent[2617]: Executing "/usr/bin/pamusb-check --quiet
--config=/etc/pamusb.conf --service=pamusb-agent ubuntu"
pamusb-agent[2617]: Authentication succeeded. Unlocking user "ubuntu"...
pamusb-agent[2617]: Running "gnome-screensaver-command --deactivate"
pamusb-agent[2617]: Unlocked.

E verrà automaticamente sbloccato lo schermo. Se tutto funziona correttamente come mostrato, premere CTRL+C per interrompere pamusb- agent e inserirlo tra le applicazioni di avvio dal menu Sistema – Preferenze – Applicazioni d’avvio.



In questo modo dal prossimo accesso si abiliterà automaticamente il blocco e lo sblocco mediante rimozione e inserimento del dispositivo USB.

E’ possibile anche eseguire comandi multipli in occasione dell’inserimento o rimozione semplicemente aggiungendo altre righe nel file pamusb.conf come quelle indicate in precedenza.