Gestione Utenti in Linux
Gestione Utenti in Linux
La gestione degli utenti in Linux permette di creare e amministrare account utente, assegnare gruppi e controllare i privilegi di sistema attraverso sudo. È una competenza fondamentale per l'amministrazione di sistemi Linux, garantendo sicurezza e corretta separazione dei permessi.
Punti Chiave
- Creazione di nuovi utenti con useradd o adduser
- Modifica di utenti esistenti con usermod
- Eliminazione di utenti con userdel
- Visualizzazione delle informazioni utente con id e finger
- Gestione dei gruppi: creazione (groupadd), modifica (groupmod), eliminazione (groupdel)
- Assegnazione utenti a gruppi supplementari con usermod -aG
- Configurazione dei privilegi sudo tramite file /etc/sudoers
- Verifica dei permessi sudo per un utente
- Password management: impostazione con passwd, scadenza con chage
- UID e GID: identificatori univoci per utenti e gruppi
- File /etc/passwd: informazioni sugli account utente
- File /etc/shadow: hash delle password con crittografia
- File /etc/group: appartenenza ai gruppi
- Directory home: /home/username per utenti standard
- Shell di login: configurazione in /etc/passwd
- Account di sistema: UID < 1000, non usati per login interattivo
- Policy di sicurezza: password complesse, rotazione periodica
- Principio del minimo privilegio: assegnare solo i permessi necessari
Comandi
# Creare un nuovo utente con home directory
useradd -m -s /bin/bash -c "Descrizione utente" username
# Creare utente con UID specifico e gruppo primario
useradd -u 1500 -g users -m username
# Modificare utente: aggiungere a gruppi supplementari
usermod -aG sudo,adm,cdrom username
# Impostare o cambiare password
passwd username
# Impostare scadenza password (90 giorni)
chage -M 90 username
# Visualizzare informazioni utente
id username
finger username
# Eliminare utente mantenendo home directory
userdel username
# Eliminare utente e relativa home directory
userdel -r username
# Creare un nuovo gruppo
groupadd nomegruppo
# Aggiungere utente a un gruppo
gpasswd -a username nomegruppo
# Rimuovere utente da un gruppo
gpasswd -d username nomegruppo
# Modificare /etc/sudoers per dare privilegi sudo (usare visudo)
visudo
# Oppure aggiungere file in /etc/sudoers.d/
echo "username ALL=(ALL) NOPASSWD: ALL" | tee /etc/sudoers.d/username
# Verificare se un utente ha privilegi sudo
sudo -l -U username