Skip to main content

Come creare utenti all'interno di Linux usando il comando "useradd"

Corso di terminale linux - la shell (Giugno 2025)

Corso di terminale linux - la shell (Giugno 2025)
Anonim

Questa guida mostra come creare utenti all'interno di Linux utilizzando la riga di comando. Mentre molte distribuzioni Linux desktop forniscono uno strumento grafico per la creazione di utenti, è una buona idea imparare come farlo dalla riga di comando in modo da poter trasferire le tue competenze da una distribuzione all'altra senza imparare nuove interfacce utente.

Come creare un utente

Iniziamo creando un utente semplice.

Il seguente comando aggiungerà un nuovo utente chiamato test al tuo sistema:

sudo test useradd

Ciò che accadrà quando viene eseguito questo comando dipenderà dal contenuto del file di configurazione che si trova in / Etc / default / useradd.

Per visualizzare il contenuto di / Etc / default / useradd eseguire il seguente comando:

sudo nano / etc / default / useradd

Il file di configurazione imposterà una shell di default che in Ubuntu è bin / sh. Tutte le altre opzioni sono commentate.

Le opzioni commentate consentono di impostare una cartella home predefinita, un gruppo, il numero di giorni dopo che la password è scaduta prima che l'account venga disabilitato e una data di scadenza predefinita.

La cosa importante da raccogliere dalle informazioni di cui sopra è che l'esecuzione del comando useradd senza alcun interruttore può produrre risultati diversi su diverse distribuzioni e tutto dipende dalle impostazioni nel / Etc / default / useradd file.

In aggiunta a / Etc / default / useradd file, c'è anche un file chiamato /etc/login.defs che sarà discusso più avanti nella guida.

sudo non è installato su ogni distribuzione. Se non è installato, è necessario accedere a un account con le autorizzazioni appropriate per la creazione di utenti.

Come creare un utente con una home directory

L'esempio precedente era abbastanza semplice, ma l'utente può o non può aver ricevuto una home directory basata sul file delle impostazioni.

Per forzare la creazione di una directory home per utilizzare il seguente comando:

useradd -m test

Il comando precedente crea a / Home / test cartella per il test dell'utente.

Come creare un utente con una directory home diversa

Se si desidera che l'utente abbia una cartella home in un posto diverso rispetto all'impostazione predefinita, è possibile utilizzare l'opzione -d.

sudo useradd -m -d / test test

Il comando precedente creerà una cartella chiamata test per il test utente nella cartella principale.

All'interno dell'interruttore -m la cartella non può essere creata. Dipende dall'impostazione in /etc/login.defs.

Per farlo funzionare senza specificare un opzione -m, modifica il file /etc/login.defs e in fondo al file aggiungi la seguente riga:

CREATE_HOME si

Come cambiare la password di un utente usando Linux

Ora che hai creato un utente con una cartella Inizio, dovrai cambiare la password dell'utente.

Per impostare la password di un utente è necessario utilizzare il seguente comando:

test passwd

Il comando precedente ti consentirà di impostare la password dell'utente di prova. Ti verrà richiesta la password che desideri utilizzare.

Come cambiare utente

Puoi testare l'account del tuo nuovo utente digitando quanto segue in una finestra di terminale:

su - test

Il comando sopra riportato commuta l'utente sull'account di prova e, assumendo che tu abbia creato una cartella home, verrai inserito nella cartella home dell'utente.

Creare un utente con una data di scadenza

Se stai lavorando in un ufficio e hai un nuovo contraente che sta per essere nel tuo ufficio per un breve periodo di tempo, allora vorrai impostare una data di scadenza sul suo account utente.

Allo stesso modo, se hai una famiglia che sta per restare, puoi creare un account utente per quel membro della famiglia che scade dopo che se ne sono andati.

Per impostare una data di scadenza durante la creazione di un utente, utilizzare il seguente comando:

useradd -d / home / test -i test 2016-02-05

La data deve essere specificata nel formato AAAA-MM-GG dove YYYY è l'anno, MM è il numero del mese e DD è il numero del giorno.

Come creare un utente e assegnarlo a un gruppo

Se hai un nuovo utente che si unisce alla tua azienda, potresti voler assegnare gruppi specifici per quell'utente in modo che abbiano accesso agli stessi file e cartelle degli altri membri del loro team.

Ad esempio, immagina di avere un ragazzo chiamato John e che si stava unendo come contabile.

Il seguente comando aggiungerebbe john al gruppo di account.

useradd -m john -G account

Regolazione dei valori di default di accesso all'interno di Linux

Il file /etc/login.defs è un file di configurazione che fornisce il comportamento predefinito per le attività di accesso.

Ci sono alcune impostazioni chiave in questo file. Per aprire il /etc/login.defs file inserisci il seguente comando:

sudo nano /etc/login.defs

Il file login.defs contiene le seguenti impostazioni che potresti voler cambiare:

  • PASS_MAX_DAYS - Quanto tempo prima che una password scada.
  • PASS_MIN_DAYS - Con quale frequenza può essere modificata una password.
  • PASS_WARN_AGE - Numero di avvisi di giorni prima che una password scada.
  • LOGIN_RETRIES - Numero di tentativi di accesso prima del fallimento.
  • LOGIN_TIMEOUT - Quanto è lungo prima del timeout di accesso.
  • DEFAULT_HOME - Può un utente accedere se non esiste una cartella home.

Queste sono le opzioni predefinite e possono essere sovrascritte durante la creazione di un nuovo utente.

Come specificare la scadenza della password di accesso durante la creazione di un utente

È possibile impostare una data di scadenza della password, il numero di tentativi di accesso e il timeout durante la creazione di un utente.

L'esempio seguente mostra come creare un utente con un avviso di password, un numero massimo di giorni prima che la password scada e il tentativo di accesso impostato.

sudo useradd test5 -m -K PASS_MAX_DAYS = 5 -K PASS_WARN_AGE = 3 -K LOGIN_RETRIES = 1

Forza la creazione di un utente senza una cartella Inizio

Se il file login.defs ha l'opzione CREATE_HOME siimposta quindi quando viene creato un utente, verrà creata automaticamente una cartella home.

Per creare un utente senza una cartella Inizio indipendentemente dalle impostazioni, utilizzare il seguente comando:

useradd -M test

È abbastanza confuso che -m significhi creare home e -M significhi non creare home.

Specificare il nome completo dell'utente durante la creazione di un utente

Come parte della tua politica di creazione degli utenti, potresti scegliere di fare qualcosa come la prima iniziale, seguita dal cognome. Ad esempio, il nome utente per "John Smith" sarà "jsmith".

Quando cerchi dettagli su un utente potresti non essere in grado di distinguere tra John Smith e Jenny Smith.

È possibile aggiungere un commento quando si crea un account, quindi è più facile scoprire il vero nome dell'utente.

Il seguente comando mostra come fare questo:

useradd -m jsmith -c "john smith"

Analisi del file / etc / passwd

Quando si crea un utente, i dettagli di tale utente vengono aggiunti a / Etc / passwd file.

Per visualizzare i dettagli di un particolare utente è possibile utilizzare il comando grep come segue:

grep john / etc / passwd

Il comando precedente restituirà i dettagli su tutti gli utenti con la parola john come parte del nome utente.

Il / Etc / passuword il file contiene un elenco di campi separati da due punti su ciascun utente.

I campi sono i seguenti:

  • Nome utente;
  • Password crittografata (che ovviamente non puoi vedere);
  • ID utente;
  • ID di gruppo dell'utente;
  • Nome completo dell'utente;
  • Directory home dell'utente;
  • Shell di login.