web-dev-qa-db-fra.com

Je peux utiliser Sudo mais je ne peux pas utiliser su en raison d'un échec d'authentification du mot de passe. Ne devrait-il pas s'agir du même mot de passe?

lorsque j'essaie d'utiliser une commande avec Sudo tout fonctionne correctement, cependant, si je veux me connecter en tant que superutilisateur à l'aide de su, cela ne me le permet pas. Pourquoi?

9
Sol33t303

Qu'est-ce qui se passe?

Pour changer d'utilisateur avec la commande su, vous devez fournir le mot de passe de l'utilisateur cible, c'est ainsi que cela fonctionne. Cependant, avec Sudo, vous pouvez utiliser votre propre mot de passe.

Par exemple, si vous utilisez la commande su - pour basculer en utilisateur root, vous devez utiliser le mot de passe root qui, par défaut, ne comporte aucun mot de passe et son compte est également désactivé.

Quel est le différent?

Donc, avec su, nous donnons un mot de passe unique à tous les utilisateurs qui doivent basculer dans l'utilisateur cible. Sudo permet de résoudre ce problème.

Nous configurons un fichier nommé sudoers et définissons qui peut faire quoi. Ainsi, chaque personne utilisant Sudo et son propre mot de passe peuvent prouver qu’il s’agit bien de lui et exécuter certaines commandes spécifiques.

Que puis-je faire?

Vous pouvez utiliser: Sudo -i pour basculer à la racine avec son shell par défaut en tant que shell de connexion, ou pour un shell sans connexion, Sudo -s ou même une ancienne école, Sudo su - (connectez-vous à nouveau à Shell).


Informations supplémentaires

Vous pouvez également utiliser Sudo -l pour voir vos privilèges. Par exemple, avez-vous les droits pour basculer en mode utilisateur ou racine ou pour exécuter une commande spécifique en utilisant john sur une machine spécifique?

Pour clarifier à propos du compte root:
sur une machine Ubuntu, par défaut, le compte root ne possède pas de mot de passe et, en même temps, le compte est désactivé. Lorsque vous désactivez un compte, un point d'exclamation "!" Est ajouté devant son hachage de mot de passe afin que personne ne puisse s'y connecter, qu'il ait ou non un mot de passe.

$ Sudo grep root /etc/shadow
root:!:2020:0:99999:2:::

Ce qui signifie que root n'a pas de mot de passe (la deuxième section (délimitée par ':') est vide, elle ne contient qu'un point d'exclamation) et est en même temps désactivée: faites attention à !.

22
Ravexina

Non, dans Sudo vous entrez votre propre mot de passe, dans su c'est le mot de passe root, qui est normalement désactivé dans Ubuntu.

4
Soren A