Eu quero obter o hash de senha do sys
usuário no Debian (mas a senha é preferida). Ouvi dizer que todos os hashes de senha são armazenados no /etc/shadow
arquivo, mas não há um hash de senha para o sys
usuário.
Como conseguir isso?
PS eu tenho acesso root.
Em uma instalação normal de desktop, o que você vê
/etc/shadow
é o que você obtém, e os usuários do sistema geralmente não têm senhas definidas. Eles não são usados para logins interativos, portanto, não precisam de senhas.Por exemplo, no sistema que eu olhei,
/etc/shadow
tem esta linha parasys
:É
*
aí que o hash da senha estaria se o usuário tivesse uma senha. Mas*
é um hash de senha inválido, nenhuma senha o produzirá, portanto, não há senha com a qual o usuário possa fazer login.Observe que, se o campo de hash de senha estiver vazio, ele poderá permitir o login sem inserir uma senha. Com as bibliotecas Linux PAM, isso é controlado pela
nullok
configuração parapam_unix.so
( página man ):(se estiver habilitado e a senha estiver vazia, o módulo nem mesmo pede a senha, mas aceita o login diretamente.)
Se você realmente quisesse, poderia definir uma senha para o sistema da maneira usual, mas sugiro que reconsidere o que está fazendo; provavelmente há uma maneira melhor. Observe também que eles também podem não ter um shell utilizável definido, por exemplo, no sistema que olhei, o
sys
shell do usuário está definido como/usr/sbin/nologin
.