Après avoir entré un mot de passe incorrect à une invite de connexion, il existe un délai d'environ 3 secondes. Comment puis-je modifier cela sur un système Linux avec PAM?
Je suppose que vous utilisez Linux et Pam. Le délai est probablement causé par pam_faildelay.so
. Vérifiez votre configuration PAM dans /etc/pam.d
à l'aide de pam_faildelay
, par exemple:
# Enforce a minimal delay in case of failure (in microseconds).
# (Replaces the `FAIL_DELAY' setting from login.defs)
# Note that other modules may require another minimal delay. (for example,
# to disable any delay, you should add the nodelay option to pam_unix)
auth optional pam_faildelay.so delay=3000000
Pour changer l'heure, réglez le paramètre de retard. Si vous souhaitez vous débarrasser du délai, vous pouvez supprimer/commenter la ligne complète.
Une autre source pour le retard peut être pam_unix.so
. Désactiver le retard causé par pam_unix.so
Ajouter le paramètre nodelay
et éventuellement ajouter une ligne appelante pam_faildelay.so
Pour ajouter un retard (variable) à la place, E.G.:
auth optional pam_faildelay.so delay=100000
Vous devez passer le paramètre nodelay
sur le auth
_ pam_unix.so
.
En fonction de la façon dont votre authentification, où vous devez définir le paramètre varie. Cependant la plupart distrubtions Linux ont quelque chose comme /etc/pam.d/system-auth
qui est incluse par tous les fichiers différents.
Donc, par exemple dans /etc/pam.d/system-auth
Vous pourriez avoir une ligne qui ressemble à ceci:
auth sufficient pam_unix.so try_first_pass nullok
Cela devrait être changé pour:
auth sufficient pam_unix.so try_first_pass nullok nodelay
Les pam_unix.so
Module est ce qui effectue l'authentification contre /etc/passwd
et /etc/shadow
. Si vous utilisez LDAP ou un autre backend de mot de passe, vous devez toujours régler nodelay
sur le pam_unix.so
Comme c'est ce qui contrôle l'invite (quand pam_unix.so
échoue à Auth, il passe généralement le mot de passe obtenu au module suivant).
Vous pouvez en savoir plus sur pam_unix.so
en faisant man pam_unix