Ceci est une ancienne révision du document !
La commande sudo comme alternative au compte root
Logo de sudo :
Présentation de sudo
La commande sudo (substitute user do) est une commande qui permet de lancer des commandes administratives sans nécessité d'accès au compte root (superutilisateur sous les systèmes Unix) mais également des applications graphiques d'administrations. Il existe une commande similaire à sudo du nom de doas qui provient du projet OpenBSD.
Installation de sudo
Pour les distributions Linux n'ayant pas sudo par défaut, il faut d'abord vous connectez en tant que root :
su -
puis entrez votre mot de passe root.
Sous FreeBSD :
pkg install sudo
Sous NetBSD :
pkgin install sudo
Sous OpenBSD :
pkg_add sudo
Lié un utilisateur à sudo
Suite à l'installation de sudo, un fichier de configuration est créé du nom de sudoers
, /usr/local/etc/sudoers
sous FreeBSD et OpenBSD et /usr/pkg/etc/sudoers
sous NetBSD.
Pour éditer ce fichier de manière sécurisée, il y a l'utilitaire visudo qui utilise votre éditeur de texte par défaut (en principe ee* pour FreeBSD ou vi).
Entrez en root :
<code root>visudo</code>ouvre le fichier sudoers
avec votre éditeur de texte.
Copier la ligne root ALL=(ALL:ALL) ALL
et ajoutez au fichier tom ALL=(ALL:ALL) ALL
, tom est à remplacer par votre nom d'utilisateur. L'ajout de tom ALL=(ALL:ALL) ALL
au fichier sudoers
vous donne tous les droits du compte root de manière immédiate. Vous pouvez évidemment peaufiner votre réglage et n'attribuer que quelques autorisations à votre utilisateur.
===== Utilisation de la commande sudo =====
Pour avoir une information complète sur la commande sudo :
<code user>man sudo</code>
Pour avoir un bref résumé de l'utilisation de la commande sudo :
<code user>sudo –help</code>
==== Quelques commandes sudo ====
Pour vous connecter en tant que root via votre utilisateur :
<code user>sudo su -</code>ou :
<code user>sudo -i</code>
Exécuter une commande administrative avec les droits root sous sudo :
<code user>sudo cmd_admin</code>exemple :
<code user>sudo apt update</code>
Exécuter une commande avec sudo en choisissant votre utilisateur :
<code user>sudo -u tom fdisk -l</code>exécute la commande fdisk -l
via l'utilisateur tom avec des droits root.
Vous connectez en tant que root en spécifiant un shell Unix installé :
<code user>sudo -s tcsh</code>vous connectes en root avec le shell tcsh.
Terminer une session sudo, pour devoir retaper le mot de passe de votre utilisateur après une nouvelle commande sudo :
<code user>sudo -k</code>
<note>Il existe encore bon nombres d'options pour la commande sudo, je vous laisse plonger dans le man** de la commande.</note>