Impossibile sbloccare l'account utente di Linux


14

Ho un box Linux (OpenSuSE 11.3) con un account utente bloccato. Ho effettuato l'accesso come account root per sbloccarlo passwd -u <user>, ma ricevo un messaggio'Cannot unlock the password for <user>!'

Ho provato a cambiare la password con qualcosa di nuovo tramite passwd, ma il tentativo di accedere con questa nuova password dà ancora il messaggio di errore "l'account è stato bloccato a causa di x tentativi falliti".

passwd -Sfornisce flag di stato di "PS" per l'account. Non riconosco "S", ma in ogni caso non mostra "L" (bloccato) o "NP" (nessuna password). /etc/shadownon contiene caratteri strani come quelli !all'inizio della riga per questo account. Guardandolo nell'app di gestione di questa distro (YaST) sembra mostrare che non è bloccato (il pulsante "disabilita account" è deselezionato).

Dove altro devo controllare per vedere come e perché questo account si rifiuta di sbloccare / accedere?


Quale distribuzione e versione?
depquid

Questa macchina è OpenSuSE 11.3
marmellata

Risposte:


18

Ho avuto questo problema oggi. Questa era la soluzione.

pam_tally --user = --reset

Esempio

pam_tally --user=cyberninja --reset

Spero che questo aiuti qualcuno.


Ho trovato questo post in cerca di una risposta a questa domanda esatta. Ho avuto lo stesso errore ma su un server SLES 11 SP2. Il mio collega ha reimpostato la mia password e ha provato a sbloccare il mio account con il comando passwd -u. Uno dei miei colleghi ha detto che avevo bisogno di un resoconto chiaro in PAM e mi ha dato il comando. Che ho pubblicato sopra.


Aggiornare,

Ora ho una correzione che impedisce che ciò accada di nuovo. Sembra che ci siano due file PAM in conflitto. Questi file sono; /etc/pam.d/logine /etc/pam.d/sshd. Entrambi i file hanno questa linea.

autenticazione obbligatoria pam_tally.so onerr = fail deny = 3

È necessario eseguire il commit, questa riga da uno dei file sopra elencati. Abbiamo commentato la riga nel /etc/pam.d/sshdfile.

Dopo averlo fatto, non dovresti più avere questo problema.


Benvenuti in SU. Prova a spiegare un po 'di più su come hai avuto il tuo problema e anche un po' di più sulla tua risposta, se puoi.
Sickest,

Ok Sickest, aggiornerò il mio post.
Cyberninja,

Ha funzionato anche nel mio server RHEL6. il comando era comunque 'pam_tally2'.
SidJ,

Controlla la configurazione PAM! Nel mio PAM, usava il file /var/log/failllog, ma il pam_tally2comando usa di default /var/log/tallylog, quindi l'utente segnalato come non bloccato. È possibile utilizzare pam_tally2 --file /var/log/faillog.
Marki555,

8

Oggi ho riscontrato lo stesso problema con un account utente in un server che esegue SUSE Linux Enterprise Server 11 SP2, anche dopo aver reimpostato la password e modificato l'età su 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 lo stesso escenario descritto da @Jam nel suo post originale. Nulla mostra l'account bloccato né su "/ etc / passwd" né su "/ etc / shadow". Comandi come "passwd -S -a | grep frodo" hanno mostrato che l'ID non era bloccato (LK)

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

Inoltre " pam_tally2 " mostra che l'ID NON era bloccato:

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

Ma il problema era in effetti con " pam_tally "

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

Dopo aver sbloccato la password ID utente, sono stato in grado di accedere con le nuove credenziali ed evitare il messaggio di errore.

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

Spero che questo aiuti qualcun altro a evitare di rompere la testa come ho fatto nell'ultima ora o giù di lì ... Quindi, per farla breve, fai attenzione a controllare sia " pam_tally " che " pam_tally2 " quando l'account è bloccato in SuSE !!

Saluti, Hernan.


Grazie mille :) Qual è la differenza tra pam_tally e pam_tally2?
mwfearnley,

1
Controlla la configurazione PAM! Nel mio PAM, utilizzava il file /var/log/failllog, ma il pam_tally2comando utilizza per impostazione predefinita /var/log/tallylog, quindi l'utente erroneamente segnalato come non bloccato. È possibile utilizzare pam_tally2 --file /var/log/faillog.
Marki555,

3

Puoi digitare:

pam_tally2 -r -u user_name

per sbloccare l'account.


1

Provare

usermod --expire 9999

per disabilitare l'inattività per l'account (imposta la data di scadenza su 1/1/9999). passwd -uFunziona solo se la password è "bloccata", ma non per gli account disabilitati.


Vedo, quindi c'è una differenza tra la password bloccata / disabilitata e l'account bloccato / disabilitato? Il messaggio sull'accesso non riuscito mi ha indotto in errore. Questo metodo influirà sulla data di scadenza della password o la "scadenza dell'account" è una cosa separata?
Marmellata

Ho provato questo e ora quando provo ad accedere dice semplicemente 'login fallito' anche se sto sicuramente ottenendo la password corretta (dopo 1 errore l'ho cambiata per essere sicura al 100% di questo). Eventuali suggerimenti? S:
marmellata

Ciò modificherà la scadenza dell'account, che è separata dalla scadenza della password. Pertanto, gli account possono essere attivi o scaduti, le password possono essere attive, bloccate o scadute ed è possibile far scadere automaticamente un account dopo la scadenza della password. Qual è l'output di passwd --status <username>? Sarebbe utile se tu potessi aggiungerlo alla tua domanda.
Darth Android

La versione di passwdquesta distro non accetta --statuscome opzione ma passwd -S <user>("mostra attributi password") indica: <user> PS <date> <password expiry options>dove data è la data dell'ultima modifica della password (ieri) e le opzioni di scadenza della password sono min age(0), max age(90), days before expiry to issue warning(7) e days after expiry with usable login(-1). Tutte queste impostazioni hanno funzionato prima, quindi non credo che nessuna di esse sia la causa del problema.
marmellata

1

Il problema potrebbe anche essere che l'account è stato appena creato e non è stata ancora assegnata alcuna password.

In tal caso, passwd -S <user>mostrerà LK(per bloccato) epasswd -u <user> non funzionerà.

Devi solo assegnare un passwd all'utente per risolvere il problema.


0

Con questo comando, puoi creare un utente sbloccato senza password:

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

Ciò significa che nessuna password casuale è sospesa sul sistema.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.