Después de ingresar una contraseña incorrecta cuando se le solicita iniciar sesión, hay un retraso de aproximadamente 3 segundos. ¿Cómo puedo cambiar eso en un sistema Linux con PAM?
Respuesta1
Supongo que estás usando Linux y pam. El retraso probablemente se debe apam_faildelay.so
. Verifique la configuración de su pam /etc/pam.d
usando pam_faildelay
, por ejemplo:
# 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
Para cambiar el tiempo ajuste el parámetro de retardo. Si desea deshacerse del retraso, puede eliminar/comentar la línea completa.
Otra fuente del retraso puede serpam_unix.so
. Para deshabilitar el retraso causado por, pam_unix.so
agregue el nodelay
parámetro y, opcionalmente, agregue una llamada de línea pam_faildelay.so
para agregar un retraso (variable), por ejemplo:
auth optional pam_faildelay.so delay=100000
Respuesta2
Debe pasar el nodelay
parámetro al auth
pam_unix.so
.
Dependiendo de cómo se autentique, el lugar donde debe configurar el parámetro varía. Sin embargomayoríaLas distribuciones de Linux tienen algo parecido a /etc/pam.d/system-auth
lo que se incluye en todos los archivos diferentes.
Entonces, por ejemplo, /etc/pam.d/system-auth
es posible que tenga una línea similar a esta:
auth sufficient pam_unix.so try_first_pass nullok
Esto debería cambiarse a:
auth sufficient pam_unix.so try_first_pass nullok nodelay
El pam_unix.so
módulo es lo que realiza la autenticación contra /etc/passwd
y /etc/shadow
. Si está utilizando LDAP o algún otro servidor de contraseña, probablemente aún debería configurarlo, nodelay
ya pam_unix.so
que eso es lo que controla el mensaje (cuando pam_unix.so
no se puede autenticar, generalmente simplemente pasa la contraseña que obtuvo al siguiente módulo).
Puedes leer más sobre pam_unix.so
haciendoman pam_unix