He automatizado el inicio de sesión SSH en el servidor utilizando el siguiente script:
#!/usr/bin/expect
set timeout 60
set IPaddress "xxxx"
set Username "xxxx"
set Password "xxxxxx"
spawn ssh -o "StrictHostKeyChecking no" $Username@$IPaddress
expect "*assword: "
send "$Password\r"
interact
exit
Ahora tengo un escenario, déjame decirte que tengo A, B y C. A es el servidor local, y B y C son servidores remotos. Solo utilizando la red privada de B puedo SSH en el servidor C. Puedo acceder a B desde A y estoy tratando de automatizar SSH a C desde el servidor A usando scripts.
- No puedo usar la autenticación de la clave ssh :(
linux
python
automation
shell-script
bash-scripting
Techflavourz
fuente
fuente
Respuestas:
Dibuje un pequeño diagrama la próxima vez :-) Según tengo entendido, necesita usar un host intermedio para conectarse a un servidor remoto. La máquina intermedia se llama un host de salto. Nunca lo he hecho yo mismo pero conozco el concepto.
Tal vez usted podría comenzar con esta página de la Libro de cocina de OpenSSH
También intente usar la autenticación basada en clave para el inicio de sesión automático, si no puede evitarlo en primer lugar. Guardar las contraseñas en texto claro es muy peligroso.
fuente