Ich möchte konfigurieren, wie oft der Benutzer bei der Anmeldung nach seinem Passwort gefragt wird (Authentifizierungsversuche), bevor die Sitzung beendet wird. Unterstützt PAM diesen Fall? Wenn ja, können Sie mir bei der dafür erforderlichen Konfiguration helfen?
Antwort1
Es gibt ein Login-Zählermodul für PAM namenspam_tally
Damit können Sie die Anzahl der Anmeldeversuche verwalten und weitere Versuche blockieren, wenn eine bestimmte Anzahl an Anmeldeversuchen fehlschlägt.
Beispiel:
Unter Debian können Sie die folgenden Zeilen hinzufügen, um /etc/pam.d/common-auth
Benutzern drei Anmeldeversuche zu geben, bevor das Konto gesperrt wird:
auth required pam_tally.so onerr=fail deny=3 no_magic_root
Dadurch no_magic_root
wird verhindert, dass der Root-Benutzer ausgesperrt wird.
AlspeterphWie bereits erwähnt, unlock_time
kann mit dieser Option eine Anzahl von Sekunden angegeben werden, nach deren Ablauf ein gesperrtes Konto automatisch entsperrt wird. Indem Sie diese Option auf setzen 1
, also das Konto für eine Sekunde sperren, kann der Anmeldeversuch nach einer bestimmten Anzahl von Versuchen abgebrochen werden, während der Benutzer dennoch (fast) sofort einen erneuten Versuch unternehmen kann.
Durch Hinzufügen der folgenden Zeile /etc/pam.d/common-account
wird der Anmeldezähler bei einer erfolgreichen Anmeldung zurückgesetzt:
account required pam_tally.so reset no_magic_root
Unter Fedora können beide Zeilen hinzugefügt werden /etc/pam.d/system-auth
.
Der Zugriff auf ein gesperrtes user
Konto kann mit dem zugehörigen pam_tally
Dienstprogramm wie folgt wiederhergestellt werden:
$ pam_tally --user user --reset=0
Antwort2
Wenn Sie steuern möchten, wie oft jemand zur Eingabe aufgefordert wird, und nicht, wie oft die Authentifizierung fehlschlagen kann, kann dies über PAM möglicherweise nicht einfach zu verwalten sein. Beispielsweise hat ssh hierfür eine eigene Konfiguration:
NumberOfPasswordPrompts
Specifies the number of password prompts before giving up. The
argument to this keyword must be an integer. The default is 3.