SSH login script

Bonjour,

Je voudrais à l'aide d'un SSH script me connecter sur un autre pc qui tourne avec linux.
Avec le script suivant, j'ai la connexion mais il me demande un mot de pass, ce que je ne voudrais pas.

set username "alberto123"
set password "abc12345"
set hostname "172.16.31.9"

ssh $username@$hostname

expect {
"Are you sure you want to continue connecting (yes/no)? " {
send -- "yes\r"
expect "*?assword:*" {
send -- "$password\r"
send -- "\r"
}
}
"*?assword:*" {
send -- "$password\r"
send -- "\r"
}
}

expect eof

Merci de votre aide
Configuration: Windows XP Internet Explorer 7.0

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    Il serait bien plus logique d'utiliser des clés ssh. De plus ça éviterait d'avoir un mot de passe en clair, et la validité du script persistera si le mot de passe est changé.
    1. Modérateur
      Salut,

      Il ne manquerait pas le "spawn" ???
      spawn ssh $username@$hostname
      
      Et le shebang en début de script :
      #! /usr/bin/expect -f
      ???
      1. Merci,

        comment utiliser des clés ssh. ?

        mersi d'avance
        1. Modérateur
          Ça marche alors ?

          Pour les clés SSH, voir ici ;-))