Un "sudo"
l'utente può eseguire un'attività amministrativa o un comando a cui un utente normale non è autorizzato. Questa guida spiega come aggiungere, eliminare e concedere sudo
privilegi per gli utenti in CentOS e altri sistemi basati su RHEL. Ho utilizzato i seguenti passaggi per creare un utente sudo nell'edizione minima di CentOS 8. Tuttavia dovrebbe funzionare anche su altri sistemi basati su RPM.
Cos'è sudo?
In Linux e Unix in generale, il sudo
il programma consente a un utente normale di ottenere temporaneamente superutente o root
capacità dell'utente. Usando sudo
comando, un normale utente può svolgere le attività amministrative, senza nemmeno avere accesso alla root
password dell'utente. Invece di dare via root
password a chiunque, basta assegnare il sudo
autorizzazioni agli utenti per elevare i loro privilegi. La parola "sudo" originariamente derivava da "su utente fai ", perché utilizzato principalmente per eseguire le attività del superutente. Ora sta anche per "substitute user do"
Vantaggi degli utenti sudo
Essendo un sudo
l'utente offre molti vantaggi elencati di seguito:
- L'amministratore di sistema non ha bisogno di condividere la
root
password utente a tutti. - Un utente normale può svolgere attività amministrative anche se non conosce la
root
password. - Le autorizzazioni sudo possono essere concesse e revocate agli utenti in qualsiasi momento.
- La sessione sudo scadrà automaticamente dopo un determinato periodo di inattività dell'utente. È abbastanza utile quando un utente ha dimenticato di disconnettersi dalla sua sessione. Per impostazione predefinita, la sessione sudo scadrà dopo 15 minuti di inattività.
- Gli amministratori di sistema possono monitorare le attività di tutti gli utenti sudo. Tutte le attività degli utenti sudo sono registrate in
/var/log/secure
file. In caso di problemi, puoi esaminare il file di registro e provare a capire cosa è andato storto. Troverai anche chi sta abusando dei privilegi sudo e puoi semplicemente revocare il suo permesso.
Aggiungi, elimina e concedi privilegi Sudo agli utenti in CentOS
Accedi al tuo sistema CentOS come root
utente o come qualsiasi utente che dispone dell'autorizzazione sudo.
Innanzitutto, aggiungiamo un nuovo utente.
1. Aggiungi utenti in CentOS
Fammi creare un nuovo utente chiamato "senthil". Per farlo, ho eseguito il seguente comando come root
utente dal Terminale:
# adduser senthil
Imposta una password per il nuovo utente "senthil":
# passwd senthil
Ora abbiamo creato un utente normale. Non è ancora autorizzato a svolgere alcun compito amministrativo. Verifichiamo se l'utente "senthil" può usare sudo
comando o meno eseguendo il comando seguente:
# sudo -l -U senthil
Risultato di esempio:
User senthil is not allowed to run sudo on centos8
Sì, non è ancora autorizzato a eseguire sudo
sul mio sistema CentOS 8. Diamogli sudo
diritti ora.
2. Concedi privilegi sudo agli utenti in CentOS
Per aggiungere un utente normale al gruppo sudoers, devi aggiungerlo alla wheel
gruppo. Per chi se lo stesse chiedendo, la wheel
è un gruppo speciale in alcuni sistemi operativi simili a Unix. Tutti i membri di wheel
gruppo sono autorizzati a svolgere compiti amministrativi. Il gruppo di ruote è simile a sudo
gruppo nei sistemi basati su Debian.
Possiamo aggiungere utenti ai sudoer in due modi. Il primo metodo è usare chmod
comando.
2.1. Aggiungi utenti ai sudoer usando usermod
comando in CentOS
Ora concediamo i privilegi sudo all'utente appena creato "senthil" aggiungendolo alla wheel
gruppo utilizzando usermod
comando come di seguito:
# usermod -aG wheel senthil
Qui, -aG
fa riferimento ad un gruppo supplementare. Nel nostro caso, è wheel
gruppo. Ecco fatto, abbiamo appena concesso i diritti sudo all'utente "senthil".
Verifichiamo se l'utente è nell'elenco sudoers con il comando:
# sudo -l -U senthil
Risultato di esempio:
Matching Defaults entries for senthil on centos8:
!visiblepw, always_set_home, match_group_by_gid,
always_query_group_plugin, env_reset, env_keep="COLORS DISPLAY
HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR
USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE
LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY
LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL
LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",
secure_path=/sbin:/bin:/usr/sbin:/usr/bin
User senthil may run the following commands on centos8:
(ALL) ALL
Come puoi vedere nell'ultima riga dell'output sopra, l'utente "senthil" può ora eseguire tutti i comandi.
2.2. Aggiungi utenti ai sudoer modificando il file di configurazione dei sudoer in CentOS
L'altro modo per aggiungere utenti all'elenco sudoers consiste nell'aggiungerlo direttamente al file di configurazione sudoers.
Modifica il file di configurazione di sudoers usando il comando:
# visudo
Si aprirà /etc/sudoers
file nel tuo Vi editor o qualunque cosa tu abbia nel tuo $PATH
. Scorri verso il basso fino a trovare la seguente voce:
root ALL=(ALL) ALL
Subito dopo la voce precedente, aggiungi la seguente riga:
senthil ALL=(ALL) ALL
Qui, la riga ALL=(ALL) ALL
fa riferimento all'utente "senthil" può eseguire qualsiasi comando su qualsiasi host. Sostituisci "senthil" con il tuo nome utente. Salva e chiudi il file. Fatto! L'utente "senthil" è stato aggiunto all'elenco dei sudoers.
2.3. Verifica gli utenti sudo in CentOS
Esci dalla sessione corrente e accedi nuovamente come utente sudo appena creato. In alternativa, puoi passare direttamente all'altro utente, senza dover uscire dalla sessione corrente, utilizzando il seguente comando:
# sudo -i -u senthil
Ora, verifica se l'utente è in grado di eseguire qualsiasi attività amministrativa con sudo
permesso:
$ sudo dnf update
3. Elimina i privilegi sudo da un utente in CentOS
Possiamo rimuovere i privilegi sudo da un utente senza dover eliminare completamente l'account utente.
Per revocare i permessi sudo a un utente, esegui semplicemente il seguente comando come root
utente:
# gpasswd -d senthil wheel
Risultato di esempio:
Removing user senthil from group wheel
Il comando sopra eliminerà l'utente chiamato "senthil"
dal "wheel"
gruppo. Si prega di notare che l'utente non viene completamente eliminato dal sistema. Abbiamo rimosso solo i privilegi sudo.
Verifica se l'utente è in grado di eseguire operazioni sudo:
# sudo -l -U senthil
User senthil is not allowed to run sudo on centos8.
Bene, senthil
non è più nel gruppo sudoers e non può svolgere alcun compito amministrativo.
Per rimuovere definitivamente l'utente dal sistema, eseguire:
# userdel -r senthil
Il comando sopra eliminerà l'utente "senthil" insieme alla sua home
directory e spool di posta.
Per maggiori dettagli, fare riferimento alla pagina man del rispettivo comando:
$ man sudo
$ man adduser
$ man usermod
$ man gpasswd
$ man userdel
Conclusione
Ora sai come aggiungere, eliminare e concedere privilegi sudo agli utenti nei sistemi operativi CentOS. Come puoi vedere, è molto facile aggiungere nuovi utenti agli elenchi di sudoers, concedere privilegi sudo all'utente esistente e rimuovere le autorizzazioni sudo da un utente. Spero che questo aiuti.
Lettura correlata:
- Come aggiungere, eliminare e concedere privilegi Sudo agli utenti in Alpine Linux
- Come aggiungere, eliminare e concedere privilegi Sudo agli utenti in Arch Linux
- Come aggiungere, eliminare e concedere privilegi Sudo agli utenti in Fedora
- Come aggiungere, eliminare e concedere privilegi Sudo agli utenti in Ubuntu
- Come modificare il timeout della password di Sudo in Linux
- Come modificare il file di registro di Sudo predefinito in Linux
- Come ripristinare i privilegi di Sudo a un utente
- Come trovare tutti gli utenti Sudo nel tuo sistema Linux
- Come eseguire comandi particolari senza password Sudo in Linux