No se puede desbloquear la cuenta de usuario de Linux

14

Tengo una caja de Linux (OpenSuSE 11.3) con una cuenta de usuario bloqueada. Ingresé como la cuenta raíz para desbloquearlo passwd -u <user>, pero recibo un mensaje'Cannot unlock the password for <user>!'

Intenté cambiar la contraseña a algo nuevo a través de passwd, pero al intentar iniciar sesión con esta nueva contraseña aún aparece el mensaje de error "la cuenta ha sido bloqueada debido a x intentos fallidos".

passwd -Sda banderas de estado de 'PS' para la cuenta. No reconozco 'S', pero de todos modos no muestra 'L' (bloqueado) o 'NP' (sin contraseña). /etc/shadowno contiene caracteres extraños como !al principio de la línea para esta cuenta. Mirarlo en la aplicación de administración de esta distribución (YaST) parece mostrar que no está bloqueado (el botón 'deshabilitar cuenta' está desmarcado).

¿Dónde más debo verificar para ver cómo y por qué esta cuenta se niega a desbloquear / iniciar sesión?

mermelada
fuente
¿Qué distribución y versión?
depquid
Esta máquina es OpenSuSE 11.3
atasco

Respuestas:

18

Tuve este problema hoy. Esta fue la solución.

pam_tally --user = --reset

Ejemplo

pam_tally --user=cyberninja --reset

Espero que esto ayude a alguien.


Encontré esta publicación buscando una respuesta a esta pregunta exacta. Tuve el mismo error pero en un servidor SLES 11 SP2. Mi compañero de trabajo restableció mi contraseña e intentó desbloquear mi cuenta con el comando passwd -u. Uno de mis otros compañeros de trabajo dijo que necesitaba una cuenta clara en PAM y me dio el comando. Que he publicado arriba.


Actualizar,

Ahora tengo una solución que evita que esto vuelva a suceder. Parece que hay dos archivos PAM que están en conflicto. Estos archivos son; /etc/pam.d/loginy /etc/pam.d/sshd. Ambos archivos tienen esta línea.

se requiere autenticación pam_tally.so onerr = fail deny = 3

Debe confirmar, esta línea de uno de los archivos enumerados anteriormente. Comentamos la línea en el /etc/pam.d/sshdarchivo.

Después de hacer esto, nunca debería volver a tener este problema.

Ciberninja
fuente
Bienvenido a SU. Intenta explicar un poco más sobre cómo obtuviste tu problema y un poco más sobre tu respuesta si puedes.
Enfermo
Ok, enfermo, actualizaré mi publicación.
Cyberninja
Trabajó en mi servidor RHEL6 también. Sin embargo, el comando era 'pam_tally2'.
SidJ
¡Comprueba la configuración de PAM! En mi PAM, usaba el archivo/var/log/failllog , pero el pam_tally2comando por defecto lo usa /var/log/tallylog, por lo que el usuario informado no está bloqueado. Puedes usar pam_tally2 --file /var/log/faillog.
Marki555
8

Me he enfrentado al mismo problema hoy con una cuenta de usuario en un servidor que ejecuta SUSE Linux Enterprise Server 11 SP2, incluso después de restablecer la contraseña y cambiar la edad a 0 (chage -d 0 userID)

[me@mordor ~]$ ssh frodo@mordor

Welcome to SUSE Linux Enterprise Server 11 SP2  (x86_64) - Kernel \r (\l).


Account locked due to 29 failed logins
Password:
Account locked due to 30 failed logins
Password:

Con el mismo escenario descrito por @Jam en su publicación original. Nada que muestre la cuenta bloqueada ni en "/ etc / passwd" ni en "/ etc / shadow". Los comandos como "passwd -S -a | grep frodo" muestran que la ID no estaba bloqueada (LK)

me@mordor:~> sudo passwd -S -a | grep frodo
frodo PS 01/01/1970 1 90 7 180

