GNU/Linux >> Tutoriels Linux >  >> Linux

Ansible :sudo sans mot de passe

Ce n'est pas possible, c'est la configuration de votre serveur. Assurez-vous que sudo est autorisé pour l'utilisateur qu'ansible utilise sans mot de passe.

  1. Pour ce faire, connectez-vous au serveur
  2. Ouvrez le fichier sudoers avec sudo visudo
  3. Assurez-vous d'avoir une ligne comme celle-ci :centos ALL=(ALL) NOPASSWD:ALL
  4. Remplacer centos avec votre utilisateur
  5. Enregistrer le fichier

Vous pouvez essayer depuis le serveur lui-même en exécutant :

sudo -u [yourusername] sudo echo "success"

Si cela fonctionne, cela devrait également fonctionner à partir d'ansible.


Par défaut, ansible exécute sudo avec les drapeaux :-H -S -n devenir racine. Où --non-interactive serait la forme longue correspondante pour l'option -n . Cette option semble faire en sorte que sudo renvoie le message d'erreur, sans tenter de laisser les modules d'authentification faire leur travail.

J'ai réussi à contourner l'erreur de mot de passe en créant un ~/.ansible.cfg contenant les lignes ci-dessous, pour la version ansible la plus pertinente.

ansible 2.4

[defaults]
sudo_flags = --set-home --stdin

ansible 2.9

[sudo_become_plugin]
flags = -H -S

C'était au moins suffisant pour permettre à pam_ssh_agent_auth.so de s'exécuter et de m'authentifier.

Avant la version 2.8, l'exemple ci-dessus fonctionne, plus récent que 2.8 nécessite le deuxième exemple. La documentation de la nouvelle configuration de style se trouve dans le Guide de l'utilisateur Ansible.


Linux
  1. Comment exécuter un programme spécifique en tant que root sans invite de mot de passe ?

  2. Commande Sudo après un long appel de veille sans demander à nouveau le mot de passe Sudo ?

  3. Ssh - Besoin d'un Tty pour exécuter Sudo si je peux Sudo sans mot de passe?

  4. MySQLdump sans mot de passe dans cronjob

  5. Comment passer le mot de passe à su/sudo/ssh sans remplacer le TTY ?

Comment exécuter la commande Sudo sans mot de passe

Comment réinitialiser le mot de passe sudo

Comment exécuter des commandes particulières sans mot de passe Sudo sous Linux

Comment changer le délai d'expiration du mot de passe Sudo sous Linux

Comment exécuter des commandes Sudo sans mot de passe

Comment exécuter les commandes sudo sans mot de passe