La modifica della shell di accesso non impedisce necessariamente agli utenti di autenticarsi (tranne in alcuni servizi che controllano se la shell dell'utente è menzionata in /etc/shells).
Le persone potrebbero comunque essere in grado di autenticarsi ai vari servizi forniti dal sistema agli utenti unix e potrebbero essere autorizzate a eseguire alcune azioni anche se probabilmente non eseguiranno direttamente comandi arbitrari.
Cambiare la shell in /bin/falseo /usr/sbin/nologinimpedirà loro di eseguire comandi su quei servizi che possono essere usati per eseguire comandi (login console, ssh, telnet, rlogin, rexec ...), quindi influenzare l' autorizzazione solo per alcuni servizi.
Ad sshesempio, ciò consente loro di eseguire il port forwarding.
passwd -ldisabiliterà l'autenticazione con password, ma all'utente potrebbe essere comunque consentito utilizzare altri metodi di autenticazione (come authorized_keyscon ssh).
Con pamalmeno su Linux, è possibile utilizzare il pam_shellsmodulo per limitare l'autenticazione o l'autorizzazione agli utenti con una shell consentita (quelle menzionate in /etc/shells). Per ssh, ti consigliamo di farlo a accountlivello di autorizzazione ( ) come per gli sshdusi di autenticazione pam oltre ad altri metodi di autenticazione (come authorized_keys), oppure puoi farlo con sshd_configdirettive in /etc/ssh/sshd_config(come AllowUserse amici).
Attenzione però che l'aggiunta di alcune restrizioni nell'autorizzazione globale di pam impedirà potenzialmente l'esecuzione di cronlavori come quegli utenti.
/bin/falsesembra più comune di/bin/true.