Tâche #31125
Scénario #31000: Impossible de changer les mots de passe des comptes root et eole lors de l'instance (2.8.0-beta1)
La commande chpasswd ne permet pas de changer les mots de passe
100%
Description
Lors de l'invocation de la commande chpasswd durant l'instance, aucun mot de passe n'est accepté y compris ceux remplissant les conditions.
chpasswd fait appel à pam via le fichier /etc/pam.d/chpasswd.
Dans ce fichier est inclus le fichier /etc/pam.d/common-password qui contient
password required pam_passwdqc.so ask_oldauthtok similar=deny min=disabled,9,9,8,8 passphrase=0 max=40 password requisite pam_unix.so nullok sha512 minlen=8 use_first_pass
Si on remplit le fichier /etc/pam.d/chpasswd avec le contenu du fichier /etc/pam.d/common-password en enlevant l'option ask_oldauthtok la commande chpasswd fonctionne correctement.
Le contenu du fichier /etc/pam.d/chpasswd devrait être (sans l'include de common-passwsord):
password required pam_passwdqc.so similar=deny min=disabled,9,9,8,8 passphrase=0 max=40 password requisite pam_unix.so nullok sha512 minlen=8 use_first_pass
Associated revisions
Change pam config for chpasswd use
/etc/pam.d/chpasswd don't include common-password anymore
new pam template for chpasswd is provided without ask_oldauthtok
ref:#32125
History
#1 Updated by Laurent Flori almost 3 years ago
- Status changed from Nouveau to En cours
#2 Updated by Laurent Flori almost 3 years ago
- Description updated (diff)
#3 Updated by Daniel Dehennin almost 3 years ago
Le ask_oldauthok
est nécessaire pour que la commande passwd
demande l’ancien mot de passe mais c’est cette option qui rend chpasswd
non fonctionnel.
#4 Updated by Daniel Dehennin almost 3 years ago
J’ai ouvert une demande chez Launchpad: https://bugs.launchpad.net/ubuntu/+source/shadow/+bug/1904166
#5 Updated by Laurent Flori almost 3 years ago
Fait pour >=2.8.0
#6 Updated by Laurent Flori almost 3 years ago
- Status changed from En cours to Résolu
#7 Updated by Joël Cuissinat almost 3 years ago
- Status changed from Résolu to Fermé
- % Done changed from 0 to 100
- Remaining (hours) set to 0.0
~/git/eole-common$ git branch -r --contains ec6dfae6 origin/2.8.0/master origin/HEAD -> origin/master origin/dist/eole/2.8.0/master origin/dist/eole/2.8.1/master origin/master
J'ai déroulé le test squash avec succès :)