web-dev-qa-db-fra.com

Pourquoi la désactivation de root est-elle nécessaire pour la sécurité?

Cette page sur le durcissement du serveur prétend:

La désactivation du compte root est nécessaire pour des raisons de sécurité.

Pourquoi la désactivation du compte root est-elle nécessaire pour des raisons de sécurité?

42
Randomblue

Si vous n'utilisez pas Root, vous utilisez Sudo! Sudo est un excellent moyen de devenir root uniquement lorsque vous en avez besoin.

  1. Root est une cible géante. Quel est le nom d'utilisateur de root? Racine! Je suis très intelligente :)
  2. Logging. Sudo a une plus grande maîtrise de la journalisation d'audit (de sorte que lorsque quelqu'un utilise Sudo pour faire quelque chose de stupide, vous pouvez les bavarder avec le serveur de journalisation central). Cela est utile pour l'analyse médico-légale dans certains cas.
  3. Autorisations granulaires. Root est un gros marteau renversant. Ne remettez pas les BFH à vos utilisateurs. Sudo vous permet de spécifier qu'un utilisateur peut exécuter des commandes de mise à jour comme aptitude sans mot de passe, mais tout est hors limites! Vous ne pouvez pas faire cela avec le BFH qui est root. L'informatique vous offre la flexibilité de sanctionner certaines commandes pour les utilisateurs, mais d'en interdire d'autres. Cela vous permet de créer une stratégie de sécurité qui ne nécessite pas qu'un administrateur se connecte physiquement à une machine chaque fois qu'une machine doit être mise à jour (ou une autre tâche secondaire).
  4. Idiot-proofing. Pourquoi ne remettez-vous pas aux utilisateurs un BFH? Parce qu'ils sont stupides. Pourquoi est-ce que j'utilise Sudo au lieu de root? Je suis stupide. Dumb signifie des erreurs, et des erreurs signifient des failles de sécurité et des problèmes d'administrateur système.
81
Ohnana

Le site auquel vous vous connectez est très pauvre pour expliquer ce qu'il vous fait faire. Le compte root est pas en cours de désactivation, mais le mot de passe root est désactivé. C'est ce que passwd -l Est-ce que.

Le but de ces instructions est de faire en sorte que les gens ne puissent pas se connecter en tant qu'utilisateur root, car le compte root est facile à deviner. Je ne suis pas sûr que leur approche de création d'un pseudo-utilisateur avec un "nom difficile à deviner" sera d'autant plus sécurisée ...

38
schroeder

C'est une vieille tradition du temps du Mainframe. L'idée est que root peut faire ce qu'il veut avec la machine, y compris le remplacement du noyau ou la destruction des variables UEFI, ce qui peut briquer la machine. Alors qu'un compte nonroot ne peut pas - à moins que ce compte ne dispose de droits administratifs via Sudo, ce que vous aurez avec Ubuntu, et cela détruit totalement la justification ci-dessus.

En réalité, la désactivation du compte root est désormais utilisée exclusivement pour apaiser les dieux plus âgés, qui:

  1. sont grincheux;
  2. sont obsolètes;
  3. sont morts depuis des décennies, mais sont toujours vénérés par une puissante caste de grands prêtres, appelés collectivement "auditeurs de conformité".

Dans la pratique, votre vie numérique est complètement accessible à partir de votre compte d'utilisateur normal, donc il n'est pas très logique de faire une protection par rapport à l'utilisateur root. Le nettoyage avec la distinction root/non -root est une chose du passé, lorsque les machines étaient de gros serveurs partagés entre des centaines d'utilisateurs qui étaient peut-être hostiles les uns aux autres.

16
Tom Leek

Veuillez noter que (au moins sur Ubuntu et ses dérivés), il existe un compromis lié à la désactivation du mot de passe root.

En cas de sinistre sur votre système, vous souhaiterez démarrer le système en mode de récupération (ou mono-utilisateur) à partir de la console. Si le mot de passe root est désactivé (comme c'est le cas par défaut), alors aucune authentification que ce soit peut être requis lors du démarrage en mode mono-utilisateur, car le compte root n'a pas d'informations d'identification à utiliser à cette fin, et aucun autre compte ne peut être garanti pour fonctionner dans ces circonstances. Ceci est géré par un code de cas spécial dans le programme sulogin.

Dans l'ensemble, cependant, c'est un métier facile à faire: vous empêchez toute une classe d'attaques à distance tout en ouvrant le système à une connexion root non authentifiée à partir de la console physique. N'oubliez pas que vous ne pouvez jamais sécuriser un système contre un attaquant avec un accès physique à celui-ci de toute façon. C'est pourquoi des centres de données sécurisés avec des contrôles d'accès électroniques existent.

5
Mike McManus

Root est généralement désactivé pour fournir une couche de sécurité supplémentaire dans tout le système d'exploitation Linux. L'utilisateur root a la possibilité de changer littéralement n'importe quoi, peu importe son importance. Cela en fait une cible commune des pirates, des virus, etc. La désactiver (ou plutôt désactiver le mot de passe) garantit que le compte ne peut pas être connecté si le mot de passe est récupéré (pas vraiment difficile à faire).

2
Alexander C. Solon

Par défaut, le mot de passe du compte root est verrouillé dans Ubuntu.

Parce que si le compte de cet utilisateur est compromis par un attaquant, l'attaquant peut également obtenir les privilèges root la prochaine fois que l'utilisateur le fera. Le compte utilisateur est le maillon faible de cette chaîne et doit donc être protégé avec le même soin que root.

Le mot de passe du compte root n'a pas besoin d'être partagé avec tous ceux qui doivent effectuer un certain type de tâches administratives sur le système.

Pour désactiver votre compte root, utilisez la commande suivante:

Sudo passwd -dl root
0
GAD3R