Quelle est la différence entre Sudo et Su sous Linux?

Table des matières:

Quelle est la différence entre Sudo et Su sous Linux?
Quelle est la différence entre Sudo et Su sous Linux?

Vidéo: Quelle est la différence entre Sudo et Su sous Linux?

Vidéo: Quelle est la différence entre Sudo et Su sous Linux?
Vidéo: How to Make Venmo Payments Completely Private - YouTube 2024, Avril
Anonim
Si vous êtes un utilisateur Linux, vous avez probablement déjà vu des références à sudo et à su. Dans How-To Geek et ailleurs, les articles suivants expliquent aux utilisateurs d’Ubuntu qu’ils doivent utiliser sudo et les autres utilisateurs de distributions Linux, mais quelle est la différence?
Si vous êtes un utilisateur Linux, vous avez probablement déjà vu des références à sudo et à su. Dans How-To Geek et ailleurs, les articles suivants expliquent aux utilisateurs d’Ubuntu qu’ils doivent utiliser sudo et les autres utilisateurs de distributions Linux, mais quelle est la différence?

Sudo et su sont deux manières différentes d'obtenir des privilèges root. Chacune fonctionne de manière différente et différentes distributions Linux utilisent différentes configurations par défaut.

L'utilisateur racine

Su et sudo sont utilisés pour exécuter des commandes avec des autorisations root. L'utilisateur root est fondamentalement équivalent à l'utilisateur administrateur sous Windows: l'utilisateur root dispose des autorisations maximales et peut faire n'importe quoi pour le système. Les utilisateurs normaux sous Linux fonctionnent avec des autorisations réduites. Par exemple, ils ne peuvent pas installer de logiciel ni écrire dans les répertoires système.

Pour faire quelque chose qui nécessite ces autorisations, vous devez les acquérir avec su ou sudo.

Su vs Sudo

La commande su bascule vers le super utilisateur - ou l'utilisateur root - lorsque vous l'exécutez sans options supplémentaires. Vous devrez entrer le mot de passe du compte root. Ce n’est pas tout ce que fait la commande su, vous pouvez l’utiliser pour passer à n’importe quel compte utilisateur. Si vous exécutez le su bob commande, vous serez invité à saisir le mot de passe de Bob et le shell basculera sur le compte de celui-ci.

Une fois que vous avez fini d’exécuter des commandes dans le shell root, vous devez taper sortie quitter le shell root et revenir au mode privilèges limités.

Sudo exécute une seule commande avec les privilèges root. Quand vous exécutez commande sudo, le système vous demande le mot de passe de votre compte utilisateur actuel avant de lancer commander en tant qu'utilisateur root. Par défaut, Ubuntu garde le mot de passe en mémoire pendant quinze minutes et ne vous le demandera plus avant que les quinze minutes ne soient écoulées.

C'est une différence clé entre su et sudo. Su vous renvoie au compte utilisateur root et requiert le mot de passe de ce compte. Sudo exécute une seule commande avec les privilèges root - il ne bascule pas sur l’utilisateur root et ne requiert pas de mot de passe utilisateur root distinct.
C'est une différence clé entre su et sudo. Su vous renvoie au compte utilisateur root et requiert le mot de passe de ce compte. Sudo exécute une seule commande avec les privilèges root - il ne bascule pas sur l’utilisateur root et ne requiert pas de mot de passe utilisateur root distinct.

Ubuntu vs. Autres distributions Linux

La commande su est la méthode traditionnelle d’acquisition des autorisations root sur Linux. La commande sudo existe depuis longtemps, mais Ubuntu a été la première distribution Linux populaire à utiliser sudo uniquement par défaut. Lorsque vous installez Ubuntu, le compte root standard est créé, mais aucun mot de passe ne lui est attribué. Vous ne pouvez pas vous connecter en tant que root tant que vous n'avez pas attribué de mot de passe au compte root.

Il y a plusieurs avantages à utiliser sudo au lieu de su par défaut. Les utilisateurs Ubuntu doivent uniquement fournir et mémoriser un seul mot de passe, tandis que Fedora et les autres distributions nécessitent de créer des mots de passe distincts pour les comptes utilisateur et root lors de l'installation.
Il y a plusieurs avantages à utiliser sudo au lieu de su par défaut. Les utilisateurs Ubuntu doivent uniquement fournir et mémoriser un seul mot de passe, tandis que Fedora et les autres distributions nécessitent de créer des mots de passe distincts pour les comptes utilisateur et root lors de l'installation.

