Question

I have the vagrant virtual machine running.

I can ssh into it using ssh vagrant@192.168.0.28 then it ask me the pass phrase for the private key , which I can enter and then it logs me in.

but if I use:

ansible all -m ping

then I get this:

192.168.0.28 | FAILED => FAILED: ssh moor@192.168.0.28:22 : Private key file is encrypted
To connect as a different user, use -u <username>.

How can I enter pass phrase in ansible?

I tried ansible -k but it says authentication failed.

Était-ce utile?

La solution

Try using ssh as the transport. Generally, Ansible uses paramiko which is not as friendly for interactive sessions:

ansible all -c ssh -m ping

If that doesn't work, I didn't see anything on running Ansible with an ssh key pass phrase on the documentation or in the code, so you might have to remove it with something like this:

openssl rsa -in private_key_with_pass_phrase -out private_key_without_pass_phrase

Autres conseils

i have tried

cd ~/.ssh/
openssl rsa -in id_rsa -out id_rsa_without_pass_phrase

and got error

unable to load Private Key
routines:get_name:no start line:../crypto/pem/pem_lib.c:745:Expecting: ANY PRIVATE KEY

solution was to run this command:

cd ~/.ssh/
ssh-keygen -p -f id_rsa -m PEM
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top