Ho letto altrove altre persone che chiedevano che SSH fosse "riparato" in modo che gli account bloccati non potessero accedere tramite SSH. (vedi Debian bug 219377) Questa richiesta è stata respinta come patch "perché infrange alcune aspettative degli utenti [che erano] usati per passwd -l bloccando solo passwd." (vedi Debian bug 389183) ad es. alcune persone VOGLIONO poter bloccare gli account dagli accessi con password, ma consentire comunque l'accesso alla chiave SSH.
PAM non negherà l'autenticazione della chiave SSH agli account che sono stati appena bloccati (ad es. A causa di tentativi di password non validi, poiché l'autenticazione della chiave SSH è progettata per non prestare attenzione al campo della password, che è da dove gli account sono generalmente bloccati.)
Comprendo che la voce dell'hash della password viene controllata implicitamente al momento di pam_authenicate (), non al momento di pam_acct_mgmt (). pam_unix.so pam_sm_acct_mgmt () non controlla affatto l'hash della password e pam_authenticate () non viene chiamato durante l'autenticazione con chiave pubblica.
Se la tua intenzione è quella di essere in grado di disabilitare centralmente gli account dall'accesso, ci sono altre possibili soluzioni alternative, tra cui:
Modifica della shell di accesso.
(ri) spostando il loro file authorized_keys.
Un'altra opzione per negare l'accesso potrebbe essere un certo uso di DenyGroups o AllowGroups in sshd_config. (quindi aggiungendo l'utente a un gruppo "sshdeny" o rimuovendolo da un gruppo "sshlogin" per impedire loro di accedere.) (leggi qui: https://help.ubuntu.com/8.04/serverguide/user-management .html )
Da http://web.archiveorange.com/archive/v/67CtqEoe5MhDqkDmUMuL
ho letto: "Il problema è che pam_unix controlla solo le date di scadenza della voce shadow, non il contenuto del campo hash della password". Se questo è vero, scadere l'account anziché bloccarlo farebbe ciò di cui hai bisogno?
La risposta alla tua domanda è probabilmente "sì, se li stai disabilitando in un posto diverso dal campo password"
account optional pam_echo.so file=/etc/redhat-release
a /etc/pam.d/sshd provoca la stampa del contenuto del file durante l'utilizzo degli accessi con autenticazione basati su chiave (provalo).