A alteração do shell de login não impede necessariamente que os usuários se autentiquem (exceto em alguns serviços que verificam se o shell do usuário é mencionado em /etc/shells
).
As pessoas ainda podem se autenticar nos vários serviços que o seu sistema oferece aos usuários Unix, e ainda podem estar autorizados a realizar algumas ações, embora provavelmente não executem comandos arbitrários diretamente.
A alteração do shell para /bin/false
ou /usr/sbin/nologin
só impedirá a execução de comandos nos serviços que podem ser usados para executar comandos (login do console, ssh, telnet, rlogin, rexec ...), portanto, < em> autorização apenas para alguns serviços.
Por ssh
, por exemplo, isso ainda permite que eles façam o encaminhamento de porta.
passwd -l
desativará a autenticação por senha, mas o usuário ainda poderá usar outros métodos de autenticação (como authorized_keys
com ssh
).
Com pam
no Linux, pelo menos, você pode usar o módulo pam_shells
para restringir autenticação ou autorização a usuários com um shell permitido (aqueles mencionados em /etc/shells
). Para ssh
, você desejará fazê-lo no nível de autorização ( account
) da autenticação sshd
usa pam
além de para outros métodos de autenticação (como authorized_keys
), ou você pode fazer isso com sshd_config
diretivas em /etc/ssh/sshd_config
(como AllowUsers
e amigos).
No entanto, tenha em atenção que a adição de algumas restrições à autorização global de pam irá potencialmente impedir a execução de cron
empregos como esses utilizadores.