Observe que o comando que você está executando com sudo
é /usr/bin/passwd
, não /usr/bin/passwd.shadow
. Não é imediatamente óbvio porque passwd.shadow
é mencionado: é possível que passwd.shadow
seja um comando auxiliar que é usado pelo comando principal passwd
.
Mesmo sem sudo
, cada usuário pode alterar seus próprios - e somente sua própria - senha usando o comando passwd
sem parâmetros. Quando for usado dessa maneira, qualquer verificação de qualidade de senha configurada no PAM não poderá ser ignorada digitando-se a nova senha uma terceira vez, como pode fazer root (ou alguém executando passwd
como root via sudo
).
Se você quiser remover as verificações de qualidade de senha, no Linux elas geralmente são controladas pelo módulo PAM pam_cracklib.so
, pam_passwdqc.so
ou pam_pwquality.so
, dependendo da distribuição Linux usada. Pode haver arquivos de configuração para esses módulos no diretório /etc/security/
, ou você pode comentar os módulos completamente dos arquivos de configuração em /etc/pam.d/
se você quiser aceitar senhas muito simples.
Se o comando passwd
estiver funcionando normalmente, você precisará apenas de sudo
para permitir que o usuário1 altere a senha do usuário2, desta forma:
user1 ALL= EXEC: PASSWD: /usr/bin/passwd user2
Permitir que todos alterem as senhas de todos é efetivamente o mesmo que dar acesso irrestrito a todos. Isso geralmente é uma má ideia.