wiki:os:bsd_unix:tutos:admin:sudo

La commande sudo comme alternative au compte root

Logo 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.

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

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.

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

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
Il existe encore bon nombres d'options pour la commande sudo, je vous laisse plonger dans le man de la commande.
  • wiki/os/bsd_unix/tutos/admin/sudo.txt
  • Dernière modification : 2025/04/10 11:54
  • de Thibault Seguin