Normalmente, è possibile eseguire l'ssh su una VM gestita da Vagrant con vagrant ssh
. Ci sono due opzioni:SSH in una macchina Vagrant con Ansible
- è possibile utilizzare un
insecure_private_key
generato da Vagrant a autenticazione. - utilizzare la propria chiave privata - a condizione che
config.ssh.forward_agent
è impostato sutrue
, e la VM è configurate correttamente
Io uso la seconda opzione. S quando corro vagrant ssh
, I ssh nella macchina con la mia chiave privata personalizzata.
Ora ho bisogno di lasciare Ansible SSH nella mia macchina Vagrant e non voglio usare Vagrantfile
per questo.
Così ho eseguito:
ansible-playbook -i hosts/development --private-key=~/.ssh/id_rsa -u vagrant dev.yml
E ho questo errore riscontrato:
fatal: [192.168.50.5] => SSH Error: Permission denied (publickey). while connecting to 192.168.50.5:22
Il file hosts/inventory
detiene solo l'IP del mio Vagrant VM (192.168.50.5).
Non so perché Ansible non può ssh nella VM. Sta usando esattamente lo stesso utente (vagrant
) e la chiave (id_rsa
) come quando si esegue vagrant ssh
.
Tuttavia, non ci sono problemi con lo vagrant ssh
mentre il precedente non funzionava.
Qualsiasi suggerimento sarebbe molto apprezzato.
sei sicuro che la porta è 22 e non 2222? – Vor
ho ricercato alcune possibilità dopo la mia risposta. Credo che tu non abbia configurato il tuo pubkey nei tasti_autentici dell'utente vm vagabondo. Non consiglio di usare le tue chiavi personali per vagabondare a meno che non sia assolutamente necessario. –