Recherche de site Web

Qu’est-ce que sudo sous Linux et pourquoi est-ce si important ?


Sudo signifie « superuser do » et donne à un utilisateur l'accès à des pouvoirs de type administrateur. Voici comment utiliser cet outil puissant.

Aux débuts de Linux, les choses étaient exponentiellement plus compliquées. Les distributions étaient beaucoup moins matures et nécessitaient un compte système particulier pour faire avancer les choses. Ce compte était root - et grâce à lui, vous disposiez d’un pouvoir illimité sur votre système d’exploitation.

Pour démontrer la puissance du compte root, une astuce que vous pouvez toujours jouer aux utilisateurs peu méfiants consiste à leur dire de passer au compte root avec la commande su , puis de leur demander d'émettre la commande suivante :

rm -rf /

La commande rm est utilisée pour supprimer des fichiers et des dossiers. En conjonction avec r (récursif) et f (force), vous supprimeriez tout du dossier racine (/), rendant ainsi votre système inutilisable.

À l’époque, toute commande nécessitant des privilèges administratifs était exécutée via l’utilisateur root. Pour ce faire, vous deviez soit passer à l'utilisateur root (avec la commande su), soit vous connecter en tant qu'utilisateur root. Ces deux options ont finalement été considérées comme un problème de sécurité. Un utilisateur pourrait faire n'importe quoi si vous vous connectiez en tant qu'utilisateur root et quittiez votre système.

L'accès à l'utilisateur root signifiait que si un pirate informatique accédait à votre système, il pourrait faire des ravages sur la machine.

Finalement, il a été décidé que quelque chose devait céder. De ce besoin est né sudo. Sudo signifie "superuser do" et permet effectivement à un utilisateur régulier (celui qui appartient au groupe admin) d'accéder à des pouvoirs de type administrateur. Cette approche a résolu deux problèmes :

  • L'utilisateur root pourrait être désactivé (il ne pourrait donc pas être exploité aussi facilement)
  • Seuls les utilisateurs du groupe admin (nous en parlerons plus en détail dans un instant) pourraient exécuter des tâches administratives.

Sudo a également permis aux administrateurs d'ajouter et de supprimer des utilisateurs du groupe sudo à tout moment, facilitant ainsi le contrôle des accès. Ce changement a constitué un pas en avant significatif pour Linux, qui a renforcé la sécurité du système et facilité la vie des utilisateurs.

Avec sudo en place, les utilisateurs n'ont plus besoin de passer à l'utilisateur root ou de se connecter à ce compte pour exécuter des commandes administratives, telles que l'installation de logiciels. Les utilisateurs peuvent exécuter ces activités d'administration via sudo avec le même effet que s'ils étaient exécutés à partir du compte d'utilisateur root.

Sudo offrait un meilleur contrôle sur qui pouvait faire quoi sur un système donné. Lorsqu'il tentait d'exécuter une commande nécessitant des privilèges d'administrateur, un utilisateur n'avait qu'à saisir son mot de passe utilisateur (également appelé mot de passe sudo) et la commande se déroulerait sans accroc, à condition qu'elle soit exécutée correctement.

Par exemple, au lieu de devoir d'abord passer à l'utilisateur root avec su, puis d'émettre les commandes de mise à jour/mise à niveau sur une distribution basée sur Ubuntu, un utilisateur pourrait émettre la commande suivante :

sudo apt-get update && sudo apt-get upgrade -y

En exécutant apt-get via sudo, l'utilisateur bénéficie de privilèges d'administrateur temporaires et peut émettre les commandes avec succès.

Qu’en est-il des utilisateurs qui ne font pas partie du groupe administrateur ?

Tout utilisateur auquel vous souhaitez accorder l'accès doit être membre du groupe d'administrateurs de la distribution. Par exemple, sur les distributions basées sur Ubuntu, ce groupe est sudo. Sur les distributions basées sur Red Hat, ce groupe est appelé wheel.

Si vous avez un utilisateur qui n'est pas membre du groupe d'administrateurs, lorsqu'il tentera d'exécuter une commande avec sudo, il verra quelque chose comme ceci :

olivia is not in the sudoers file.  This incident will be reported.

Comment résolvez-vous ce problème ? Vous les ajoutez au groupe d'administrateurs. Ainsi, pour une distribution basée sur Ubuntu, la commande pour ajouter un utilisateur au groupe d'administrateurs serait :

sudo usermod -aG sudo USER

Ici, USER est le nom d'utilisateur en question.

Sur une distribution basée sur Red Hat (telle que Fedora), la commande serait :

sudo usermod -aG wheel USER

Encore une fois, USER est le nom d'utilisateur en question.

Après avoir exécuté la commande, l'utilisateur devra alors soit se déconnecter et se reconnecter, soit informer le système des modifications avec la commande :

newgrp

Une fois qu'un utilisateur a été ajouté au groupe d'administrateurs, il peut utiliser sudo pour exécuter des commandes nécessitant des privilèges d'administrateur.

Sudo a rendu Linux plus sécurisé et plus convivial. Ne plus avoir à changer (ou à vous connecter) au compte d'utilisateur root évite de sérieux pièges de sécurité et vous permet de gérer l'accès des utilisateurs aux tâches d'administration.

Articles connexes