Je suis relativement nouveau dans l'administration des serveurs et j'ai vu de nombreux sites recommander d'attribuer des privilèges sudo à un utilisateur créé par l'utilisateur root et lui donner un mot de passe incroyablement long pour améliorer la sécurité.
Si l'utilisateur nouvellement créé peut cependant exécuter les mêmes fonctions qu'un utilisateur root, quel est l'avantage réel de le faire?
Réponses:
Il y a plusieurs avantages à utiliser
sudo
la remise du mot de passe root. Dans aucun ordre particulier:Vous ne donnez pas votre mot de passe root
En règle générale, si quelqu'un quitte votre entreprise et connaît le ou les mots de passe root, vous devez maintenant changer ces mots de passe partout. Avec une bonne gestion de la configuration, c'est une gêne mineure. Sans elle, c'est une énorme corvée.
Vous ne donnez pas les clés du royaume
sudo
vous permet de spécifier une liste restreinte de commandes que les utilisateurs peuvent exécuter, donc si vous décidez qu'Alice n'a besoin que de la capacité d'arrêter et de démarrer Apache, mais Bob a besoin de droits root complets que vous pouvez définir les en conséquence.Vous pouvez gérer les autorisations de manière centralisée et prendre en
sudo
charge la configuration LDAP, ce qui signifie que chaque système de votre entreprise peut consulter un serveur LDAP central pour déterminer qui est autorisé à faire quoi.Besoin d'autoriser (ou de dé-autoriser) quelqu'un? Modifiez la configuration des sudoers dans LDAP et tous vos systèmes sont mis à jour en même temps.
Il y a une piste de vérification
à l'exception des utilisateurs qui sont autorisés à le faire
sudo su -
,sudo sh
ou quelque chose d' équivalent,sudo
produira une piste d'audit dont RAN utilisateur quelles commandes.(Cela produira également une liste des personnes qui se sont donné un shell racine non connecté, de sorte que vous pouvez pointer du doigt vers elles et siffler de désapprobation.)
sudo
est bon pour plus que la racine des concentrés de tout le mondesudo
comme un moyen de faire des choses comme su peruser, mais ce n'est pas tout ce qui est bon pour.Supposons qu'Alice soit responsable d'une version logicielle particulière, mais Bob devrait également pouvoir exécuter le script de génération. Vous pouvez donner à Bob une entrée dans sudoers qui lui permet d'exécuter le script de construction en tant qu'utilisateur d'Alice. (Oui, bien sûr, il existe de bien meilleures façons de traiter ce cas particulier, mais le principe de
Let user A run a program as user B
peut être utile ...).Vous bénéficiez également des mêmes avantages de piste d'audit que ceux mentionnés ci-dessus lorsque vous effectuez cette opération ...
la source
sudo
par rapport àsu
une distinction académique - vous allez devoir sauter à travers un cerceau ou l'autre. L'utilisationsudo
vous offre la possibilité d'exercer le principe du moindre privilège (mon dernier point) là où c'est pratique, et c'est toujours quelque chose à considérer sérieusement.sudo vi
peut:! bash
une fois à l'intérieur de vi.NOEXEC
balise aide dans ce cas.La principale différence est que les utilisateurs s'authentifient à l'
sudo
aide de leur propre mot de passe, alors qu'avecsu
ou connexion root directe le mot de passe root est utilisé.Cela signifie que vous n'avez pas à partager le mot de passe root avec tout le monde et que si vous devez désactiver l'accès root pour un ou deux utilisateurs à l'avenir, vous pouvez simplement le désactiver pour eux, au lieu d'avoir à changer le mot de passe root.
sudo
est également capable de limiter les commandes que chaque utilisateur peut exécuter en tant que root, afin que des utilisateurs spécifiques ne puissent avoir accès qu'aux tâches dont ils ont besoin pour effectuer, s'ils ne nécessitent pas un accès root complet.la source
En plus des réponses données, qui sont valides, n'oubliez pas qu'un utilisateur connecté en tant que root peut potentiellement casser le système à chaque commande. Si vous les forcez à taper sudo avant de faire quelque chose de potentiellement dangereux, au moins vous leur faites savoir qu'ils doivent vérifier deux fois avant d'exécuter une commande particulière.
la source
Oui, du point de vue du contrôle et de la journalisation, sudo est bien meilleur.
Par exemple - si vous poursuivez le seul événement capturé dans les journaux, vous poursuivez. Tout ce qui suit va comme root. Et si vous avez déjà regardé les journaux sous Unix / Linux, vous savez que root fait beaucoup de choses.
Sudo, d'autre part, enregistre à peu près tout en tant qu'utilisateur d'origine.
la source
L'utilisation de sudo rend plus difficile pour un utilisateur malveillant d'accéder à un système. Lorsqu'il y a un compte root déverrouillé, un utilisateur malveillant connaît le nom d'utilisateur du compte qu'elle souhaite pirater avant de commencer. Lorsque le compte root est verrouillé, l'utilisateur doit déterminer le nom d'utilisateur et le mot de passe pour pénétrer dans un système.
la source