back to top

Gestire utenti e password: i file /etc/passwd e /etc/shadow

La gestione degli utenti e delle relative password in Linux è argomento piuttosto difficile e richiederebbe un’indagine approfondita e molto articolata. In questa sede, pertanto, ci limiteremo ad analizzare il contenuto dei due file di testo particolarmente importanti nella gestione degli utenti del sistema, al fine di capire come linux gestisca queste informazioni e di come sia possibile modificarle. I due file in questione sono /ect/passwd/ e /etc/shadow/.

N.B.: gli esempi che seguono sono stati realizzati utilizzando la distribuzione Ubuntu.

/etc/passwd – In questo file nelle prime versioni Unix/Linux venivano memorizzate le password (ora questa funzione è svolta da /etc/shadow, che analizziamo in seguito). E’ leggibile da tutti gli utenti e contiene numerose informazioni come la corrispondenza tra nome utente e relativo identificativo numerico (user ID), la shell di login utilizzata, la directory home, ecc.. Apriamo il file con un editor di testo:

nano /etc/passwd
Vediamo che sono presenti molte voci corrispondenti agli utenti, la maggior parte dei quali sono utenti di sistema. Prendiamone qualcuna di esempio:
root:x:0:0:root:/root:/bin/bash
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
francesco:x:1000:1000:Francesco,,,:/home/francesco:/bin/bash
Le voci sopra indicate corrispondono all’utente amministrativo "root", agli utenti di sistema "bin" e "sys", all’utente "francesco", cioè quello che uso in questo momento. Analizziamo nel dettaglio quella relativa al mio utente descrivendo ognuno dei 7 campi che la compongono, separati dal carattere due punti (:):
francesco:x:1000:1000:Francesco,,,:/home/francesco:/bin/bash
  • il primo campo è il nome utente (username)
  • il secondo corrisponde alla password cifrata (la X indica che sono attive le password shadow, memorizzate nel file /etc/shadow)
  • il terzo è il numero identificativo dell’utente (user ID)
  • il quarto quello del gruppo (group ID)
  • il quinto contiene il nome o/e cognome dell’utente più eventuali altri campi di commento separati da virgole
  • il sesto il percorso della directory home
  • il settimo indica la shell utilizzata

/etc/shadow – Il file è protetto anche in lettura cioè può essere visualizzato solo possedendo i diritti amministrativi. Oltre alle password sono memorizzate nel file una serie di ulteriori informazioni che le riguardano come le date di scadenza, le date di modifica, ecc.. Apriamo il file con l’editor:

sudo nano /etc/shadow
Prendiamo qualche voce di esempio (corrispondono agli stessi utenti visualizzati precedentemente per /etc/passwd):
root:*:14315:0:99999:7:::
bin:*:14315:0:99999:7:::
sys:*:14315:0:99999:7:::
francesco:$1$oTc1DHLi$m4cqP7MVPu2Plrw/6Ov.v/:14315:0:99999:7:::
Analizziamo nel dettaglio quella relativa al mio utente, composta da 9 campi:
francesco:$1$oTc1DHLi$m4cqP7MVPu2Plrw/6Ov.v/:14315:0:99999:7:::
  • il primo campo è il nome utente (username)
  • il secondo la password cifrata
  • il terzo è il giorno in cui è stata cambiata la password l’ultima volta (espresso in numero di giorni dal 1/1/1970)
  • il quarto il numero di giorni che devono passare dall’ultimo cambiamento prima che la password possa essere nuovamente cambiata
  • il quinto il numero di giorni dall’ultimo cambiamento dopo i quali la password scade e deve essere necessariamente cambiata
  • il sesto il numero dei giorni precedenti quello di scadenza della password in cui gli utenti vengono avvisati
  • il settimo il numero dei giorni successivi a quello di scadenza della password dopo i quali l’utente viene disabilitato
  • l’ottavo il giorno in cui l’utente è stato disabilitato (espresso in numero di giorni dal 1/1/1970)
  • il nono è un campo riservato
In questo caso vediamo che gli ultimi tre campi non sono impostati.

Pubblicitร 

Leggi anche...

Linux: recuperare una partizione con GNU Parted o Gpart

A volte, nell'uso quotidiano del computer, possono capitare dei...

Differenze tra su e sudo in Linux

su e sudo, vengono considerati a torto due comandi...

Creare una lista dei programmi installati su Ubuntu (per effettuarne il ripristino)

In questo breve post vedremo come visualizzare tutto il...

Come svuotare la memoria Cache in Linux?

La memoria cache è stata creata perché, anche quando...

Installare un’interfaccia grafica su Ubuntu Server

Indipendentemente dalla versione di riferimento, il ramo principale della...

Creiamo un file server con Samba

La finalità di una rete locale di computer (LAN)...
Pubblicitร