Knowledgebase Semplici istruzioni per lavorare con il servizio Profitserver
Principale Knowledgebase Utenti Linux: gestione e permessi

Utenti Linux: gestione e permessi


In questo articolo esploreremo l'importanza di utenti Linux adeguatamente organizzati. Descriveremo i diritti di accesso, iniziando con come creare e configurare gli utenti e terminando con come concedere l'accesso a file e cartelle specifici. Discuteremo anche di alcuni importanti strumenti di sicurezza, come sudo e SELinux, che aiutano a proteggere il sistema da attività indesiderate.

L'importanza della gestione degli utenti e dei diritti di accesso in Linux

Nel mondo Linux, la gestione degli utenti e i diritti di accesso svolgono un ruolo chiave. Immagina Linux come un grande appartamento in cui ogni utente è un inquilino e ogni file è una stanza. Gestione degli utenti è come assegnare a ogni inquilino la propria chiave univoca, mentre diritti di accesso sono ciò che possono fare nella loro stanza.

Quando un utente viene creato, gli viene assegnato un nome e un identificatore univoco (UID), come una chiave personale dell'appartamento. L'utente ha anche a di gruppo, unendoli ad altri inquilini. Il gruppo è come un club in cui i membri condividono privilegi comuni.

Diritti di accesso ai file si dividono in tre categorie: proprietario (Utente), di gruppoe altri. Ogni chiave (utente) può avere i suoi diritti univoci di lettura, scrittura ed esecuzione per ogni categoria. Ad esempio, il proprietario del file può avere diritti di lettura e scrittura, il gruppo - solo lettura e gli altri - niente.

Un'attenzione particolare meritano le politiche di sicurezza come sudo e SELinux, utilizzato nei sistemi Linux. sudo è un comando speciale che consente agli utenti normali di usare temporaneamente i diritti di superutente (root) per eseguire attività specifiche che normalmente sono disponibili solo agli amministratori. Ciò aiuta a prevenire errori accidentali o l'uso improprio dei diritti di superutente. Quando si usa sudo, all'utente viene solitamente richiesto di immettere la propria password per confermare la propria identità. Dopodiché, può eseguire comandi con diritti di superutente (root) in conformità con le regole stabilite nel maglioni file.

SELinux è un ulteriore livello di sicurezza per il sistema operativo Linux. Monitora quali programmi e file possono essere utilizzati nel sistema e limita l'accesso a essi per prevenire intrusioni e attacchi. Ciò rende il server più sicuro impedendo tentativi di hacking o azioni dannose.

Creazione e gestione degli utenti

Come creare un utente in Linux

Gli utenti Linux vengono solitamente creati con useradd comando. Ad esempio, per creare un utente denominato "username", dovresti digitare:

useradd username

Come impostare una password utente Linux

Dopo aver creato un utente, il suo account non è protetto da una password. Per impostare una password per un nuovo utente, utilizzare passwd comando:

passwd username

Dove username è il nome dell'utente per il quale viene impostata la password.

Come visualizzare un elenco di utenti in Linux

Per visualizzare un elenco di utenti in Linux con un singolo comando nel terminale, è possibile utilizzare taglio comando:

cut -d: -f1 /etc/passwd

Questo comando legge il contenuto del /etc/passwd file che contiene informazioni su tutti gli utenti.

Per ottenere informazioni su un utente specifico, puoi utilizzare il comando:

id username

Questo visualizzerà l'utente UID, GIDe Gruppi.

Eliminazione di un utente Linux

Per eliminare un utente, utilizzare utentedel comando:

userdel username

Tuttavia, questo comando non elimina i file nella directory home dell'utente. Per rimuoverli, puoi usare il comando -r opzione:

userdel -r username

Questa operazione eliminerà il nome utente dell'utente, insieme alla sua directory home e a tutti i file in essa contenuti.

Modifica di un utente Linux

Per modificare le informazioni su un utente, utilizzare usermod comando. Lo strumento utilizza la sintassi:

usermod argument user

Un elenco completo dei possibili argomenti è visualizzato nella guida dell'utilità:

Guida all'utilità di gestione degli utenti Linux

