Es gibt mehrere Möglichkeiten, wie Benutzerkonten gesperrt oder deaktiviert werden können. In den Beiträgen werden einige der am häufigsten verwendeten Methoden erörtert.
1. Sperren Sie das Passwort
Um ein Benutzerkonto zu sperren, verwenden Sie den Befehl usermod -L oder passwd -l . Beide Befehle fügen ein Ausrufezeichen (“!”) hinzu im zweiten Feld der Datei /etc/passwd . Zum Beispiel:
# usermod -L testuser
oder
# passwd -l testuser
2. Lassen Sie das Benutzerkonto ablaufen
Die Befehle passwd -l und usermod -L sind ineffizient, wenn es darum geht, Benutzerkonten zu deaktivieren/sperren. Diese Befehle verbieten die Authentifizierung durch öffentliche SSH-Schlüssel (oder andere PAM-Module außer pam_unix, die möglicherweise aktiviert sind) nicht. Darüber hinaus ist das Ändern der Shell auf /bin/false oder /sbin/nologin für uns unbefriedigend, da dies nur interaktive Anmeldungen betrifft. Um also Benutzerkonten vollständig zu deaktivieren, können Sie den Befehl chage -E0 verwenden . Zum Beispiel:
# chage -E0 testuser
Ablauf eines Kontos durch Verwendung des 8. Feld in /etc/shadow (mit „chage -E“) blockiert alle Zugriffsmethoden, die PAM verwenden, um einen Benutzer zu authentifizieren.
3. Shell wechseln
Wir können auch die Standard-Shell des Benutzers auf /sbin/nologin ändern damit der Benutzer keine Login-Shell erhält, wenn er versucht, sich in das System einzuloggen.
# usermod -s /sbin/nologin [username]
Sie können im siebten und letzten Feld in /etc/passwd nachsehen, ob die Shell zu /sbin/nologin geändert wurde.
Überprüfen Sie, ob das Konto gesperrt oder deaktiviert ist.
Für jede der oben beschriebenen Methoden können Sie mit den folgenden Methoden überprüfen, ob das Benutzerkonto gesperrt/deaktiviert ist.
1. Überprüfen Sie, ob das Benutzerkonto gesperrt ist.
Suchen Sie nach dem Flag *LK* in der folgenden Befehlsausgabe, die anzeigt, dass das Konto gesperrt ist.
# passwd --status root root *LK* 2017-07-19 0 45 7 -1 (Password set, SHA512 crypt.)
2. Überprüfen Sie, ob das Konto ein Ablaufdatum hat.
Suchen Sie nach den Zeilen Passwort läuft ab und Konto läuft ab um zu prüfen, ob das Passwort des Kontos abgelaufen ist.
# chage -l root Last password change : Jul 19, 2017 Password expires : Sep 02, 2017 Password inactive : never Account expires : Sep 02, 2017 Minimum number of days between password change : 0 Maximum number of days between password change : 45 Number of days of warning before password expires : 7
3. Auf nicht interaktive Shell prüfen
Überprüfen Sie, ob die Benutzer-Shell in eine nicht interaktive Shell wie /sbin/nologin geändert wurde .
# grep ^root /etc/passwd root:x:0:0:root:/root:/sbin/nologin