Ich versuche, die Kennwortrichtlinie für Benutzer in RHEL 6.6 zu konfigurieren, und möchte, dass das System neu erstellte Benutzer auffordert, das ursprüngliche Kennwort bei der ersten Anmeldung zu ändern.
Beachten Sie, dass ich versucht habe, die EXPIRE-Variable in / etc / default / useradd auf 0 und INACTIVE auf -1 zu setzen, dies jedoch nach der Erstellung zum Ablauf eines neuen Benutzerkontos führt. Die Ausgabe des Befehls chage nach der Benutzererstellung mit diesen Variablen lautet:
# chage -l foo
Last password change : Feb 22, 2015
Password expires : May 23, 2015
Password inactive : never
Account expires : Feb 22, 2015
Minimum number of days between password change : 1
Maximum number of days between password change : 90
Number of days of warning before password expires : 7
Wenn ich versuche, mich unter foo user anzumelden, wird die Meldung "Ihr Konto ist abgelaufen. Bitte wenden Sie sich an Ihren Systemadministrator" angezeigt.
Wenn ich jedoch das Fenster "Benutzereigenschaften" öffne, die Registerkarte "Kennwortinformationen" auswähle und "Kennwortänderung bei nächster Anmeldung erzwingen" aktiviere, entspricht das Ergebnis meinen Erwartungen. Neuer Benutzer wird aufgefordert, das Passwort zu ändern. In diesem Fall wird der Befehl chage ausgegeben:
# chage -l foo2
Last password change : password must be changed
Password expires : password must be changed
Password inactive : password must be changed
Account expires : never
Minimum number of days between password change : 1
Maximum number of days between password change : 90
Number of days of warning before password expires : 7
Wenn ich mich unter foo2 user anmelde, fordert mich das System auf, das Passwort zu ändern.
Gibt es also eine Möglichkeit, das System so zu konfigurieren, dass Benutzerkontoparameter bei der Erstellung wie im zweiten Fall festgelegt werden?
Upd
cat /etc/default/useradd
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=0
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
Selbst wenn ich INACTIVE kommentiere oder auf einen positiven Wert setze, ist das Konto abgelaufen, aber kein Passwort.
Außerdem habe ich PAM auf dem Computer konfiguriert.
Upd 2
Ich habe dies auf einer Maschine mit RHEL 6.2 und ohne PAM-Konfiguration überprüft. Effekt ist der gleiche.
EXPIRE=0
in /etc/default/useradd
sollte den Job machen. Ich habe gelesen, du hast es versucht. Können Sie die unkommentierten Zeilen von hinzufügen /etc/default/useradd
? Es ist gesperrt, auch wenn Sie nicht INACTIVE = -1, sondern einen anderen Wert angeben oder wenn Sie diese Zeile kommentieren? Können Sie angeben, ob Konten gesperrt sind, auch wenn sie über die Befehlszeile erstellt wurden? Und bitte, wenn Sie eine andere Frage haben, posten Sie sie auf einer separaten Seite, wenn sie eine andere Antwort hat.
adduser
können Sie den chage
Befehl eingeben /usr/local/sbin/adduser.local
. Sie können das Altersfeld in / etc / shadow auch direkt auf 0 setzen. useradd
ist das "Low Level Utility", das in Verbindung mit anderen Befehlen verwendet werden soll.
chage -d 0 {user-name}
.