(Sur Centos via Docker)
Je sais que je peux ajouter un sudoer en utilisant visudo
. Est-il possible d’ajouter un utilisateur à la liste sudoer directement à partir de la ligne de commande, afin que je n’aie pas à le faire de manière interactive?
Je demande parce que j'essaie de provisionner mon conteneur Docker centos qui ne joue pas avec l'interactivité.
visudo
. Je crois qu'ils voulaient dire "interactif" dans le sens d'utiliser un éditeur; ainsi, il s’agit d’une opération "non interactive" car cette approche ne nécessite pas d’éditeur. (Évidemment, une personne devra quand même taper les noms d'utilisateurs d'une manière ou d'une autre , donc il n'y a pas moyen de contourner cette partie.) En ce qui concerne la raison de son acceptation, eh bien, je suppose que cela doit avoir suffisamment répondu à la question du PO pour qu'il soit satisfait.J'ai eu un problème similaire en essayant de faire en sorte que mon conteneur Docker permette aux scripts Jenkins d'utiliser des commandes sudo sans demander de mot de passe.
Ceci a été résolu via le fichier Dockerfile:
la source
Pour pouvoir le faire, vous devez vous assurer que vous avez la ligne suivante dans votre
sudoers
fichier:Vous pouvez personnaliser la ligne ci-dessus pour modifier les autorisations comme s'il
%sudo
s'agissait d'un utilisateur. Cette ligne permettra à tous les utilisateurs dusudo
groupe d'utilisersudo
.Maintenant, pour permettre l'
<username>
utilisationsudo
, vous pouvez simplement faire enusermod -a -G sudo <username>
tant que root, ce qui ajoute<username>
ausudo
groupe.la source
Un arrangement commun pour ajouter des fichiers nécessitant un accès privilégié est à utiliser
tee
. Bien entendu, son objectif principal est d'écrire à deux endroits, mais vous pouvez en ignorer un et utiliser l'effet secondaire quisudo tee -a
vous donne l'ajout privilégié.Donc, quelque chose comme
Je suis d'accord avec les commentaires pour ajouter l'utilisateur au
sudoers
groupe pour résoudre ce problème particulier.la source
Vous pouvez commencer par activer le groupe 'wheel' dans sudoers, puis vous devez uniquement ajouter des utilisateurs à ce groupe. Évite de provoquer la convolution du fichier sudoers.
la source
Au moment de la création de l'utilisateur, vous pouvez spécifier l'utilisateur auquel une personne appartient au groupe sudo de la manière suivante:
S'il s'agit déjà d'un utilisateur, vous pouvez l'ajouter à un nouveau groupe de la manière suivante:
Voir cette réponse si vous voulez savoir pourquoi je préfère
gpasswd
àusermod
.la source