Aggiunta di uno schema di modifica della password alternativo a passwd utilizzando i moduli PAM [chiuso]

2

Sto provando a configurare un modulo PAM che consente di aggiungere uno schema di modifica della password condizionale. Il comportamento previsto è il seguente:

  1. passwd

  2. vuoi cambiare il token di autenticazione per TestProgram? (s / n):

nel caso in cui decida di farlo (s)

  • 3.1.1 (s) > utente: ...
  • 3.1.2 > pass: ...
  • 3.1.3 > newpass: ...
  • 3.1.4 > repeat newpass: ...

  • 3.1.5 > password modificata (o non corretta)

Nel caso volesse utilizzare regolarmente passwd

  • 3.2.1: password UNIX utente: ....

...

Sono già riuscito a farlo funzionare più o meno, ma ho problemi con i flag PAM. in questo momento la configurazione del modulo (chiamiamola myauthschema) è così:

auth sufficient /usr/lib/security/pam_mymod.so ...

e nel mio file /etc/pam.d/passwd ho aggiunto prima la riga

@include myauthschema

Nell'interfaccia pam_sm_chauthtok faccio questo:

if(flags & PAM_PRELIM_CHECK) return PAM_IGNORE;

Altrimenti esegui la conversazione pam per sapere se vuoi cambiare le credenziali del programma. Se lo fai, restituisci PAM_SUCCESS o un errore (questo dovrebbe sempre -end stack execution sempre, per successo o fallimento-),

Se vuoi usare il modulo regolare,

return PAM_IGNORE*

Il mio problema è questo: ogni volta che eseguo passwd verrà eseguito il mio modulo, ma se decido di PAM_IGNORE è risultato, non mi verrà richiesta la password utente successiva, per l'uso regolare di% co_de comando%. Qualche idea su come potrebbe essere risolto? è molto probabile che non riesca a usare correttamente i flag, cioè, restituisco sempre passwd alla prima volta che viene chiamato PAM_IGNORE , ma non sono sicuro di cosa dovrei restituire.

Forse il comportamento corretto è chiedere prima cosa voglio pam_sm_chauthok , quindi controllare se è il controllo preliminare o meno. Se la mia domanda non è chiara, mi piacerebbe sentirla.

Per quello che so, è molto simile a questa domanda che ho trovato a scavare nell'inter-web: link

    
posta Bruno Figares 28.09.2011 - 01:37
fonte

0 risposte

Leggi altre domande sui tag