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
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, 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, plus précisément nvi).
Entrez en root :
visudo
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 :
man sudo
Pour avoir un bref résumé de l'utilisation de la commande sudo :
sudo --help
Quelques commandes sudo
Pour vous connecter en tant que root via votre utilisateur :
sudo su -
ou :
sudo -i
Exécuter une commande administrative avec les droits root sous sudo :
sudo cmd_admin
exemple :
sudo vipw
Exécuter une commande avec sudo en choisissant votre utilisateur :
sudo -u tom newfs /dev/disk
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é :
sudo -s bash
vous connectes en root avec le shell bash.
Terminer une session sudo, pour devoir retaper le mot de passe de votre utilisateur après une nouvelle commande sudo :
sudo -k