Su Linux, come su tutti i sistemi operativi, รจ possibile creare una molteplicitร di utenti in grado di lavorare all’interno del sistema: Linux รจ un sistema multiuser. Gli utenti, a loro volta, possono essere raggruppati all’interno di gruppi (ciascun utente puรฒ partecipare ad uno o piรน gruppi) caratterizzati da permessi comuni a tutti i membri.
Ad esempio possiamo creare nel nostro sistema diversi gruppi: “famigliari” (con permessi piuttosto ampi), “colleghi” (con poteri piรน limitati) e “visitatori” (con poteri minimi).
Indice
Creare, modificare e cancellare gli utenti
Di default Linux dispone di un unico utente, cioรจ l’utente root che gode dei pieni poteri. Spetta quindi a questo utente creare nuovi utenti nel sistema. Per aggiungere un utente si ricorre al comando useradd, questa รจ la sintassi:
useradd [opzioni] numeutente
Facciamo un esempio: si supponga di vole creare l’utente “pippo” e di volerlo assegnare al gruppo “visitatori” (in questo momento supponiamo che il gruppo esista giร , in seguito vedremo come crearne uno):
useradd -G visitatori pippo
Per modificare il profilo di un utente si utilizza usermod, in questo modo:
usermod [opzioni] nomeutente
Si supponga di voler modificare il gruppo di appartenenza di “pippo” da “visitatori” a “colleghi”:
usermod -G colleghi pippo
Per cancellare un utente si userร , invece, il comando userdel; supponendo di voler cancellare l’utente “pippo” dovremo scrivere:
userdel pippo
Assegnare e modificare password
Ciascun utente puรฒ disporre di una password per accedere al sistema. Dopo aver creato un nuovo utente con useradd, quindi, sarร necessario assegnargli una password mediante il comando passwd. Questa รจ la sintassi:
passwd nomeutente
Mediante lo stesso comando รจ anche possibile modificare una password giร assegnata ad un utente Linux.
Forzare il cambio della password al primo login
Abbiamo appena visto come creare un utente su Linux e come assegnargli una password di accesso. Ora si ipotizzi di voler costringere questo stesso utente a modificare la sua password una volta effettuato con successo il primo login; per far questo bisognerร fare in modo che la password dell’utente scada immediatamente in seguito all’autenticazione. Per farlo utilizzeremo questo comando:
passwd -e nomeutente
L’opzione e
sta per expire ed obbliga l’utente indicato a impostare una nuova password subito dopo l’accesso.
In alternativa al comando passwd
รจ possibile utilizzare il comando chage
con la seguente sintassi:
chage -d 0 nomeutente
L’opzione d
passata al comando chage deve essere seguita dal numero di giorni per cui la password avrร valore per l’utente specificato, nel nostro caso il valore da associare dovrร essere quindi “zero” come nell’esempio. Appena dopo aver effettuato il primo login l’utente riceverร un messaggio come il seguente:
WARNING: Your password has expired. You must change your password now and login again!
Tramite il quale il sistema gli comunicherร che la sua password รจ scaduta.
Creare, modificare e cancellare gruppi
Come giร detto, i sistemi Linux prevedono la possibilitร di creare gruppi di utenti. Per creare un nuovo gruppo dovremo utilizzare il comando groupadd; questa รจ la sintassi:
groupadd [opzioni] nomegruppo
Supponiamo di voler semplicemente creare un nuovo gruppo chiamato “staff” per farlo useremo:
groupadd staff
Per modificare un gruppo si utilizza groupmod; facciamo un esempio: supponiamo di voler rinominare il gruppo “staff” in “colleghi”:
groupmod -n colleghi staff
Per finire, qualora dsi desideri cancellare un gruppo si utilizzerร il comando groupdel. Se, ad esempio, si volesse cancellare il gruppo appena rinominato dovremmo utilizzare:
groupdel colleghi
UID e GID
Esattamente come accade per i processi, anche utenti e gruppi sono contraddistinti da codici univoci che vengono assegnati automaticamente all’atto della loro creazione. Questi prendono il nome, rispettivamente, di UID (User Identifier) e GID (Group Identifier).
L’associazione tra UID e nome utente รจ normalmente definita nel file /etc/passwd. L’associazione tra GID e nome del gruppo viene normalmente definita nel file /etc/group.
Ad ogni file e directory del file system รจ assegnato un UID (che ne indica il proprietario) e un GID (che identifica il gruppo di appartenenza). Tali assegnazioni contribuiscono a determinarne i permessi d’accesso e possono essere modificate attraverso i comandi chown e chgrp.
Ad ogni processo รจ associato un insieme di UID e di GID che contribuiscono a determinare i permessi che il processo ha su file e directory.
Attraverso questi identificatori รจ possibile risalire alle risorse cui hanno accesso specifici utenti o gruppi.