También " pam_tally2 " muestra que la ID NO estaba bloqueada:

me@mordor:~> sudo /sbin/pam_tally2 --user frodo
Login           Failures Latest failure     From
frodo             0

Pero el problema era de hecho con " pam_tally "

me@mordor:~> sudo /sbin/pam_tally --user frodo
User frodo    (500)   has 32

Después de desbloquear la contraseña de ID de usuario, pude iniciar sesión con las nuevas credenciales y evitar el mensaje de error.

me@mordor:~> sudo /sbin/pam_tally --user frodo --reset
User frodo    (500)   had 32
me@mordor:~> sudo /sbin/pam_tally --user frodo
User frodo    (500)   has 0

Espero que esto ayude a otra persona a evitar romperse la cabeza como lo hice en la última hora más o menos ... Entonces, para resumir, tenga en cuenta tanto " pam_tally " como " pam_tally2 " cuando la cuenta está bloqueada en SuSE !!

Saludos, Hernan.

3LRusS1T0
fuente
Muchas gracias :) ¿Cuál es la diferencia entre pam_tally y pam_tally2?
mwfearnley
1
¡Comprueba la configuración de PAM! En mi PAM, usaba el archivo /var/log/failllog, pero el pam_tally2comando por defecto lo usa /var/log/tallylog, por lo que el usuario informó erróneamente como no bloqueado. Puedes usar pam_tally2 --file /var/log/faillog.
Marki555
3

Puedes escribir:

pam_tally2 -r -u user_name

para desbloquear la cuenta

ajustar
fuente
1

Tratar

usermod --expire 9999

para desactivar la inactividad de la cuenta (esto establece la fecha de vencimiento en 1/1/9999). passwd -usolo funciona si la contraseña está "bloqueada", pero no para cuentas deshabilitadas.

Darth Android
fuente
Ya veo, ¿hay alguna diferencia entre la contraseña bloqueada / deshabilitada y la cuenta bloqueada / deshabilitada? El mensaje de inicio de sesión fallido me engañó entonces. ¿Afectará este método a la fecha de vencimiento de la contraseña, o es 'vencimiento de la cuenta' algo diferente?
mermelada
Intenté esto y ahora, cuando intento iniciar sesión, solo dice 'error de inicio de sesión' a pesar de que definitivamente obtengo la contraseña correcta (después de 1 falla, la cambié para estar 100% seguro de esto). ¿Alguna sugerencia? S:
mermelada
Esto cambiará el vencimiento de la cuenta, que es independiente del vencimiento de la contraseña. Por lo tanto, las cuentas pueden estar activas o caducadas, las contraseñas pueden estar activas, bloqueadas o caducadas, y es posible caducar automáticamente una cuenta después de que caduque la contraseña. ¿Cuál es la salida de passwd --status <username>? Sería útil si pudiera agregar eso a su pregunta.
Darth Android
La versión de passwdesta distribución no acepta --statuscomo una opción, pero passwd -S <user>('mostrar atributos de contraseña') da: <user> PS <date> <password expiry options>donde fecha es la fecha en que cambié la contraseña por última vez (ayer), y las opciones de caducidad de contraseña son min age(0), max age(90), days before expiry to issue warning(7) y days after expiry with usable login(-1). Todos estos ajustes funcionaron antes, por lo que no creo que ninguno de ellos sea la causa del problema.
Jam
1

El problema también podría haber sido que la cuenta se acaba de crear y aún no se ha asignado una contraseña.

Si es así, passwd -S <user>se mostrará LK(para bloqueado) y passwd -u <user>no funcionará.

Solo necesita asignar una contraseña al usuario para solucionar el problema.

Otin
fuente
0

Con este comando, puede crear un usuario desbloqueado sin ninguna contraseña:

adduser --gecos "Username" --disabled-password "username"

Esto significa que no hay una contraseña aleatoria que cuelgue en el sistema.

Congelli501
fuente