es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Solución alternativa de Ansible en macOS con el programa sshpass.

Estoy utilizando Homebrew para instalar Ansible en macOS Catalina (anteriormente lo instalé a través de pip según la documentación). El problema es que cuando intento usar un playbook de prueba, recibo el siguiente error:

target1 | ¡FALLÓ! => {
“msg”: “para usar el tipo de conexión ‘ssh’ con contraseñas, debe instalar el programa sshpass”
}

El problema es que sshpass no está disponible fácilmente en macOS a través de Homebrew, etc. He encontrado un par de opciones de instalación para esto, pero intenté hacer los siguientes cambios antes de instalar esto:

export ANSIBLE_HOST_KEY_CHECKING=False

host_key_checking=false dentro del ansible.cfg en el mismo directorio

Ninguno de los cambios anteriores funcionó, ¿debo simplemente instalar sshpass, o hay otra solución? ¿O debería simplemente usar VirtualBox y llamarlo un día?

Para referencia, este es el siguiente playbook, es una prueba simple de ping que estoy intentando usar en una Raspberry Pi local a la que ya he podido conectarme SSH:


name: Prueba de conectividad a servidores de destino
hosts: all
tasks:
– name: Prueba de ping
ping:

El archivo inventory.txt se ve así:

target1 ansible_host=192.168.x.x ansible_ssh_pass=<contraseña>

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema está relacionado con el tipo de conexión “ssh” con contraseñas, lo cual requiere la instalación del programa “sshpass”. Como sshpass no está disponible en macOS a través de homebrew, etc., hay un par de opciones:

    • Instalar sshpass en macOS: Esto solucionaría el problema y permitiría el uso de contraseñas para las conexiones ssh.
    • Usar claves SSH en lugar de contraseñas: Si es posible, generar y utilizar claves SSH en lugar de contraseñas sería un enfoque más seguro y recomendado.
    • Utilizar un tipo de conexión diferente (por ejemplo, conexión local): Si los servidores de destino son locales, utilizar un tipo de conexión diferente a “ssh” (por ejemplo, conexión local) podría ser una solución temporal.

    En cuanto a los cambios realizados en ANSIBLE_HOST_KEY_CHECKING y ansible.cfg, no están relacionados con el problema en cuestión y no deberían afectar el tipo de conexión.

Comments are closed.