Ad esempio, per modificare la directory home di un utente, è possibile utilizzare il comando:

usermod -d /new/path/to/directory username

Creazione e gestione di gruppi di utenti in Linux

I gruppi di utenti in Linux consentono agli amministratori di raggruppare gli utenti con diritti di accesso simili. Ciò facilita la gestione dei diritti di accesso e migliora la sicurezza del sistema consentendo di impostare i diritti a livello di gruppo, anziché farlo per ogni utente individualmente. Come esempio, considereremo il gruppo sviluppatori con l'utente admin.

Come creare un gruppo di utenti in Linux

Per creare un nuovo gruppo, utilizzare il gruppoaggiungi comando con il nome del nuovo gruppo:

sudo groupadd group_name

Nel nostro esempio, il comando apparirebbe così:

sudo groupadd developers

Come eliminare un gruppo di utenti in Linux

Per eliminare un gruppo, utilizzare il gruppodel comando:

sudo groupdel group_name

Quindi il comando:

sudo groupdel developers

Eliminerà il gruppo denominato sviluppatori.

Aggiunta di utenti a un gruppo

Per aggiungere un utente a un gruppo specifico, utilizzare usermod comando:

sudo usermod -aG group_name user_name

Per esempio:

sudo usermod -aG developers admin

Questo comando aggiungerà l'utente denominato Admin ai sviluppatori gruppo.

Rimozione di utenti da un gruppo

Per rimuovere un utente da un gruppo, utilizzare deluser comando:

sudo deluser user_name group_name

Il comando per rimuovere l'utente Admin dal sviluppatori gruppo:

sudo deluser admin developers

Visualizzazione degli elenchi di gruppi in Linux

Per visualizzare un elenco di tutti i gruppi nel sistema, utilizzare gatto comando con il /etc/group file:

cat /etc/group

Questo comando visualizzerà un elenco di tutti i gruppi presenti nel sistema.

Controllo dell'appartenenza al gruppo di utenti

Dopo aver eseguito le azioni, puoi verificare a quali gruppi appartiene un utente utilizzando il comando groups:

groups user_name

Abbiamo quindi esplorato le basi della gestione dei gruppi di utenti in Linux. Ora passiamo alla fase successiva: esaminare l'assegnazione dei diritti di accesso a file e directory. Questo processo consente di determinare quali azioni gli utenti o i gruppi possono eseguire in merito a file e directory specifici, garantendo un'efficace gestione della sicurezza e l'accesso alle risorse di sistema.

Assegnazione dei diritti di accesso a file e directory

Rappresentazione simbolica dei diritti di accesso

Come abbiamo già scoperto, ci sono 3 categorie di utenti in Linux: proprietario (Utente), di gruppoe altri. Ognuno di essi può possedere determinati gruppi di accesso a file o directory:

  1. Leggi (Read - r): consente di visualizzare il contenuto di un file o di una directory.
  2. Write (Write - w): Fornisce la possibilità di modificare un file o di crearne uno nuovo all'interno della directory. Per una directory, consente anche di eliminare file da essa.
  3. Esegui (Esegui - x): consente di eseguire il file (se è un file eseguibile) o di accedere alla directory (se è una directory).

Nei sistemi della famiglia Linux, i diritti di accesso sono rappresentati da una stringa di 10 caratteri. Il primo carattere indica il tipo di file (file normale, directory, ecc.), e i restanti nove sono tre gruppi di tre caratteri per ciascuno dei gruppi di utenti. Per capire, consideriamo un esempio.

Diritti di accesso -rwxr-xr-- significare:

  1. Il primo carattere (-) indica il tipo di file (in questo caso, un file normale).
  2. Tre caratteri per il proprietario (rwx) indicano che il proprietario ha diritti di lettura, scrittura ed esecuzione.
  3. Tre caratteri per il gruppo (rx) indicano che i membri del gruppo hanno solo diritti di lettura ed esecuzione.
  4. Tre caratteri per gli altri (r--) indicano che gli altri utenti possono solo leggere il file.

I diritti di accesso vengono impostati utilizzando chmod comando e la sintassi è la seguente:

chmod [options] mode file(s)

