web-dev-qa-db-fra.com

Quel est l'intérêt de la commande Sudo en termes de sécurité?

Cette question est en fait non spécifique à Ubuntu. D'après ce que j'ai compris, Sudo consiste à empêcher les utilisateurs non autorisés d'effectuer des opérations administratives ou autres opérations potentiellement dangereuses. Le principe est que quelqu'un est ici devant mon PC en train de l'utiliser ... ou peut-être à distance (mais dans ce cas, ils doivent connaître mon mot de passe de connexion pour se connecter à l'ordinateur, et c'est généralement le même que mon Sudo mot de passe ...) Donc, il y a quelqu'un devant mon PC et elle ne peut pas supprimer certains fichiers ou répertoires importants ni installer de logiciels nuisibles sans connaître mon mot de passe Sudo, mais elle peut faire beaucoup d'autres choses nuisibles et portant atteinte à la vie privée sans Sudo. Alors, ne serait-il pas préférable de demander à chaque fois des privilèges d'administrateur avant d'ouvrir le gestionnaire de fichiers ou le terminal? Je sais que cela peut prendre beaucoup de temps et être épuisant.

1
A. N. Other

Tout d’abord, vous devez comprendre le concept des utilisateurs de Linux, en particulier pour l’utilisateur root. Afin de garder cette réponse en dessous de la limite de caractères (et sur le sujet), je vous suggère de lire cette page suivi de celui-ci . Vraiment, tout ce que vous devez savoir est le suivant:

Linux est un système d'exploitation multi-utilisateur, chaque utilisateur ayant une puissance et une portée limitées, définies par son groupe d'utilisateurs. Chaque système Linux a quelque chose appelé l'utilisateur root (UID 0, également appelé superutilisateur), qui est l'administrateur total et totalement autorisé. root sait tout, root voit tout, root contrôle tout.

Le concept de Sudo provient de l'ancienne commande UNIX su (from s sorcière u ser), qui permettait à tout utilisateur de se connecter à n’importe quel autre utilisateur du système. Toute personne disposant de privilèges d'administrateur doit taper su root (ou simplement su) pour être transmise à l'utilisateur root pour toute tâche d'administration. Ceci, malheureusement, a eu quelques problèmes. Dans les systèmes avec plusieurs administrateurs, tout le monde partageait le mot de passe root. Cela signifie que si un administrateur quitte l'entreprise, le mot de passe racine devra être modifié et redistribué à tous les autres administrateurs. Cela peut parfois prendre énormément de temps et, sinon, être très pénible.

Maintenant, entrez Sudo. Sudo fonctionne sur un principe différent. Plutôt que d’obliger les utilisateurs à connaître la connexion au compte racine, Sudo serait utilisé pour permettre aux utilisateurs de passer eux-mêmes au compte root (ou à tout autre compte, d’autre part) en fonction des règles du /etc/sudoers fichier. Maintenant, révoquer ou ajouter un administrateur est simple: il suffit d'ajouter ou de supprimer un utilisateur d'un groupe ou du fichier. De ce fait, le compte root peut être "désactivé", bloquant ainsi l'accès à quiconque, à l'exception des administrateurs réels.

Dans presque tous les cas, c'est tout ce que Sudo est utilisé. Il accorde root pouvoir aux administrateurs (membres du groupe admin ou Sudo) en fonction des règles définies dans /etc/sudoers.

(Non) intentionnellement, cela présente également un avantage considérable en termes de sécurité. Les administrateurs peuvent s'exécuter en mode non privilégié, comme n'importe quel autre utilisateur. Ils peuvent ensuite augmenter ou "activer" les privilèges administratifs lorsqu'ils sont nécessaires et les révoquer immédiatement après. Généralement, cela n’est utilisé que pour une seule commande (par exemple, Sudo apt install cowsay), mais il peut également s'agir d'un shell racine à part entière.

