web-dev-qa-db-fra.com

Comment passer un utilisateur / mot de passe dans la commande ansible

Je souhaite utiliser Ansible dans le cadre d'un autre logiciel Python. Dans ce logiciel, j'ai une liste d'hôtes avec leur nom d'utilisateur/mot de passe.

Existe-t-il un moyen de transmettre l'utilisateur/la connexion SSH à la commande Ansible ad-hoc ou de l'écrire dans un fichier de manière cryptée?

Ou est-ce que je comprends tout faux, et la seule façon de le faire est avec la certification SSH?

17
Nuvi

Quand vous parlez avec des machines distantes, Ansible suppose par défaut que vous utilisez des clés SSH. Les clés SSH sont encouragées, mais l’authentification par mot de passe peut également être utilisée si nécessaire en fournissant l’option --ask-pass. Si vous utilisez des fonctions Sudo et que Sudo requiert un mot de passe, fournissez également --ask-devenir-pass (auparavant --ask-Sudo-pass, devenu obsolète).

Jamais utilisé la fonctionnalité mais les docs disent que vous pouvez.

20
user5507598

vous pouvez utiliser --extra-vars comme ça:

$ ansible all --inventory=10.0.1.2, -m ping \
    --extra-vars "ansible_user=root ansible_password=yourpassword"
14
liuhao