Autenticazione via token con PAM USB: differenze tra le versioni

m
Riga 53: Riga 53:


* la prima riga serve per l'identificazione;
* la prima riga serve per l'identificazione;
* ''Default'' abilita o disabilita il modulo ed è sempre impostato su ''yes'';
* ''Default'' indica se il modulo di default è abilitato (l'impostazione manuale effettuata con ''pam-auth-update'' ha priorità su quella di default, ma se non si cambia nulla verrà mantenuta questa) e lo imposteremo sempre su ''yes'';
* ''Priority'' determina l'ordine in cui verrà caricato il modulo, seguendo un ordinamento decrescente. Considerando che ''pam_unix.so'' che si occupa dell'autenticazione locale ha priorità 256, 257 andrà bene se si vuole che venga richiamato prima mentre 255 altrimenti;
* ''Priority'' determina l'ordine in cui verrà caricato il modulo, seguendo un ordinamento decrescente. Considerando che ''pam_unix.so'' che si occupa dell'autenticazione locale mediante richiesta di password ha priorità 256, 257 andrà bene se si vuole che venga richiamato prima il modulo ''pamusb'' mentre 255 altrimenti. In questa guida verrà usato quasi sempre 257;
* ''Auth-Type'' può essere ''Primary'' o ''Additional''. Nel primo caso viene eseguito solo se l'autenticazione non è già stata provvista da un altro modulo (purché sufficiente), nel secondo a prescindere ma non contribuirà all'esito dello stack. Le priorità tra i due tipi sono risolte separatamente e per i nostri usi andrà sempre bene ''Primary'';
* ''Auth-Type'' può essere ''Primary'' o ''Additional''. Nel primo caso viene eseguito solo se l'autenticazione non è già stata provvista da un altro modulo (purché sufficiente), nel secondo a prescindere ma non contribuirà all'esito dell'autenticazione. Le priorità tra i due tipi sono risolte separatamente e per i nostri usi andrà sempre bene ''Primary'';
* infine ''Auth'' indica se considerare l'autenticazione del modulo sufficiente (con ''sufficient'') se tutti quelle con priorità maggiore non falliscono, oppure se considerarla un requisito necessario (con ''required'') e richiama il modulo ''pam_usb.so'' (eventualmente passandoci anche dei parametri). È la parte più importante e quella che siamo interessati a modificare.
* infine ''Auth'' indica se considerare l'autenticazione del modulo sufficiente (con ''sufficient'') se tutti quelle con priorità maggiore non falliscono, oppure se considerarla un requisito necessario (con ''required'') e richiama il modulo ''pam_usb.so'' (eventualmente passandoci anche dei parametri). È la parte più importante e quella che siamo interessati a modificare.


Riga 120: Riga 120:
     sufficient    pam_usb.so</pre>
     sufficient    pam_usb.so</pre>


''pam_succeed_if.so'' è un modulo che ha successo unicamente se la condizione è soddisfatta, e chiaramente uid è uguale a zero soltanto per l'utente root, mentre è maggiore per tutti gli altri. In caso di fallimento del modulo non succede niente (''default=ignore''), ma se la condizione è soddisfatta vengono saltate un certo numero di righe (''success=N'').
''pam_succeed_if.so'' è un modulo che ha successo unicamente se la condizione è soddisfatta, e chiaramente uid è uguale a zero soltanto per l'utente root, mentre è maggiore per tutti gli altri. Al posto di ''sufficient'' e ''required'' si è impostata una policy più complessa, e per un'analisi più dettagliata si rimanda alla pagina di manuale (''man pam.d''), nella quale in caso di fallimento del modulo non succede niente (''default=ignore'') ma se la condizione è soddisfatta vengono saltate un certo numero di righe (''success=N'').


Quindi un utente normale soddisferà la prima condizione (''uid > 0'') e salterà una riga (''success=1''), eseguendo direttamente l'ultima che coincide con la ''Alternative mode''. Al contrario root leggerà la seconda riga, corrispondente alla policy per la ''Additional mode''; infatti in caso di successo salterà la terza riga e passerà ai moduli di priorità inferiore (la richiesta di password) mentre in tutti gli altri casi l'autenticazione fallirà (''default=bad''). Impostare ''default=die'' se si vuole far capire all'utente che il fallimento è dovuto alla mancata autenticazione USB.
Quindi un utente normale soddisferà la prima condizione (''uid > 0'') e salterà una riga (''success=1''), eseguendo direttamente l'ultima che coincide con la ''Alternative mode''. Al contrario root leggerà la seconda riga, corrispondente alla policy per la ''Additional mode''; infatti in caso di successo salterà la terza riga e passerà ai moduli di priorità inferiore (la richiesta di password) mentre in tutti gli altri casi l'autenticazione fallirà (''default=bad''). Impostare ''default=die'' in luogo di ''default=bad'' se si vuole far capire all'utente che il fallimento è dovuto alla mancata autenticazione USB.


{{Box | Sudo | È da notare che con sudo verrà usata la policy dipendente dalla password richiesta, di default quella dell'utente e quindi si utilizzerebbe una modalità ''Alternative''.
{{Box | Sudo | È da notare che con sudo verrà usata la policy dipendente dalla password richiesta, di default quella dell'utente e quindi si utilizzerebbe una modalità ''Alternative''.
3 581

contributi