58 votes

Pourquoi Ubuntu a-t-il un compte root désactivé ?

Ubuntu désactive la connexion root pour "des raisons de sécurité". Cependant, il me semble que cela ne contribue en rien à la sécurité.

Si un intrus parvient à obtenir votre mot de passe de connexion pour Ubuntu, alors il a également le mot de passe super-utilisateur, car il est identique au mot de passe de connexion.

Cependant, si le mot de passe root est requis, alors simplement avoir la connexion ne sera pas très utile à l'intrus - n'est-ce pas?

Donc fondamentalement, ce que je veux savoir, c'est: Pourquoi Ubuntu a-t-il choisi de désactiver le mot de passe root? Quelles sont les raisons de sécurité?

Je vous prie de ne pas répondre en fonction de ce que vous "pensez" être la raison - je suis à la recherche d'une réponse provenant de sources officielles, ou liées à elles.

83voto

Rinzwind Points 270388

Mitch a posté un bon lien en commentaire: Pourquoi est-il mauvais de se connecter en tant que root? et le site de Debian liste les principaux avantages dans leur wiki:

Pourquoi sudo?

Utiliser sudo est mieux (plus sûr) que d'ouvrir une session en tant que root pour un certain nombre de raisons, notamment:

  • Personne n'a besoin de connaître le mot de passe root (sudo demande le mot de passe de l'utilisateur actuel). Des privilèges supplémentaires peuvent être accordés aux utilisateurs individuels temporairement, puis retirés sans avoir besoin de changer de mot de passe.

  • Il est facile d'exécuter uniquement les commandes qui nécessitent des privilèges spéciaux via sudo; le reste du temps, vous travaillez en tant qu'utilisateur non privilégié, ce qui réduit les dommages que les erreurs peuvent causer.

  • Audit/journalisation: lorsque une commande sudo est exécutée, le nom d'utilisateur d'origine et la commande sont journalisés.

Pour les raisons ci-dessus, passer en root en utilisant sudo -i (ou sudo su) est généralement déconseillé car cela annule les fonctionnalités ci-dessus.

Concernant Ubuntu Les avantages et inconvénients sont répertoriés sur notre wiki:

Avantages de l'utilisation de sudo

