Quelle est la meilleure façon ou d'une méthode pour automatiser l'ajout d'un utilisateur à un fichier frais sudoers?

StackOverflow https://stackoverflow.com/questions/5347489

  •  27-10-2019
  •  | 
  •  

Question

, j'ai adduser'ed micronxd. J'ai passwd'd micronxd. maintenant je veux faire micronxd un utilisateur sudo.

Je suis en train d'emballer autant de ce processus dans un script shell possible. Si possible, la solution pourrait impliquer sed'ing le fichier sudoers? Je voudrais d'avoir une idée très forte sur cette bestiale petite pépite (ETD).

Était-ce utile?

La solution

Le fichier sudoers devrait vraiment seulement être édité avec visudo(8).

Cela dit, peut-être vous devriez juste ajouter micronxd au groupe wheel lors de l'ajout de l'utilisateur micronxd, (voir option adduser(8) --add_extra_groups) puis ajoutez cette ligne à sudoers (via visudo(8) :):

%wheel ALL=(ALL) ALL

Maintenant, chaque utilisateur que vous créez avec le groupe primaire ou un groupe supplémentaire de wheel obtient un accès sudo automatiquement. Vous ne pouvez jamais besoin de modifier à nouveau le fichier sudoers.

(Notez que vous pouvez facilement ajouter quelqu'un que vous voulez le groupe wheel;.. vigr(8), trouver le groupe wheel, et ajouter leur nom de connexion à la ligne Utilisez des virgules pour les noms d'utilisateur séparés)

Autres conseils

OK OK OK! Je l'ai eu tout à fait. Cela peut être un peu exagéré, mais je ne suis pas sûr si les fichiers sudoers sont semblables dans diff distros.

Je trouve la documentation sur le tampon de maintien pour sed ici: http://anaturb.net/sed.htm

et sur la commande x pour sed ici: http://www.kingcomputerservices.com/unix_101/hands_off_editing_with_sed_part_2.htm

et je suis venu avec ceci: sed -e '/^root/{h;}' -e 'x' -e 's/root/micronxd/' -e 'x' -e '/^root/G' -e 'wsudoers' sudoers

Voici la répartition des 6 étapes:

1. / ^ root / {h;}

trouve lignes non à partir de root , et remplace le tampon de maintien avec elle.

  • tampon sed régulier: [l'ensemble du fichier sudoers]
  • un tampon contenant: root ALL = (ALL) ALL

2. 'x'

swap le tampon de maintien à l'ordinaire « à sed'd » tampon.

  • tampon sed régulier: root ALL = (ALL) ALL
  • buffer contenant: [l'ensemble du fichier sudoers]

3. s / root / micronxd / '

remplace la racine avec micronxd

  • tampon sed régulier: micronxd ALL = (ALL) ALL
  • buffer contenant: [l'ensemble du fichier sudoers]

4. 'x'

swaps le tampon de maintien avec le régulier "à sed'd" tampon, encore une fois.

  • tampon sed régulier: [l'ensemble du fichier sudoers]
  • un tampon contenant: micronxd ALL = (ALL) ALL

5. / ^ root / G '

G ajoute le tampon de maintien après la mise en correspondance de la ligne ^ root .

  • sed tampon ordinaire (seulement les bits correspondants):

## Permettre racine ALL = (ALL) ALL pour exécuter toutes les commandes partout
root ALL = (ALL) ALL
micronxd ALL = (ALL) ALL

  • un tampon contenant: micronxd ALL = (ALL) ALL

6. wsudoers

écrit le dos tampon sed régulier sudoers

Je suis sûr qu'il ya une meilleure façon, mais je suis en train d'obtenir le coup de Sed. De plus, je ne sais pas si user MACHINE=COMMANDS ???? est la syntaxe pour tous les systèmes Linux, ou tout simplement fedora (qui est ce que je traite).

Quoi qu'il en soit, je suis heureux de voir d'autres façons (en particulier de meilleures façons).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top