Dove:

  1. [opzioni] - parametri aggiuntivi, come -R per modificare ricorsivamente i diritti di accesso in una directory e nelle sue sottodirectory.
  2. mode - una stringa speciale che specifica quali diritti di accesso vengono modificati e per chi. La modalità può essere specificata da simboli (r, w, x) e bit (0 o 1). Possono essere utilizzati anche valori numerici di mode (ne parleremo più avanti)
  3. file(s) - file o directory a cui vengono applicate le modifiche.

Questa utility è uno strumento piuttosto potente, quindi esamineremo solo alcuni comandi di base a titolo di esempio.

Modifica i diritti di accesso a un file in modo che il proprietario abbia diritti di lettura e scrittura, il gruppo abbia solo diritti di lettura e gli altri utenti non abbiano diritti:

chmod u=rw,g=r,o= filename

Imposta i diritti di accesso per tutti gli utenti per leggere e scrivere su un file:

chmod a+rw filename

Modificare ricorsivamente i diritti di accesso per tutti i file e le sottodirectory in una directory:

chmod -R u+rwx directory

Rappresentazione numerica dei diritti di accesso

Nella rappresentazione numerica, ogni categoria utente (proprietario, gruppo, altri) ha il suo numero, e la combinazione di questi numeri imposta i diritti di accesso finali. Similmente al simbolico, ognuno dei tre diritti ha il suo valore, ma in numerico:

  1. Leggi (read) - valore 4
  2. Scrivi (write) - valore 2
  3. Eseguire (eseguire) - valore 1

I valori numerici vengono utilizzati anche per determinare il tipo di utente:

  1. Proprietario del file (utente) - la prima cifra
  2. Gruppo del proprietario (gruppo) - la seconda cifra
  3. Altri utenti (altri) - la terza cifra

Pertanto, la rappresentazione numerica completa dei diritti di accesso ai file è composta da tre cifre, ciascuna delle quali rappresenta la somma dei valori dei diritti per una determinata categoria di utenti. Ciò è in un certo senso più comodo rispetto all'utilizzo di 10 caratteri nella rappresentazione simbolica. La gestione in questo caso apparirebbe come segue:

chmod XYZ file

where X, Ye Z sono numeri che rappresentano i diritti di accesso rispettivamente per il proprietario, il gruppo e gli altri utenti.

Ad esempio, per concedere al proprietario diritti di accesso completi (lettura, scrittura ed esecuzione) e al gruppo e agli altri utenti solo diritti di lettura ed esecuzione, è possibile utilizzare il comando:

chmod 755 file

Consideriamo altri esempi:

chmod 700 file

Solo il proprietario ha diritti di lettura, scrittura ed esecuzione, mentre il gruppo e gli altri utenti non hanno diritti di accesso.

chmod 644 file

Il proprietario ha diritti di lettura e scrittura, mentre il gruppo e gli altri utenti hanno solo diritti di lettura.

chmod 751 file

Il proprietario ha pieni diritti, il gruppo ha diritti di lettura ed esecuzione e gli altri utenti hanno solo diritti di esecuzione.

Come abbiamo detto prima, lo strumento ha funzionalità molto estese. In alcuni casi, le opzioni disponibili nella sezione "help" non sono sufficienti:

Strumento per la gestione dei diritti di accesso in Linux

Prestate attenzione all'ultima riga. Utilizzando questo comando si apre una documentazione più dettagliata sullo strumento. Potete anche visitare il sito dell'utilità Wikipedia ufficiale pagina, dove puoi trovare informazioni dettagliate su Chmod.

Conclusione

Gli utenti Linux e la loro gestione sono di fondamentale importanza per la sicurezza e il funzionamento stabile del sistema operativo. In questo articolo, abbiamo evidenziato l'importanza di una gestione efficace degli utenti e dei diritti di accesso in Linux, coprendo la creazione e la gestione degli utenti, il lavoro con i gruppi di utenti e l'assegnazione dei diritti di accesso a file e directory.

❮ Articolo precedente Editor di testo Linux
Articolo successivo ❯ Configurazione del firewall su Linux

Chiedici informazioni su VPS

Siamo sempre pronti a rispondere alle vostre domande a qualsiasi ora del giorno e della notte.