GNU/Linux >> Linux Esercitazione >  >> Linux

Come creare utenti in Linux (comando useradd)

Linux è un sistema multiutente, il che significa che più persone possono interagire con lo stesso sistema contemporaneamente. In qualità di amministratore di sistema, hai la responsabilità di gestire gli utenti e i gruppi del sistema creando e rimuovendo utenti e di assegnarli a gruppi diversi.

In questo articolo parleremo di come creare nuovi account utente utilizzando useradd comando.

useradd Comando #

La sintassi generale per useradd il comando è il seguente:

useradd [OPTIONS] USERNAME

Solo il root o gli utenti con sudoprivileges possono usare useradd comando per creare nuovi account utente.

Quando viene richiamato, useradd crea un nuovo account utente in base alle opzioni specificate nella riga di comando e ai valori predefiniti impostati in /etc/default/useradd file.

Le variabili definite in questo file differiscono da distribuzione a distribuzione, il che provoca il useradd comando per produrre risultati diversi su sistemi diversi.

useradd legge anche il contenuto di /etc/login.defs file. Questo file contiene la configurazione per la suite di password shadow come la politica di scadenza delle password, gli intervalli di ID utente utilizzati durante la creazione di utenti regolari e di sistema e altro ancora.

Come creare un nuovo utente in Linux #

Per creare un nuovo account utente, invoca useradd comando seguito dal nome dell'utente.

Ad esempio per creare un nuovo utente chiamato username correresti:

sudo useradd username
Se eseguito senza alcuna opzione, useradd crea un nuovo account utente utilizzando le impostazioni predefinite specificate in /etc/default/useradd file.

Il comando aggiunge una voce a /etc/passwd , /etc/shadow, /etc/group e /etc/gshadow file.

Per poter accedere come utente appena creato, è necessario impostare la password utente. Per farlo, esegui passwd comando seguito dal nome utente:

sudo passwd username

Ti verrà chiesto di inserire e confermare la password. Assicurati di utilizzare una password complessa.

Changing password for user username.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

Come aggiungere un nuovo utente e creare una home directory #

Sulla maggior parte delle distribuzioni Linux, quando si crea un nuovo account utente con useradd , la home directory dell'utente non è stata creata.

Usa il -m (--create-home ) opzione per creare la directory home dell'utente come /home/username :

sudo useradd -m username

Il comando sopra crea la directory home del nuovo utente e copia i file da /etc/skel directory nella directory home dell'utente. Se elenchi i file in /home/username directory, vedrai i file di inizializzazione:

ls -la /home/username/
drwxr-xr-x 2 username username 4096 Dec 11 11:23 .
drwxr-xr-x 4 root     root     4096 Dec 11 11:23 ..
-rw-r--r-- 1 username username  220 Apr  4  2018 .bash_logout
-rw-r--r-- 1 username username 3771 Apr  4  2018 .bashrc
-rw-r--r-- 1 username username  807 Apr  4  2018 .profile

All'interno della home directory, l'utente può scrivere, modificare ed eliminare file e directory.

Creazione di un utente con una specifica home directory #

Per impostazione predefinita useradd crea la directory home dell'utente in /home . Se desideri creare la directory home dell'utente in un'altra posizione, utilizza il d (--home ) opzione.

Ecco un esempio che mostra come creare un nuovo utente chiamato username con una directory home di /opt/username :

sudo useradd -m -d /opt/username username

Creazione di un utente con ID utente specifico #

Nei sistemi operativi simili a Linux e Unix, gli utenti sono identificati da UID e nome utente univoci.

L'identificatore utente (UID) è un numero intero positivo univoco assegnato dal sistema Linux a ciascun utente. L'UID e altri criteri di controllo dell'accesso vengono utilizzati per determinare i tipi di azioni che un utente può eseguire sulle risorse di sistema.

Per impostazione predefinita, quando viene creato un nuovo utente, il sistema assegna il successivo UID disponibile dall'intervallo di ID utente specificato in login.defs file.

Richiama useradd con il -u (--uid ) opzione per creare un utente con un UID specifico. Ad esempio per creare un nuovo utente chiamato username con UID di 1500 dovresti digitare:

sudo useradd -u 1500 username

Puoi verificare l'UID dell'utente, utilizzando il id comando:

id -u username
1500

Creazione di un utente con ID gruppo specifico #

I gruppi Linux sono unità organizzative utilizzate per organizzare e amministrare gli account utente in Linux. Lo scopo principale dei gruppi è definire un insieme di privilegi quali autorizzazioni di lettura, scrittura o esecuzione per una determinata risorsa che possono essere condivise tra gli utenti all'interno del gruppo.

Quando si crea un nuovo utente, il comportamento predefinito di useradd il comando consiste nel creare un gruppo con lo stesso nome del nome utente e lo stesso GID dell'UID.

Il -g (--gid ) consente di creare un utente con un gruppo di accesso iniziale specifico. È possibile specificare il nome del gruppo o il numero GID. Il nome del gruppo o il GID devono già esistere.

L'esempio seguente mostra come creare un nuovo utente denominato username e imposta il gruppo di accesso su users digita:

sudo useradd -g users username

Per verificare il GID dell'utente, utilizza il id comando:

