sudo
est l'une des commandes les plus couramment utilisées dans les systèmes Linux. Il permet à un utilisateur d'exécuter un programme particulier en tant qu'autre utilisateur, qui, par défaut, est le super utilisateur.
Il est principalement utilisé à des fins administratives; fournir un accès administrateur limité aux utilisateurs non administratifs sur un PC Linux.
Par exemple, par défaut, un utilisateur n'est pas autorisé à installer des packages sur un système Ubuntu. Cependant, l'utilisateur peut le faire avec sudo
command.
Un utilisateur non root sans sudo ne peut pas installer un programme . Voir un exemple de tentative échouée ci-dessous :
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 utilisateur non root avec sudo peut installer des programmes sur le système sans aucun problème.
sudo apt-get install aptitude
Reading package lists... Done
Building dependency tree
....
Ajouter un utilisateur existant en tant qu'utilisateur Sudo
Si un utilisateur ne fait pas partie du sudo
groupe d'utilisateurs, il ne pourra pas utiliser la sudo
commande. Il jettera ci-dessous la sortie:
testuser is not in the sudoers file. This incident will be reported.
Pour ajouter un utilisateur à la liste sudoers, utilisez la usermod
commande pour ajouter un utilisateur existant au sudo
groupe sur le système. Vous trouverez ci-dessous un exemple de commande.
sudo usermod -aG sudo testuser
Ici, l' -a
option signifie « ajouter ». Il garantit que l'appartenance aux groupes existants de l'utilisateur n'est pas affectée. -G
sert à spécifier à quel groupe ajouter l'utilisateur.
Une fois qu'un utilisateur est ajouté au groupe sudo, le message suivant s'affiche dans le terminal la prochaine fois que cet utilisateur se connecte au système.
To run a command as administrator (user "root"), use "sudo".
See "man sudo_root" for details.
Créer un nouvel utilisateur avec les privilèges Sudo
adduser
est la commande Linux utilisée pour créer un nouvel utilisateur. Il peut être utilisé avec un
indicateur --ingroup
pour ajouter l'utilisateur au groupe sudo lors de la création.
sudo adduser testuser --ingroup=sudo
Restreindre les commandes à autoriser avec sudo
Le fichier /etc/sudoers
contient des options de configuration pour la sudo
commande. Ce fichier est protégé en écriture directement, même pour root. La seule façon d'éditer ce fichier est d'utiliser la visudo
commande.
sudo visudo
La commande ci-dessus ouvrira le fichier à l'aide de l'éditeur de ligne de commande nano. Faites défiler et recherchez les lignes ci-dessous dans le fichier.
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
Le dernier ALL
de la ligne peut être remplacé par la seule commande ou par un ensemble de commandes qui devrait être autorisé avec sudo.
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) /bin/mv, /usr/sbin/visudo
Remarque importante : les modifications suggérées dans le fichier sudoers ci-dessus restreindront les utilisateurs sudo à ne pouvoir exécuter que des commandes mv
et visudo
. Ceci est uniquement à des fins explicatives, vous n'avez pas à forcer ces restrictions aux utilisateurs sudo sur votre système.
Si vous avez apporté des modifications au fichier sudoers à l'aide des instructions partagées ci-dessus, assurez-vous d'enregistrer le fichier en utilisant Ctrl + O
pour que les modifications soient appliquées. Vous pouvez ensuite quitter nano en utilisant Ctrl + X
.
Pour que les modifications aient lieu, vous devrez peut-être vous connecter / vous déconnecter, ou redémarrer le système, ou lancer une nouvelle fenêtre de terminal.
Bravo !