Skip to main content

Conceito sobre etc/passwd e etc/shadow | Solyd One

  • Conceito sobre etc/passwd e etc/shadow | Solyd One

📄 /etc/passwd

Cada linha representa um usuário. Formato:

nome_usuario:senha:x:uid:gid:comentário:diretório_home:shell

Campos:

  1. nome_usuario — login do usuário.
  2. senha — geralmente um x (senha real está no /etc/shadow).
  3. uid — ID numérico do usuário.
  4. gid — ID do grupo principal.
  5. comentário — nome completo ou descrição.
  6. diretório_home — caminho da pasta pessoal.
  7. shell — programa de login (ex: /bin/bash).

Exemplo:

joao:x:1001:1001:João da Silva:/home/joao:/bin/bash
danger

Eu posso alterar direto nesse arquivo colocando um hash de senha no lugar do x. Usar o mkpasswd


🔒 /etc/shadow

Armazena hashes das senhas e informações de expiração. Formato:

nome_usuario:senha_hash:última_alteração:mínimo:máximo:aviso:inativo:expiração:reservado

Campos:

  1. nome_usuario — deve corresponder ao /etc/passwd.
  2. senha_hash — hash gerado (ex: $6$... para SHA-512) ou !/* se a conta estiver bloqueada.
  3. última_alteração — dias desde 1º jan 1970 da última mudança de senha.
  4. mínimo — dias mínimos antes de poder trocar a senha novamente.
  5. máximo — dias máximos que a senha é válida.
  6. aviso — dias antes da expiração para avisar o usuário.
  7. inativo — dias após expiração até o bloqueio.
  8. expiração — data (em dias desde 1/1/1970) em que a conta expira.
  9. reservado — não usado (normalmente vazio).

Exemplo:

joao:$6$abc123$X1kV...Qm/:19600:0:99999:7:::