Un autre avantage est qu’il décourage les utilisateurs de se connecter en tant qu’utilisateur root - ou d’utiliser su pour obtenir un shell racine - et de garder celui-ci ouvert pour effectuer leur travail normal. L'exécution de moins de commandes en tant que root augmente la sécurité et évite les modifications accidentelles à l'échelle du système.

Les distributions basées sur Ubuntu, y compris Linux Mint, utilisent également sudo au lieu de su par défaut.

Quelques astuces

Linux est flexible, il ne faut donc pas beaucoup de travail pour que su fonctionne de la même manière que sudo - ou vice versa.

Pour exécuter une seule commande en tant qu'utilisateur root avec su, exécutez la commande suivante:

su -c ‘command’

Ceci est similaire à l’exécution d’une commande avec sudo, mais vous aurez besoin du mot de passe du compte root au lieu du mot de passe de votre compte utilisateur actuel.

Pour obtenir un shell root interactif complet avec sudo, exécutez sudo –i.

Vous devrez fournir le mot de passe de votre compte utilisateur actuel au lieu du mot de passe du compte root.
Vous devrez fournir le mot de passe de votre compte utilisateur actuel au lieu du mot de passe du compte root.

Activation de l'utilisateur racine dans Ubuntu

Pour activer le compte d'utilisateur root sur Ubuntu, utilisez la commande suivante pour définir un mot de passe pour celui-ci. N'oubliez pas qu'Ubuntu vous recommande de ne pas le faire.

sudo passwd root

Sudo vous demandera le mot de passe de votre compte utilisateur actuel avant de pouvoir définir un nouveau mot de passe. Utilisez votre nouveau mot de passe pour vous connecter en tant que root à partir d'une invite de connexion au terminal ou à l'aide de la commande su. Vous ne devez jamais exécuter un environnement graphique complet en tant qu'utilisateur root. Il s'agit d'une pratique de sécurité très médiocre et de nombreux programmes refuseront de fonctionner.

Image
Image

Ajout d'utilisateurs au fichier Sudoers

Seuls les comptes de type administrateur sous Ubuntu peuvent exécuter des commandes avec sudo. Vous pouvez modifier le type d'un compte d'utilisateur à partir de la fenêtre de configuration des comptes d'utilisateurs.

Ubuntu désigne automatiquement le compte utilisateur créé lors de l'installation en tant que compte administrateur.
Ubuntu désigne automatiquement le compte utilisateur créé lors de l'installation en tant que compte administrateur.
Image
Image

Si vous utilisez une autre distribution Linux, vous pouvez autoriser un utilisateur à utiliser sudo en exécutant le programme visudo commande avec les privilèges root (donc exécutez su premier ou utiliser su -c).

Ajoutez la ligne suivante au fichier en remplaçant utilisateur avec le nom du compte utilisateur:

user ALL=(ALL:ALL) ALL

presse Ctrl-X et alors Y pour sauvegarder le fichier. Vous pourrez peut-être aussi ajouter un utilisateur à un groupe spécifié dans le fichier. Les utilisateurs des groupes spécifiés dans le fichier auront automatiquement les privilèges sudo.

Image
Image

Versions graphiques de Su

Linux prend également en charge les versions graphiques de su, qui demandent votre mot de passe dans un environnement graphique. Par exemple, vous pouvez exécuter la commande suivante pour obtenir une invite de mot de passe graphique et exécuter le navigateur de fichiers Nautilus avec des autorisations root. presse Alt-F2 pour exécuter la commande à partir d’une boîte de dialogue d’exécution graphique sans lancer de terminal.

gksu nautilus

La commande gksu contient également quelques autres astuces: elle préserve les paramètres actuels de votre bureau. Ainsi, les programmes graphiques ne vous paraîtront pas déplacés si vous les lancez en tant qu’utilisateur différent. Des programmes tels que gksu sont le moyen privilégié de lancer des applications graphiques avec des privilèges root.
La commande gksu contient également quelques autres astuces: elle préserve les paramètres actuels de votre bureau. Ainsi, les programmes graphiques ne vous paraîtront pas déplacés si vous les lancez en tant qu’utilisateur différent. Des programmes tels que gksu sont le moyen privilégié de lancer des applications graphiques avec des privilèges root.

Gksu utilise un backend basé sur su ou sudo, en fonction de la distribution Linux que vous utilisez.

Vous devriez maintenant être prêt à rencontrer à la fois su et sudo! Vous rencontrerez les deux si vous utilisez différentes distributions Linux.

Conseillé: