Pam_usb
Introduzione
Il controllo dell'accesso ai sistemi informatici è un'esigenza molto sentita in un'epoca, come la nostra, in cui alla facilità di trattamento dei dati deve corrispondere l'adozione di soluzione idonee a limitare il rischio della loro consultazione e diffusione involontaria o fraudolenta. Per contesti operativi nei quali l'utilizzo dei sistemi informatici è condiviso tra più soggetti e specialmente in aree in cui sono trattati dati di particolare delicatezza, può essere utile impiegare misure tecniche che garantiscano standard di controllo superiori rispetto a quelli comunemente adottati. In tal senso, l'evoluzione tecnologica ha messo a disposizione del responsabile della sicurezza informatica e dell'amministratore di sistema metodiche sempre più sofisticate.
Nel tempo, la tradizionale autenticazione con "nome utente" (username) e "codice segreto" (password) è stata progressivamente integrata con il riconoscimento di dati biometrici (impronte digitali, disegno dell'iride, morfologia del volto) e con la verifica del possesso di dispositivi fisici (ad esempio, tesserini con riconoscimento ottico, elettronico o in radiofrequenza).
A prescindere dalla specifica soluzione tecnologica, il principio generale adottato in ambiti che richiedano particolare attenzione nel controllo degli accessi è quello di associare almeno due modalità di autenticazione; ciò perché, in tal modo, si mitigano reciprocamente i "punti deboli" di ciascuna tecnica identificativa ottenendo una probabilità di accesso indesiderato più bassa rispetto a quella ottenibile con le singole tecniche.
Un aspetto da considerare in fase progettuale, inoltre, è certamente l'onere finanziario e organizzativo da sostenere per l'acquisto, l'integrazione e la manutenzione delle tecnologie di autenticazione che, nel caso di quelle più avanzate, è particolarmente elevato: per esse, infatti, si deve ricorrere a soluzioni proprietarie sia per l'hardware (brevettato) che per il software (close source e disponibile spesso solo per alcuni sistemi operativi).
Naturalmente, i dispositivi fisici che possono essere adoperati per l'identificazione sono i più disparati e la scelta è dettata dal rapporto desiderato dal progettista tra costi di implementazione ed efficacia ottenuta. Può sembrar strano ma anche dispositivi portatili largamente diffusi, spesso economici e standardizzati come le pendrive su porta USB, pur con alcuni limiti ed alcune accortezze d'uso, possono essere adoperati come componenti di una infrastruttura di autenticazione. Naturalmente, l' hardware è solo una parte della soluzione. I diversi sistemi operativi implementano architetture di autenticazione eterogenee, per cui è necessario, purtroppo, scrivere il software di autenticazione specificamente per ciascuno di essi.
Noi appassionati di free software abbiamo però mille risorse e possiamo tranquillamente far fronte anche a questa particolare esigenza; nel caso di Debian GNU/Linux (come di altre distribuzioni GNU/Linux), il sistema di autenticazione si può avvalere di una "libreria software" chiamata PAM (Pluggable Authentication Modules). L'architettura di PAM permette di aggiungere di volta in volta moduli software specifici per la tipologia di autenticazione desiderata: libpam-usb, oggetto del presente articolo, appartiene a questa famiglia di soluzioni essendo un modulo software (in gergo tecnico, una "libreria") specificamente disegnata per integrare l'uso di pendrive USB nell'infrastruttura di autenticazione fornita da PAM.