Alterar o shell de logon não impede necessariamente a autenticação dos usuários (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 seu sistema fornece aos usuários unix e ainda podem estar autorizadas a executar algumas ações, embora provavelmente não executem diretamente comandos arbitrários.
Alterar o shell para /bin/false
ou /usr/sbin/nologin
impedirá que eles executem comandos nos serviços que podem ser usados para executar comandos (login do console, ssh, telnet, rlogin, rexec ...), afetando a autorização apenas para alguns serviços.
Por ssh
exemplo, isso ainda lhes permite fazer 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
em ssh
).
No pam
Linux, pelo menos, você pode usar o pam_shells
módulo para restringir a autenticação ou autorização aos usuários com um shell permitido (aqueles mencionados em /etc/shells
). Pois ssh
, você desejará fazê-lo no account
nível de autorização ( ) como para sshd
usos de autenticação pam
, além de outros métodos de autenticação (como authorized_keys
), ou poderá fazê-lo com sshd_config
diretivas em /etc/ssh/sshd_config
(como AllowUsers
e amigos).
Entretanto, tenha em atenção que adicionar algumas restrições na autorização global de pam impedirá a execução de cron
trabalhos como esses usuários.
/bin/false
parece mais comum que/bin/true
.