Das Problem
Ein neuer Benutzer wurde erstellt und mit einem Passwort versehen. Sie hat sich angemeldet und versucht, das Passwort zu ändern, bekam aber den oben genannten Fehler.
user1@XXXX:/home/user1: passwd Changing password for user user1. Changing password for user1 (current) UNIX password: You must wait longer to change your password Current Password: passwd: Authentication token manipulation error
Die Lösung
Informationen zur Kennwortalterung für den betroffenen Benutzer lauten wie folgt:
# chage -l user1 Last password change : Feb 07, 2017 Password expires : May 08, 2017 Password inactive : May 23, 2017 Account expires : never Minimum number of days between password change : 30 Maximum number of days between password change : 90 Number of days of warning before password expires : 7
Informationen zur Passwortalterung zeigen, dass das Passwort am 7. Februar 2017 geändert wurde, und „Mindestanzahl von Tagen zwischen Passwortänderungen“. “ beträgt 30 Tage. Die nächste Passwortänderung für diesen Benutzer kann 30 Tage nach dem 7. Februar 2017 erfolgen. In diesem Fall hat der Benutzer versucht, das Passwort am 7. Februar 2017 erneut zu ändern, was nicht zulässig ist.
Das Zeitlimit zwischen zwei aufeinanderfolgenden Passwortänderungen für einen Benutzer wird durch „Mindestanzahl Tage zwischen Passwortänderung“ definiert. Entweder sollte der Benutzer die Mindestanzahl von Tagen abwarten, um sein Passwort erneut zu ändern, oder die Einstellung „Mindestanzahl von Tagen zwischen Passwortänderungen“ sollte geändert werden.
Wenn Sie Benutzern ermöglichen möchten, ihre Kennwörter jederzeit selbst zu ändern, nehmen Sie die folgenden Änderungen vor:
1. Für bestehende Benutzer,
# chage --mindays 0 username
2. Um es als Standard für alle neu zu erstellenden Benutzer festzulegen, legen Sie PASS_MIN_DAYS in /etc/login.defs fest auf Null.
# vi /etc/login.defs PASS_MIN_DAYS 0
Wenn Sie „Mindestanzahl Tage zwischen Passwortänderung“ auf einen anderen Wert setzen möchten, ersetzen Sie Null durch den gewünschten Wert in den obigen Befehlen.
Hinweis :Der Root-Benutzer hat das Recht, die obige Einstellung zu überschreiben, und er kann das Passwort für jeden Benutzer jederzeit zurücksetzen.Alternativer Weg
Sie können auch die Kennwortalterungsinformationen auf Linux-Standardwerte ändern und versuchen, das Kennwort erneut zu ändern. Wenn Sie das vierte Feld auf „0“ ändern, wird die Mindestanzahl von Tagen zwischen Kennwortänderungen auf „0“ geändert, sodass der Benutzer sein Kennwort ohne Einschränkungen ändern kann.
Nehmen Sie folgende Änderungen an „/etc/shadow vor ” Datei als Root-Benutzer:
user:#4$jhagsjas$GJASJgjas/LNh8it5jT.N0:16345:0:99999:7:::
oder Sie können das Passwort des Benutzers auch mit dem Root-Konto ablaufen lassen:
# chage -d 0 user1
Wenn Sie die Passwortinformationen für den Benutzer erneut überprüfen, würden Sie Folgendes finden:
# chage -l user1 Last password change : Feb 07, 2017 Password expires : May 08, 2017 Password inactive : May 23, 2017 Account expires : never Minimum number of days between password change : 0 Maximum number of days between password change : 90 Number of days of warning before password expires : 7
Versuchen Sie das Passwort zu ändern und es sollte jetzt funktionieren.