sudo
è uno dei comandi più comunemente usati nei sistemi Linux. Consente a un utente di eseguire un particolare programma come un altro utente, che, per impostazione predefinita, è il super utente.
Viene utilizzato principalmente per scopi amministrativi; fornendo accesso amministrativo limitato agli utenti non amministrativi su un PC Linux.
Ad esempio, per impostazione predefinita, a un utente non è consentito installare pacchetti su un sistema Ubuntu. Tuttavia, l'utente può farlo con il sudo
comando.
L'utente non root senza sudo non può installare un programma . Vedi un esempio di tentativo fallito di seguito:
apt-get install aptitude
E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?
Un utente non root con sudo può installare programmi sul sistema senza problemi.
sudo apt-get install aptitude
Reading package lists... Done
Building dependency tree
....
Aggiungi un utente esistente come utente Sudo
Se un utente non fa parte del sudo
gruppo utenti, non sarà in grado di utilizzare il sudo
comando. Verrà visualizzato sotto l'output:
testuser is not in the sudoers file. This incident will be reported.
Per aggiungere un utente all'elenco sudoers, utilizzare il usermod
comando per aggiungere un utente esistente al sudo
gruppo sul sistema. Di seguito è riportato un comando di esempio.
sudo usermod -aG sudo testuser
Qui l' -a
opzione significa "aggiungi". Assicura che l'appartenenza dell'utente ai gruppi esistenti non sia interessata. -G
serve per specificare a quale gruppo aggiungere l'utente.
Una volta che un utente è stato aggiunto al gruppo sudo, il seguente messaggio viene visualizzato nel terminale la prossima volta che questo utente accede al sistema.
To run a command as administrator (user "root"), use "sudo".
See "man sudo_root" for details.
Crea un nuovo utente con privilegi di Sudo
adduser
è il comando Linux utilizzato per creare un nuovo utente. Può essere utilizzato con
flag --ingroup
per aggiungere l'utente al gruppo sudo durante la creazione.
sudo adduser testuser --ingroup=sudo
Limita quali comandi dovrebbero essere consentiti con sudo
Il file /etc/sudoers
contiene le opzioni di configurazione per il sudo
comando. Questo file è protetto da scrittura direttamente, anche per root. L'unico modo per modificare questo file è usare il visudo
comando.
sudo visudo
Il comando precedente aprirà il file utilizzando l'editor della riga di comando nano. Scorri e trova le righe sottostanti nel file.
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
L'ultimo ALL
nella riga può essere sostituito con l'unico comando o insieme di comandi che dovrebbero essere consentiti con sudo.
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) /bin/mv, /usr/sbin/visudo
Nota importante: le modifiche suggerite nel file sudoers sopra limiteranno gli utenti sudo a essere in grado di eseguire solo comandi mv
e visudo
. Questo è solo a scopo esplicativo, non devi forzare queste restrizioni agli utenti sudo sul tuo sistema.
Se hai apportato modifiche al file sudoers utilizzando le istruzioni condivise sopra, assicurati di salvare il file utilizzando Ctrl + O
per applicare le modifiche. Puoi quindi uscire da nano usando Ctrl + X
.
Affinché le modifiche abbiano luogo, potrebbe essere necessario effettuare il login/logout, o riavviare il sistema, o avviare una nuova finestra di terminale.
🍻 Saluti!