GNU/Linux >> Linux Esercitazione >  >> Linux

Comprendere il file /etc/shadow

Esistono diversi schemi di autenticazione che possono essere utilizzati su sistemi Linux. Lo schema più comunemente usato e standard consiste nell'eseguire l'autenticazione rispetto a /etc/passwd e /etc/shadow file.

/etc/shadow è un file di testo che contiene informazioni sulle password degli utenti del sistema. È di proprietà dell'utente root e del gruppo shadow e dispone di 640 autorizzazioni.

/etc/shadow Formato #

Il /etc/shadow contiene una voce per riga, ciascuna delle quali rappresenta un account utente. Puoi visualizzare il contenuto del file, con un editor di testo o un comando come cat :

sudo cat /etc/shadow

In genere, la prima riga descrive l'utente root, seguito dal sistema e dai normali account utente. Le nuove voci vengono aggiunte alla fine del file.

Ogni riga del /etc/shadow contiene nove campi separati da virgole:

mark:$6$.n.:17736:0:99999:7:::
[--] [----] [---] - [---] ----
|      |      |   |   |   |||+-----------> 9. Unused
|      |      |   |   |   ||+------------> 8. Expiration date
|      |      |   |   |   |+-------------> 7. Inactivity period
|      |      |   |   |   +--------------> 6. Warning period
|      |      |   |   +------------------> 5. Maximum password age
|      |      |   +----------------------> 4. Minimum password age
|      |      +--------------------------> 3. Last password change
|      +---------------------------------> 2. Encrypted Password
+----------------------------------------> 1. Username
  1. Nome utente. La stringa che digiti quando accedi al sistema. L'account utente esistente nel sistema.

  2. Password crittografata. La password sta usando il $type$salt$hashed formato. $type è l'algoritmo di hash crittografico del metodo e può avere i seguenti valori:

    • $1$ – MD5
    • $2a$ – Pesce palla
    • $2y$ – Eksblowfish
    • $5$ – SHA-256
    • $6$ – SHA-512

    Se il campo della password contiene un asterisco (* ) o punto esclamativo (! ), l'utente non sarà in grado di accedere al sistema utilizzando l'autenticazione tramite password. Sono ancora consentiti altri metodi di accesso come l'autenticazione basata su chiave o il passaggio all'utente.

    Nei vecchi sistemi Linux, la password crittografata dell'utente era archiviata in /etc/passwd file.

  3. Ultima modifica della password. Questa è la data dell'ultima modifica della password. Viene contato il numero di giorni dal 1 gennaio 1970 (data dell'epoca).

  4. Età minima della password. Il numero di giorni che devono trascorrere prima che la password utente possa essere modificata. In genere è impostato su zero, il che significa che non esiste un'età minima per la password.

  5. Età massima della password. Il numero di giorni dopo che la password utente deve essere modificata. Per impostazione predefinita, questo numero è impostato su 99999 .

  6. Periodo di avviso. Il numero di giorni prima della scadenza della password durante i quali l'utente viene avvisato che la password deve essere modificata.

  7. Periodo di inattività. Il numero di giorni dopo la scadenza della password utente prima che l'account utente venga disabilitato. In genere questo campo è vuoto.

  8. Data di scadenza. La data in cui l'account è stato disattivato. È rappresentato come una data di epoca.

  9. Inutilizzato. Questo campo viene ignorato. È riservato per un uso futuro.

Il /etc/shadow il file non deve essere modificato manualmente a meno che tu non sappia cosa stai facendo. Utilizzare sempre un comando progettato per lo scopo. Ad esempio, per modificare una password utente, utilizzare il passwd comando e per modificare le informazioni sull'invecchiamento della password, utilizzare il chage comando.

Voce di esempio #

Diamo un'occhiata al seguente esempio:

linuxize:$6$zHvrJMa5Y690smbQ$z5zdL...:18009:0:120:7:14::

La voce sopra contiene informazioni sulla password "linuxize" dell'utente:

  • La password è crittografata con SHA-512 (la password viene troncata per una migliore leggibilità).
  • La password è stata modificata l'ultima volta il 23 aprile 2019 - 18009 .
  • Non esiste un'età minima per la password.
  • La password deve essere modificata almeno ogni 120 giorni.
  • L'utente riceverà un messaggio di avviso sette giorni prima della data di scadenza della password.
  • Se l'utente non tenta di accedere al sistema 14 giorni dopo la scadenza della password, l'account verrà disabilitato.
  • Non esiste una data di scadenza dell'account.

Conclusione #

Il /etc/shadow file conserva i record delle password crittografate degli utenti, nonché altre informazioni relative alle password.

Se hai domande o feedback, sentiti libero di lasciare un commento.


Linux
  1. Comprendere la directory /etc/sysconfig

  2. Comprensione del file di configurazione dell'interfaccia di rete /etc/sysconfig/network-scripts/ifcfg-eth#

  3. Comprendere il file /etc/exports

  4. Estrai le date da /etc/shadow

  5. Differenza tra ! vs!! vs * in /etc/shadow

Comprendere il file /etc/passwd

Comprensione del file /etc/group

Comprendere il file /etc/fstab in Linux

Comprendere i file /proc/mounts, /etc/mtab e /proc/partitions

Genera manualmente la password per /etc/shadow

BASH:controllare in /etc/shadow se la password dell'utente è bloccata