Page d'accueil » comment » Pourquoi vous ne devriez pas vous connecter à votre système Linux en tant que racine

    Pourquoi vous ne devriez pas vous connecter à votre système Linux en tant que racine

    Sous Linux, l'utilisateur racine est équivalent à l'utilisateur administrateur sous Windows. Cependant, bien que Windows connaisse depuis longtemps une culture d'utilisateurs moyens se connectant en tant qu'administrateur, vous ne devez pas vous connecter en tant que root sous Linux..

    Microsoft a essayé d'améliorer les pratiques de sécurité Windows avec le contrôle de compte d'utilisateur - vous ne devez pas vous connecter en tant que root sous Linux pour la même raison, vous ne devez pas désactiver le contrôle de compte d'utilisateur sous Windows.

    Pourquoi Ubuntu utilise Sudo

    Décourager les utilisateurs de s’exécuter en tant que root est l’une des raisons pour lesquelles Ubuntu utilise sudo au lieu de su. Par défaut, le mot de passe root est verrouillé sur Ubuntu. Par conséquent, les utilisateurs moyens ne peuvent pas se connecter en tant que root sans s'activer pour réactiver le compte root..

    Sur d'autres distributions Linux, il était historiquement possible de se connecter en tant que root à partir de l'écran de connexion graphique et d'obtenir un bureau root, bien que de nombreuses applications puissent se plaindre (et même refuser de s'exécuter en tant que root, comme le fait VLC). Les utilisateurs venant de Windows décidaient parfois de se connecter en tant que root, tout comme ils utilisaient le compte administrateur sous Windows XP..

    Avec sudo, vous exécutez une commande spécifique (préfixée par sudo) qui obtient les privilèges root. Avec su, vous utiliseriez la commande su pour obtenir un shell racine, dans lequel vous exécuteriez la commande que vous souhaitez utiliser avant (espérons-le) de quitter le shell racine. Sudo aide à appliquer les meilleures pratiques, en n'exécutant que les commandes devant être exécutées en tant que root (telles que les commandes d'installation de logiciel) sans vous laisser au niveau d'un shell root où vous pouvez rester connecté ou exécuter d'autres applications en tant que root..

    Limiter les dégâts

    Lorsque vous vous connectez en tant que votre propre compte utilisateur, les programmes que vous exécutez ne sont pas autorisés à écrire dans le reste du système. Ils peuvent uniquement écrire dans votre dossier personnel. Vous ne pouvez pas modifier les fichiers système sans obtenir les autorisations root. Cela aide à garder votre ordinateur sécurisé. Par exemple, si le navigateur Firefox présentait une faille de sécurité et que vous l'exécutiez en tant que root, une page Web malveillante serait en mesure d'écrire dans tous les fichiers de votre système, de lire les fichiers des dossiers de départ d'un autre compte d'utilisateur et de remplacer les commandes système par des commandes compromises. les uns. En revanche, si vous êtes connecté en tant que compte utilisateur limité, la page Web malveillante ne pourra faire aucune de ces choses - elle ne pourra que causer des dommages dans votre dossier personnel. Bien que cela puisse toujours causer des problèmes, c'est bien mieux que de compromettre tout votre système..

    Cela permet également de vous protéger contre les applications malveillantes ou tout simplement buggy. Par exemple, si vous exécutez une application qui décide de supprimer tous les fichiers auxquels elle a accès (elle contient peut-être un bogue méchant), l’application effacera votre dossier personnel. C'est mauvais, mais si vous avez des sauvegardes (ce que vous devriez!), Il est assez facile de restaurer les fichiers de votre dossier personnel. Toutefois, si l’application disposait d’un accès root, elle pourrait supprimer tous les fichiers de votre disque dur, ce qui nécessiterait une réinstallation complète..

    Autorisations à grain fin

    Alors que les anciennes distributions Linux exécutaient l'intégralité des programmes d'administration système en tant qu'utilisateur root, les ordinateurs de bureau Linux modernes utilisent PolicyKit pour un contrôle encore plus fin des autorisations accordées à une application..

    Par exemple, une application de gestion de logiciel peut uniquement recevoir l'autorisation d'installer un logiciel sur votre système via PolicyKit. L'interface du programme serait exécutée avec les autorisations du compte utilisateur limité; seule la partie du programme où le logiciel installé aurait reçu des autorisations élevées - et cette partie du programme ne pourrait installer que des logiciels..

    Le programme ne disposerait pas d'un accès root complet à l'ensemble de votre système, ce qui pourrait vous protéger si une faille de sécurité se présentait dans l'application. PolicyKit permet également aux comptes d’utilisateurs limités d’apporter certaines modifications à l’administration du système sans obtenir un accès root complet, ce qui facilite son exécution en tant que compte utilisateur restreint et sans tracas..


    Linux vous permettra de vous connecter à un bureau graphique en tant que root - tout comme cela vous permettra de supprimer tous les fichiers de votre disque dur lorsque votre système est en marche ou d'écrire du bruit aléatoire directement sur votre disque dur, en effaçant votre système de fichiers - mais ce n'est pas le cas. C'est pas une bonne idée. Même si vous savez ce que vous faites, le système n'est pas conçu pour être exécuté en tant que root. Vous contournez une grande partie de l'architecture de sécurité qui rend Linux si sécurisé..