nscd armazena as informações do passwd e do grupo. Experimente nscd -i passwd
e nscd -i group
depois de modificar diretamente esses arquivos.
Eu tenho uma entrada a seguir em /etc/passwd
file:
test:x:1002:1000::/home/test:/bin/bash
Quando eu altero para test:x:1002:1000::/home/test:/bin/false
ou test:x:1002:1000::/home/test:/sbin/nologin
, ainda posso fazer login nesta máquina usando SSH usando test
como nome de usuário. Por que isso é assim?
nscd armazena as informações do passwd e do grupo. Experimente nscd -i passwd
e nscd -i group
depois de modificar diretamente esses arquivos.
O uso do arquivo /bin/false
in /etc/passwd
deve desativar o acesso ao shell do usuário. Se você tentar se conectar através do ssh, ele solicitará a senha, mas, embora você a insira, ela fechará a conexão.
Se você não quiser permitir que o usuário efetue login por qualquer outra forma, use passwd <username> -l
para bloquear o login da conta.
Do jeito que você formulou a pergunta, parece que você está modificando o arquivo passwd manualmente.
Você já tentou usar usermod
? Observando a página man , você pode usar usermod -L <account>
se quiser desabilitar logins usando a conta. Se você quiser alterar o uso da shell usermod -s <shell> <account>
.
Modificar o arquivo passwd manualmente é normalmente desaprovado, pois você pode acabar criando mais problemas para si mesmo.