Come posso verificare se la mia password di root (login) è disabilitata?


10

Ho abilitato (impostato) per errore la mia password di root (per impostazione predefinita è bloccata) e ora voglio "annullarla". Ho usato entrambi i comandi

sudo usermod -p '!' root

e

sudo passwd -dl root

in questo ordine.

Come posso verificare se l'account di root è bloccato?

Risposte:


18

Puoi usare il passwdcomando:

# passwd -S
root P 11/04/2014 -1 -1 -1 -1
# passwd -l root
passwd: password expiry information changed.
# passwd -S 
root L 11/04/2014 -1 -1 -1 -1
# passwd -d root
passwd: password expiry information changed.
# passwd -S 
root NP 11/04/2014 -1 -1 -1 -1

Da man 1 passwd:

   -S, --status
       Display account status information. The status information consists
       of 7 fields. The first field is the user's login name. The second
       field indicates if the user account has a locked password (L), has
       no password (NP), or has a usable password (P). The third field
       gives the date of the last password change. The next four fields
       are the minimum age, maximum age, warning period, and inactivity
       period for the password. These ages are expressed in days.

I dati mostrati sono memorizzati /etc/shadow, il file che contiene le password crittografate.

Ad esempio, dopo ciascuno dei passwdcomandi precedenti , gli stati erano:

1:root:$6$............long hash...............::::::
1:root:!$6$........same long hash.............:16478::::::
1:root::16478::::::

5

Una possibilità è quella di esaminare / etc / passwd inserendo

grep root /etc/passwd

Dovrebbe mostrare una riga che inizia come root:x: ......dove la x indica che le password crittografate sono memorizzate nel file shadow. Se questo è il caso, lo esaminiamo eseguendo

sudo grep root /etc/shadow

(il file shadow deve essere aperto sudo!) Dovresti ottenere una riga che inizi come segue come risultato in root:!: ......cui !o un *segnale che l'account è disabilitato. Qualsiasi altro valore (che non inizia con! O *) in seguito root:indicherebbe una password funzionante.


grazie, ma mi chiedo solo, c'è qualche file che contiene tali informazioni?
martedì

Ho studiato un po 'e ho aggiunto un'altra parte alla mia risposta, accedendo ai file in cui sono memorizzate le password, proprio come desideravi.
Byte Commander

Ho provato il tuo primo suggerimento, ed è sbagliato, sudo usa ancora la password dell'utente. Il paragrafo modificato funziona, cioè l'informazione che stavo cercando
nobru,

la fonte dei dati è man passwd.5eman shadow.5
Sergei G,

0

Facile.

Premi Ctrl + Alt + F1. Questo porterà ad un terminale separato. Prova ad accedere come root digitando rootcome accesso e fornendo la password.

Se l'account di root è abilitato, il login funzionerà. Se l'account di root è disabilitato, l'accesso non riuscirà.

Per tornare alla tua GUI, premi Ctrl + Alt + F7.


Non è necessario andare fino al TTY per questo. Un semplice sufarà.
Muru,

grazie, ci ho provato e ora è bloccato. Ma mi chiedo se c'è qualche file che posso aprire e controllarlo. Diciamo ipoteticamente che non ricordo la password che ho digitato, e non esiste alcuna opzione per impostarne un'altra con sudo dall'utente, quindi voglio controllare alcuni file di login se esistono.
martedì

0

Di default quando installi Ubuntu non dovresti conoscere la password di root. Esiste, ma l'utente non dovrebbe saperlo. Un amministratore, ovviamente, potrebbe scegliere di modificare la password sudo passwdma in genere non dovrebbe essere necessario, a meno che tu non sappia cosa stai facendo e perché lo stai facendo.

Un file che contiene informazioni su tutte le password degli utenti è /etc/shadow e ogni voce in quel file è crittografata. Quindi, a meno che un utente malintenzionato non abbia ottenuto l'accesso al tuo sistema e rubato questo file, non dovrebbe essere in grado di accedere a root. Ovviamente c'è sempre una possibilità, quindi ti suggerisco di disabilitare tutte le funzionalità di accesso remoto: telnet (non abilitato per impostazione predefinita), ssh, desktop remoto, ecc. Procurati uno nmapstrumento e scansiona il tuo sistema sudo nmap localhostper vedere quali porte potrebbero essere aperte sul tuo sistema. Inoltre, procuratevi un firewall; Ubuntu viene fornito con ufw firewall, che è semplice da usare e fa abbastanza bene il lavoro.

Tra gli altri metodi, è possibile testare l'account root con sudo -i

Nel /etc/sudoersfile, si dovrebbe avere una linea come questa: sudo -i. Se non riesci ad accedere come root, non vedi il prompt # come, quindi l'account è bloccato

Defaults env_reset,timestamp_timeout=30

timestamp_timeout dirà a sudo di chiedere nuovamente la password dopo 30 secondi, in modo da non essere sempre connesso con i privilegi di root. È uno dei modi per proteggere il tuo sistema.

Un effetto collaterale negativo della modifica della password di root è che se si dimentica la password o un altro utente sul sistema dimentica la password, non si avrà accesso a root. Non sono a conoscenza di alcun caso, ma c'è sempre la possibilità di rovinare il sistema, perché alcuni dei processi funzionano come root e se si blocca l'account di root c'è una possibilità che quelli potrebbero non funzionare correttamente o affatto.

Consiglio vivamente di leggere man sudoers, man passwd,man shadow`.

Buona fortuna e spero che questo aiuti!


0

catch bleow one liner command per la segnalazione della password di tutti gli utenti esistenti in linux sever.

for i in $(cat /etc/passwd | awk -F ':' '{print $1}'); do echo "##############" "$i" "############";chage -l $i; echo "##################################"; done | nl | less
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.