Il y a un certain nombre d'avantages à laisser les connexions root désactivées par défaut sur Ubuntu, notamment:

  • L'installateur a moins de questions à poser. Les utilisateurs n'ont pas besoin de se rappeler un mot de passe supplémentaire pour une utilisation occasionnelle (c'est-à-dire le mot de passe root). S'ils le faisaient, ils oublieraient probablement (ou le noteraient de manière non sécurisée, permettant à quiconque d'accéder facilement à leur système).

  • Il évite le login interactif "Je peux tout faire" par défaut. Vous devrez saisir un mot de passe avant que des changements importants ne puissent se produire, ce qui devrait vous faire réfléchir aux conséquences de ce que vous faites.

  • sudo ajoute une entrée de journal des commandes exécutées (dans /var/log/auth.log). Si vous faites une erreur, vous pouvez revenir en arrière et voir quelles commandes ont été exécutées.

  • Sur un serveur, chaque pirate essayant de forcer son entrée saura qu'il a un compte nommé root et essayera cela en premier. Ce qu'ils ne savent pas, ce sont les noms d'utilisateur de vos autres utilisateurs. Comme le mot de passe du compte root est verrouillé, cette attaque devient essentiellement inutile, puisqu'il n'y a pas de mot de passe à casser ou à deviner en premier lieu.

  • Permet un transfert facile des droits d'administration en ajoutant et en retirant des utilisateurs de groupes. Lorsque vous utilisez un seul mot de passe root, la seule façon de dé-autoriser les utilisateurs est de changer de mot de passe root.

  • sudo peut être configuré avec une politique de sécurité beaucoup plus fine. Le mot de passe du compte root n'a pas besoin d'être partagé avec tout le monde qui doit effectuer certains types de tâches administratives sur le système (voir le point précédent).

  • L'authentification expire automatiquement après un court laps de temps (qui peut être réglé à aussi peu que désiré ou 0); donc si vous vous éloignez du terminal après avoir exécuté des commandes en tant que root en utilisant sudo, vous ne laisserez pas un terminal root ouvert indéfiniment.

Inconvénients de l'utilisation de sudo

Bien que les avantages de l'utilisation de sudo pour les postes de travail soient nombreux, il existe des problèmes potentiels qui doivent être notés:

  • Rediriger la sortie des commandes exécutées avec sudo nécessite une approche différente. Par exemple, considérez sudo ls > /root/somefile ne fonctionnera pas car c'est le shell qui tente d'écrire dans ce fichier. Vous pouvez utiliser ls | sudo tee -a /root/somefile pour ajouter, ou ls | sudo tee /root/somefile pour écraser le contenu. Vous pouvez également passer la commande entière à un processus shell exécuté sous sudo pour que le fichier soit écrit avec des autorisations root, comme sudo sh -c "ls > /root/somefile".

  • Dans de nombreux environnements de bureau, le SEUL utilisateur local sur un système est root. Tous les autres utilisateurs sont importés en utilisant des techniques NSS telles que nss-ldap. Pour configurer une station de travail, ou la réparer, en cas de panne de réseau où nss-ldap est cassé, root est nécessaire. Cela a tendance à rendre le système inutilisable sauf s'il est cracké. Un utilisateur local supplémentaire, ou un mot de passe root activé est nécessaire ici. Le compte utilisateur local devrait avoir son $HOME sur un disque local, pas sur NFS (ou tout autre réseau système de fichiers), et un .profile/.bashrc qui ne fait pas référence à des fichiers sur des montages NFS. C'est généralement le cas pour root, mais si vous ajoutez un compte de secours non-root, vous devrez prendre ces précautions manuellement. Cependant, l'avantage d'utiliser un utilisateur local avec sudo est que les commandes peuvent être facilement suivies, comme mentionné dans les avantages ci-dessus.

Et nous l'avons toujours eu (depuis la tout première sortie).


La plus ancienne référence que j'ai trouvée parle de la version 4.10 qui a "sudo"

SHUTTLEWORTH LANCE UBUNTU LINUX BASÉ SUR DEBIAN

... Ubuntu Linux basé sur Debian inclut Gnome 2.8, kernel 2.6.8.1, OpenOffice.org 1.1.2 et est livré avec une procédure d'installation basée sur du texte, mais facile. Ubuntu a désactivé l'utilisateur root préférant utiliser sudo, tout comme le fait Mac OSX ...

6voto

Logan Serman Points 11537

Je crois que ce qui est écrit sur la page d'aide est assez clair et suffisamment objectif.

Ubuntu est "pour tout le monde" et même si vous êtes assez compétent pour ne pas avoir besoin d'un accès root pour endommager votre ordinateur, en même temps, vous n'en avez presque pas besoin du tout (et vous savez comment l'activer facilement).
Donc, le problème ne concerne pas les personnes qui sont "assez compétentes", mais tous les autres, qui peuvent venir sur Linux d'un autre monde de l'informatique et dont le premier contact est avec Ubuntu (et nous sommes nombreux).

Si vous n'êtes pas un expert et ne savez pas exactement ce que signifie root et comment le gérer correctement, vous ne voulez ni ne avez besoin de l'activer (et risquer, par exemple, de vous connecter graphiquement avec).
Il est bien meilleur d'apprendre à faire les choses de manière sécurisée puis de passer à des chemins plus difficiles et dangereux, que de commencer directement de la manière difficile et ensuite endommager votre installation/poste de travail, devenir frustré et peut-être incapable de récupérer un système entièrement fonctionnel.
En général, il vaut mieux prévenir que guérir.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X