Gestire gruppi e utenti in Linux

10/06/2005

Gli utenti (users) di Linux sono in pratica gli utilizzatori del sistema operativo e delle risorse da esso gestite; ogni singolo utente è in grado di operare con minore o maggiore libertà sulla base dei privilegi concessi dall’amministratore, il root, cioè l’unico user in grado di svolgere qualsiasi tipo di operazione, comprese quelle piů rischiose per la stabilità o addirittura per la stessa esistenza del sistema.

La creazione degli utenti, consente di razionalizzare il loro lavoro creando specifici ambiti di competenza e di limitare le possibili interferenze; il root potrà quindi decidere quali risorse destinare e quali operazioni permettere a ciascun utente; in questo modo si avrà un doppio vantaggio: da una parte nessuno potrà intervenire sul lavoro altrui se non gli è concesso, dall’altro nessuno tranne il root potrà dar luogo a procedure dannose che possano compromettere il funzionamento complessivo del sistema.

Gli users possono essere distinti in due categorie: alla prima appartengono gli utenti “fisici”, cioè persone a cui è stata concessa la possibilità di operare all’interno del sistema; alla seconda appartengono gli utenti “logici”, che possono essere per esempio applicativi a cui spettano determinati compiti e “processi” che possono o devono essere svolti senza l’intervento di un operatore.

Gli utenti possono essere raccolti dal root all’interno di insiemi facenti capo ad uno scopo o ad un progetto, questi insiemi prendono il nome di gruppi. Ogni gruppo, lavorerà sulla base delle funzioni e dei compiti assegnati ai diversi utenti da cui è composto e, non potrà interferire sul lavoro degli altri gruppi ammeno che questo “privilegio” non gli sia accordato.

I privilegi di cui parliamo sono quelli noti di lettura, scrittura ed esecuzione che “discriminano“ gli utenti sulla base delle possibilità di accesso alle risorse. Ad esempio, un determinato documento potrà essere “leggibile” da tutti gli utenti ma scrivibile solo da alcuni; l’installazione di un determinato applicativo potrà essere consentita solo al root e negata a chiunque altro…

Se volessimo creare da Shell un gruppo chiamato “web”, dovremo utilizzare il comando gruppadd digitato in questo modo:

groupadd web
Ora, per “popolare” il nostro gruppo sarà necessario sfruttare il comando useradd corredato dagli opportuni argomenti. Se per esempio volessimo inserire in “web” gli users “webmaster” e “webdesigner”, utilizzeremo le seguenti righe di comando:
useradd webmaster -c php -d /sito_web -g web
e
useradd 

webdesigner -c grafica -d /sito_web -g web 
Quindi, per creare un utente ed inserirlo in un gruppo dovremo lanciare innanzitutto il comando di creazione seguito dal nome dell’utente(useradd nome_utente); tramite -c aggiungeremo poi un commento che ci sarà utile in seguito per distinguere i compiti dei vari users (nel notro caso “php” per “webmaster” e “grafica” per “webdesigner”); -d indicherà la home dello user (“/sito_web”) e -g il gruppo di appartenenza (“web”).

Ogni utente avrà una sua password per accedere al sistema; se per esempio volessimo attribuire all’utente “webmaster” la password “phpcode” dovremo utilizzare il comando passwd seguto dal nome dello user e dalla parola chiave desiderata, quest’ultima, ci verrà chiesta una seconda volta per essere confermata.

Una volta svolto il loro compito, gruppi e utenti potranno essere rimossi tramite gli appositi comandi: groupdel e userdel. Potremo quindi eliminare soltanto l’utente “webdesigner” tramite il comando:
userdel webdesigner
o cancellare l’intero gruppo utilizzando:
groupdel web

© Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more.

Stampa :: Torna alla Home