Cette isolation protège également le système dans son ensemble (rappelez-vous, * NIX était à l'origine un environnement multi-utilisateur utilisé par de nombreuses personnes) contre les codes malveillants exécutés à partir du compte d'un administrateur, que ce soit par le biais de programmes malveillants ou de quelqu'un se connectant au terminal actif d'un administrateur. De même, Sudo permet à chaque action de l'administrateur d'être consignée et révisée à tout moment. Comparez cela à l'ancienne méthode su, où vous n'aviez aucune idée réaliste de qui exécutait quelle commande.

En outre, selon le modèle de permission de Linux, Sudo peut empêcher un utilisateur de faire erreurs potentiellement dangereuses comme désinstaller accidentellement un programme critique, effacer un disque dur ou toute autre série de choses malveillantes. cela ne devrait jamais être fait sans quelque confirmation.

TL; DR:

Vraiment, Sudo n’est qu’un atout (très utile) issu des véritables environnements multi-utilisateurs des anciennes installations * NIX. Cependant, il conserve son utilité en protégeant le système contre les programmes malveillants ou le détournement de session. Dans la mentalité typique de * NIX, la protection du compte réel de l'administrateur est un exercice laissé à l'administrateur.

Si vous craignez que quelqu'un s'asseye devant votre ordinateur pendant que vous êtes absent et que vous jouiez avec votre vie privée, verrouillez simplement votre écran/session. Malgré tout, l'accès physique est un tueur .

2
Kaz Wolfe

l’espace utilisateur n’a pas accès aux fichiers système essentiels, ce qui empêche les codes malveillants tels que les virus et les kits racine de s’installer eux-mêmes.

La commande Sudo donne à la personne à la racine du clavier un accès lui permettant de modifier l’installation.

Vous ne pouvez pas protéger votre mot de passe de quelqu'un assis devant votre ordinateur.

0
ravery

Donc, comme vous l'avez dit vous-même, la commande Sudo fonctionne parfaitement, elle prend soin de ce qu'elle suppose:

  • Sur la base des définitions, il décide qui est autorisé à faire quel type de travail?
    • basé sur/etc/sudoeres ou /etc/sudoeres.d
    • exemple: l'utilisateur bob est-il autorisé à exécuter rm à l'aide de l'utilisateur root sur ALL machines?
  • Ensuite, il vérifiera que l'utilisateur est bien celui qu'il prétend être.
    • En demandant un mot de passe

Ce qui ne va pas, c’est que vous autorisez un utilisateur non approuvé à utiliser votre système, c’est là que les dommages sont causés (pas au système, ni à votre compte).

Vous ne devriez pas permettre à quiconque en qui vous ne faites pas confiance d'utiliser votre ordinateur, c'est comme exécuter un programme malveillant sans que rien ne se passe.


Utilisez Sudo, n'autorisez personne à utiliser votre compte, vous pouvez y aller en toute sécurité ...

0
Ravexina

Sudo a un objectif spécifique: il permet aux utilisateurs autorisés d'augmenter leurs privilèges actuels de manière contrôlée. L'impact pratique de cela dépend de la façon dont vous utilisez les privilèges de votre système. Généralement, les utilisateurs n'utilisent pas les privilèges pour mettre en silo leurs données. Par conséquent, Sudo ne protège pas ces données.

Cependant, si vous le vouliez vraiment, vous pourriez utiliser Sudo pour protéger davantage de choses; Par exemple, vous pouvez créer un autre compte utilisateur existant uniquement pour exécuter votre navigateur Web. Ainsi, personne utilisant votre compte normal ne pourrait accéder à vos cookies ou à votre cache sans passer par Sudo. Vous pouvez créer encore un autre utilisateur pour modifier des documents Office afin de le protéger des modifications apportées par votre compte normal. Etc. Ce n'est généralement pas le cas car il s'agit d'un inconvénient majeur pour un bénéfice minimal, mais il est possible de le faire si les données sont suffisamment sensibles.

L'autre point est que ces privilèges s'appliquent à tous les programmes . Restreindre l'accès au terminal et au gestionnaire de fichiers ne protégerait pas contre les modifications non autorisées effectuées via un traitement de texte (disons que je charge certains de vos documents récemment modifiés et que je supprime tout le texte), mais si l'utilisateur connecté n'a pas la permission de voir ou éditer les fichiers, alors le programme non peut les éditer sans Sudo, que ce soit un terminal, un gestionnaire de fichiers ou autre.

0
Paul