Expect pour les rebonds ssh

Aprés un sudo apt-get install expect, voici le contenu du fichier ssh-bound :

#!/usr/bin/expect -f
# des que la chaine de caractère attendu en retour est matché,
# on attend 1 seconde et on envoit notre chaine
set timeout 1
# la 1ere commande qui est executée sur notre machine
# c'est le 1er saut
spawn ssh user@host1
# on "attend" du shell qu'il nous renvoit la chaine "assword"
expect "*?assword :"
# on envoit notre pw, \r pour retour chariot
send -- "MON_SUPER_PASS_EN_CLAIR\r"
# le prompt
expect "*05b\$ "
# 2eme saut
send -- "ssh user@host2\r"
expect "*?assword :"
send -- "MON_SUPER_PASS_EN_CLAIR\r"
expect "*05b\$ "
# 3eme saut#!/usr/bin/expect -f
# des que la chaine de caractère attendu en retour est matché,
# on attend 1 seconde et on envoit notre chaine
set timeout 1
# la 1ere commande qui est executée sur notre machine
# c'est le 1er saut
spawn ssh user@host1
# on "attend" du shell qu'il nous renvoit la chaine "assword"
expect "*?assword :"
# on envoit notre pw, \r pour retour chariot
send -- "MON_SUPER_PASS_EN_CLAIR\r"
# le prompt
expect "*05b\$ "
# 2eme saut
send -- "ssh user@host2\r"
expect "*?assword :"
send -- "MON_SUPER_PASS_EN_CLAIR\r"
expect "*05b\$ "
# 3eme saut
send -- "ssh user@host3\r"
expect "*?assword :"
send -- "MON_SUPER_PASS_EN_CLAIR\r"
expect "*05b\$ "
# expect nous rend la main
interact
send -- "ssh user@host3\r"
expect "*?assword :"
send -- "MON_SUPER_PASS_EN_CLAIR\r"
expect "*05b\$ "
# expect nous rend la main
interact

Source

Autres articles susceptibles de vous intéresser :

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Recent Tweets

Catégories