id -gn username
users

Creazione di un utente e assegnazione di più gruppi #

Esistono due tipi di gruppi nei sistemi operativi Linux Gruppo primario e Gruppo secondario (o supplementare). Ogni utente può appartenere esattamente a un gruppo principale ea zero o più gruppi secondari.

Devi specificare un elenco di gruppi supplementari di cui l'utente sarà membro con il -G (--groups ) opzione.

Il comando seguente crea un nuovo utente denominato username con il gruppo principale users e gruppi secondari wheel e docker .

sudo useradd -g users -G wheel,developers username

Puoi controllare i gruppi di utenti digitando

id username
uid=1002(username) gid=100(users) groups=100(users),10(wheel),993(docker)

Creazione di un utente con una specifica shell di accesso #

Per impostazione predefinita, la shell di accesso del nuovo utente è impostata su quella specificata in /etc/default/useradd file. In alcune distribuzioni la shell predefinita è impostata su /bin/sh mentre in altri è impostato su /bin/bash .

Il -s (--shell ) consente di specificare la shell di accesso del nuovo utente.

Ad esempio, per creare un nuovo utente denominato username con /usr/bin/zsh come tipo di shell di accesso:

sudo useradd -s /usr/bin/zsh username

Controllare la voce dell'utente in /etc/passwd per verificare la shell di accesso dell'utente:

grep username /etc/passwd
username:x :1001:1001::/home/username:/usr/bin/zsh

Creazione di un utente con commento personalizzato #

Il -c (--comment ) consente di aggiungere una breve descrizione per il nuovo utente. In genere il nome completo dell'utente o le informazioni di contatto vengono aggiunti come commento.

Nell'esempio seguente, stiamo creando un nuovo utente denominato username con stringa di testo Test User Account come commento:

sudo useradd -c "Test User Account" username

Il commento viene salvato in /etc/passwd file:

grep username /etc/passwd
username:x :1001:1001:Test User Account:/home/username:/bin/sh

Il campo dei commenti è anche noto come GECOS .

Creazione di un utente con una data di scadenza #

Per definire l'ora in cui scadranno i nuovi account utente, utilizzare il -e (--expiredate ) opzione. Questo è utile per creare account temporanei.

La data deve essere specificata utilizzando il YYYY-MM-DD formato.

Ad esempio per creare un nuovo account utente denominato username con una scadenza fissata al 22 gennaio 2019 si correrebbe:

sudo useradd -e 2019-01-22 username

Usa la chage comando per verificare la data di scadenza dell'account utente:

sudo chage -l username

L'output sarà simile a questo:

Last password change					: Dec 11, 2018
Password expires					: never
Password inactive					: never
Account expires						: Jan 22, 2019
Minimum number of days between password change		: 0
Maximum number of days between password change		: 99999
Number of days of warning before password expires	: 7

Creazione di un utente di sistema #

Non vi è alcuna reale differenza tecnica tra il sistema e gli utenti regolari (normali). In genere gli utenti del sistema vengono creati durante l'installazione del sistema operativo e dei nuovi pacchetti.

Usa il -r (--system ) opzione per creare un account utente di sistema. Ad esempio, per creare un nuovo utente di sistema denominato username correresti:

sudo useradd -r username

Gli utenti del sistema vengono creati senza data di scadenza. I loro UID sono scelti dall'intervallo di ID utente di sistema specificato in login.defs file, che è diverso dall'intervallo utilizzato per gli utenti normali.

Modifica dei valori useradd predefiniti #

Le opzioni di aggiunta utente predefinite possono essere visualizzate e modificate utilizzando il -D , --defaults opzione o modificando manualmente i valori in /etc/default/useradd file.

Per visualizzare le opzioni predefinite correnti, digita:

useradd -D

L'output sarà simile a questo:

GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/sh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no

Supponiamo che tu voglia cambiare la shell di accesso predefinita da /bin/sh a /bin/bash . Per farlo, specifica la nuova shell come mostrato di seguito:

sudo useradd -D -s /bin/bash

Puoi verificare che il valore predefinito della shell sia stato modificato eseguendo il comando seguente:

sudo useradd -D | grep -i shell
SHELL=/bin/bash

Conclusione #

Ti abbiamo mostrato come creare nuovi account utente utilizzando useradd comando. Le stesse istruzioni si applicano a qualsiasi distribuzione Linux, inclusi Ubuntu, CentOS, RHEL, Debian, Fedora e Arch Linux.

useradd è un'utilità di basso livello, gli utenti Debian e Ubuntu possono invece utilizzare il più amichevole comando adduser.

Sentiti libero di lasciare un commento in caso di domande.


Linux
  1. Come creare più account utente in Linux

  2. Come modificare un nome utente in Linux

  3. Come creare un utente in Linux[Gestione utenti]

  4. Come gestire gli utenti con useradd in Linux

  5. Come limitare i comandi utente in Linux

Come creare utenti utilizzando il comando Useradd in Linux

Come creare un alias in Linux

Aggiunta di nuovi utenti in Linux con il comando Useradd

Come creare e gestire nuovi utenti su Linux

Come creare un gruppo in Linux – comando groupadd

Come creare/aggiungere utenti in Linux