Contexte
Je sais que la différence entre su -
, sudo su -
et sudo <command>
:
su -
- bascule l'utilisateur vers root, nécessite le mot de passe rootsudo su -
- bascule l'utilisateur vers root, ne nécessite que le mot de passe de l'utilisateur actuelsudo <command>
- accorde un accès root uniquement pour une commande spécifique; requiert uniquement le mot de passe de l'utilisateur actuel
Ma question est de savoir si l'utilisation sudo su -
est ou non une pratique sûre dans un environnement de production.
Quelques idées:
Il semble que le fait d'autoriser
sudo su -
pose un risque pour la sécurité en rendant l'accès au compte root dépendant des mots de passe des utilisateurs individuels. Bien sûr, cela pourrait être atténué en appliquant une politique de mot de passe stricte. Je ne pense pas que cesu -
soit mieux car cela nécessiterait que l'administrateur partage le mot de passe root réel.Permettre aux utilisateurs de basculer complètement vers le compte root rend plus difficile de savoir qui apporte des modifications au système. J'ai vu des cas à mon travail de jour où plusieurs utilisateurs ont
sudo su -
accès. La première chose que les utilisateurs font lorsqu'ils se connectent au système est exécutéesudo su -
, avant de commencer à travailler. Puis, un jour, quelque chose se casse et il n'y a pas de traçabilité pour savoir qui a coururm -rf *
dans le mauvais répertoire.
Des questions
Compte tenu des préoccupations ci-dessus, est-ce jamais une bonne idée de permettre aux utilisateurs d'utiliser sudo su -
ou même pas su -
du tout?
Y a-t-il des raisons pour lesquelles un administrateur configurerait des comptes d'utilisateurs pour sudo su -
ou su -
au lieu de sudo <command>
(à part la paresse)?
Remarque: j'ignore le cas où l'utilisateur exécutant sudo su -
ou su -
l'administrateur doit apporter des modifications au système, lorsque l'accès direct ssh a été désactivé pour l'utilisateur root.
sudo su -
est plutôt idiot carsudo -i
fait essentiellement la même chose, avec moins de frappes.sudo bash
simplement pour éviter une partie de la surcharge de connexion. Cependant, après réflexion, cela n'évitera peut-être pas autant que j'imagine.sudo -s
.Réponses:
Regardons vos cas:
exécutera un / bin / sh en tant qu'utilisateur root en utilisant l'environnement root. Le mot de passe root est nécessaire et la journalisation PEUT être enregistrée en fonction des paramètres syslog (généralement par défaut dans /var/log/auth.log).
exécutera le shell en tant qu'utilisateur root en utilisant l'ensemble actuel de variables d'environnement (à quelques exceptions près, comme cela serait défini dans le fichier sudoers). Le mot de passe est le mot de passe utilisateur source et NON PAS le mot de passe utilisateur root. sudo est généralement connecté.
exécutera un shell (généralement / bin / sh) en tant qu'utilisateur root configurant l'environnement en tant qu'utilisateur root. Cela nécessitera le mot de passe de l'utilisateur source et ce sera généralement enregistré.
Parfois, il est nécessaire d'avoir l'environnement racine sur votre propre environnement, donc su - est une méthode appropriée. N'oubliez pas que sudo enregistrera toujours l'utilisation de la commande shell dans les deux cas.
la source
Non, pas à mon avis. Il n'a aucun avantage pratique par rapport à leur permettre de poursuivre, sauf qu'ils n'ont pas besoin du mot de passe root pour le faire.
Étant donné que je désactive toujours la connexion root, su est nécessaire et dans l'ensemble, rend le serveur plus sécurisé.
la source
L'OP semble fournir beaucoup de bonnes raisons de ne pas permettre / encourager les utilisations générales à exécuter
sudo bash
ousudo su -
depuis les commutateurs à un mode tout-puissant qui les entrailles de ne sont généralement pas connecté. Et ils pourraient oublier qu'ils sont dans ce mode et faire quelque chose ... regrettable.Ergo, il semble plus sûr de limiter la plupart des utilisateurs à l'exécution
sudo on/a/particular/command/
ou à la liste des commandes. De cette façon, chaque commande sudo est enregistrée.Allez-vous rencontrer des exceptions dans la pratique? Sûr. Est-ce que la réaction à de telles exceptions revient à la pratique paresseuse de la non-restriction -
sudo su
probablement pas.la source