passwd - alterar a senha do usuário
SINTAXE
passwd [opções] [LOGIN]
DESCRIÇÃO
O comando passwd altera as senhas das contas de usuário. Um usuário comum só pode alterar a senha de sua própria conta, enquanto o superusuário pode alterar a senha de qualquer conta. O comando passwd também altera o período de validade da conta ou da senha associada.
Alterações de Senha
Se a conta tiver uma senha diferente de vazia, o usuário é solicitado a inserir sua senha atual. A senha inserida é criptografada e comparada com o valor armazenado. O usuário tem apenas uma tentativa para inserir a senha correta. O superusuário pode ignorar esta etapa para permitir a alteração de senhas esquecidas.
Após a entrada da senha, as informações de envelhecimento da senha são verificadas para determinar se o usuário tem permissão para alterar a senha neste momento. Caso contrário, o comando passwd se recusa a alterar a senha e sai.
O usuário é então solicitado a inserir duas vezes uma nova senha. A segunda entrada é comparada com a primeira e ambas devem corresponder para que a senha seja alterada.
Em seguida, a senha é testada quanto à complexidade. O comando passwd rejeita senhas que não atendem aos requisitos de complexidade. Não inclua os caracteres de apagamento ou término padrão do sistema.
Dicas para senhas de usuário
A segurança de uma senha depende da força do algoritmo de criptografia e do tamanho do espaço de chaves. O método de criptografia UNIX legado é baseado no algoritmo NBS DES. Métodos mais recentes agora são recomendados (veja ENCRYPT_METHOD). O tamanho do espaço de chaves depende da aleatoriedade da senha selecionada.
As violações da segurança da senha normalmente resultam da seleção ou manipulação descuidada da senha. Por este motivo, você não deve selecionar uma senha que apareça em um dicionário ou que precise ser escrita. A senha também não deve ser um nome próprio, seu número de licença, data de nascimento ou endereço. Qualquer um desses pode ser usado como suposições para violar a segurança do sistema.
Como regra geral, as senhas devem ser longas e aleatórias. É aceitável usar conjuntos de caracteres simples, como senhas consistindo apenas de letras minúsculas, se isso ajudar a memorizar senhas mais longas. Para uma senha consistindo apenas de letras minúsculas em inglês escolhidas aleatoriamente e com um comprimento de 32, existem 26^32 (aproximadamente 2^150) combinações possíveis diferentes. Sendo uma equação exponencial, fica claro que o expoente (o comprimento) é mais importante do que a base (o tamanho do conjunto de caracteres).
Você pode encontrar conselhos sobre como escolher uma senha forte em https://en.wikipedia.org/wiki/Password_strength
OPÇÕES
As opções que se aplicam ao comando passwd são:
-a, --all
Esta opção só pode ser usada com -S e faz com que o status seja exibido para todos os usuários.
-d, --delete
Exclui a senha de um usuário, tornando-a vazia. Este comando define a conta como sem senha.
-e, --expire
Expira imediatamente a senha de uma conta. Isso, de fato, pode forçar um usuário a alterar sua senha no próximo login do usuário.
-h, --help
Exibe a mensagem de ajuda e sai.
-i, --inactive INACTIVE
Esta opção é usada para desativar uma conta após a senha ter expirado por um número de dias. Após uma conta de usuário ter uma senha expirada por INACTIVE dias, o usuário não poderá mais fazer login na conta.
-k, --keep-tokens
Indica que a alteração da senha deve ser realizada apenas para tokens de autenticação expirados (senhas). O usuário deseja manter seus tokens não expirados como antes.
-l, --lock
Bloqueia a senha da conta especificada. Esta opção desativa uma senha alterando-a para um valor que não corresponde a nenhum valor criptografado possível (adiciona um ´!´ no início da senha).
Observe que isso não desativa a conta. O usuário ainda pode fazer login usando outro token de autenticação (por exemplo, uma chave SSH). Para desativar a conta, os administradores devem usar usermod --expiredate 1 (isso define a data de validade da conta para 1970-01-02).
Usuários com uma senha bloqueada não podem alterar sua senha.
-n, --mindays MIN_DAYS
Define o número mínimo de dias entre as alterações de senha para MIN_DAYS. Um valor de zero para este campo indica que o usuário pode alterar sua senha a qualquer momento.
-q, --quiet
Modo silencioso.
-r, --repository REPOSITORY
alterar senha no repositório REPOSITORY
-R, --root CHROOT_DIR
Aplicar alterações no diretório CHROOT_DIR e usar os arquivos de configuração do diretório CHROOT_DIR. Apenas caminhos absolutos são suportados.
-P, --prefix PREFIX_DIR
Aplicar alterações aos arquivos de configuração sob o sistema de arquivos raiz encontrado sob o diretório PREFIX_DIR. Esta opção não usa chroot e é destinada à preparação de um destino de compilação cruzada. Algumas limitações: usuários/grupos NIS e LDAP não são verificados. Sem suporte PAM. Sem suporte SELINUX.
-S, --status
Exibe informações de status da conta. As informações de status consistem em 7 campos. O primeiro campo é o nome de login do usuário. O segundo campo indica se a conta de usuário tem uma senha bloqueada (L), não tem senha (NP) ou tem uma senha utilizável (P). O terceiro campo fornece a data da última alteração de senha. Os quatro campos seguintes são a idade mínima, a idade máxima, o período de aviso e o período de inatividade da senha. Essas idades são expressas em dias.
-u, --unlock
Desbloqueia a senha da conta especificada. Esta opção reativa uma senha alterando a senha de volta para seu valor anterior (para o valor antes de usar a opção -l).
-w, --warndays WARN_DAYS
Define o número de dias de aviso antes que uma alteração de senha seja necessária. A opção WARN_DAYS é o número de dias antes da expiração da senha, durante os quais o usuário é avisado de que sua senha está prestes a expirar.
-x, --maxdays MAX_DAYS
Define o número máximo de dias em que uma senha permanece válida. Após MAX_DAYS, a senha é necessária para ser alterada.
Passar o número -1 como MAX_DAYS removerá a verificação da validade de uma senha.
-s, --stdin
Esta opção é usada para indicar que o comando passwd deve ler a nova senha da entrada padrão, que pode ser um pipeline.
AVISOS
A verificação da complexidade da senha pode variar de site para site. Recomenda-se que o usuário selecione uma senha tão complexa quanto ele se sentir confortável.
Os usuários podem não conseguir alterar sua senha em um sistema se o NIS estiver habilitado e eles não estiverem conectados ao servidor NIS.
O comando passwd usa o PAM para autenticar usuários e alterar suas senhas.
ARQUIVOS
/etc/passwd
Informações da conta de usuário.
/etc/shadow
Informações seguras da conta de usuário.
/etc/pam.d/passwd
Configuração PAM para passwd.
VALORES DE SAÍDA
O comando passwd sai com os seguintes valores:
0 sucesso
1 permissão negada
2 combinação inválida de opções
3 falha inesperada, nada feito
4 arquivo passwd ausente
5 arquivo passwd ocupado, tente novamente
6 argumento inválido para opção
10 um erro foi retornado por [pam](filename}pam.md)(3)
VER TAMBÉM
chpasswd(8), makepasswd(1), passwd(5), shadow(5), usermod(8).
A seguinte página da web compara, de forma cômica (mas correta), a força de dois métodos diferentes para escolher uma senha: "https://xkcd.com/936/"