[PERL] script perl avec ssh ss echange de clé
manu_ch44
Messages postés
6
Date d'inscription
Statut
Membre
Dernière intervention
-
-
-
Bonjour,
Sous UNIX:
Je voudrais écrire un script perl qui se connecte sur un router en ssh.
je ne peux utiliser que use Net::SSH qw(ssh_cmd ssh issh sshopen2 sshopen3); parmi les librairies SSH.
lorsque j'utilise:
1) ssh_cmd:
print "Connecting to MAMACHINE01$IP ..........\n";
ssh_cmd("user\@$IP", "$cmd");
j'obtiens:
Connecting to 10.10.10.14 ..........
Permission denied (publickey,password,keyboard-interactive).
=> Normal, car je n'ai pas échangé les clés, chose que je ne peux pas faire.
2)issh:
print "Connecting to MAMACHINE01$IP ..........\n";
issh ("user\@$IP", "$cmd") ;
j'obtiens:
Connecting to 10.10.10.14 ..........
ssh user@10.10.10.14
Proceed [y/N]:y
user@10.10.10.14's password:xxxxxx
MAMACHINE01>
=> Dans ce cas, c'est à moi de taper y puis le mot de passe, alors que j'aurais voulu que ce soit le script qui le fasse
3)sshopen2 et sshopen3:
j'ai essayé mais toujours pas réussi.
=> une idée ?
Merci d'avance pour votre aide
Manu
Sous UNIX:
Je voudrais écrire un script perl qui se connecte sur un router en ssh.
je ne peux utiliser que use Net::SSH qw(ssh_cmd ssh issh sshopen2 sshopen3); parmi les librairies SSH.
lorsque j'utilise:
1) ssh_cmd:
print "Connecting to MAMACHINE01$IP ..........\n";
ssh_cmd("user\@$IP", "$cmd");
j'obtiens:
Connecting to 10.10.10.14 ..........
Permission denied (publickey,password,keyboard-interactive).
=> Normal, car je n'ai pas échangé les clés, chose que je ne peux pas faire.
2)issh:
print "Connecting to MAMACHINE01$IP ..........\n";
issh ("user\@$IP", "$cmd") ;
j'obtiens:
Connecting to 10.10.10.14 ..........
ssh user@10.10.10.14
Proceed [y/N]:y
user@10.10.10.14's password:xxxxxx
MAMACHINE01>
=> Dans ce cas, c'est à moi de taper y puis le mot de passe, alors que j'aurais voulu que ce soit le script qui le fasse
3)sshopen2 et sshopen3:
j'ai essayé mais toujours pas réussi.
=> une idée ?
Merci d'avance pour votre aide
Manu
A voir également:
- [PERL] script perl avec ssh ss echange de clé
- Clé usb non détectée - Guide
- Clé windows 8 - Guide
- Formater clé usb - Guide
- Script vidéo youtube - Guide
- Clé usb - Accueil - Stockage
3 réponses
Salut manu_ch44,
La réponse à ta question est là : https://metacpan.org/pod/release/IVAN/Net-SSH-0.09/SSH.pm
Je cite :
Donc : https://metacpan.org/pod/release/BNEGRAO/Net-SSH-Expect-1.09/lib/Net/SSH/Expect.pod
Dal
La réponse à ta question est là : https://metacpan.org/pod/release/IVAN/Net-SSH-0.09/SSH.pm
Je cite :
FREQUENTLY ASKED QUESTIONS ^ Q: How do you supply a password to connect with ssh within a perl script using the Net::SSH module? A: You don't (at least not with this module). Use RSA or DSA keys. See the quick help in the next section and the ssh-keygen(1) manpage. A #2: See Net::SSH::Expect instead.
Donc : https://metacpan.org/pod/release/BNEGRAO/Net-SSH-Expect-1.09/lib/Net/SSH/Expect.pod
Dal
Merci pour vos réponses.
Mais mon systèmes est fait de cette façon.
Il va falloir que j'ouvre la librairie pour envoyer le mot de passe et là ....
Je ne peux pas installer la lib :Net::SSH::Expect
Si vous avez des idées, je suis preneur.
Merci
Manu
Mais mon systèmes est fait de cette façon.
Il va falloir que j'ouvre la librairie pour envoyer le mot de passe et là ....
Je ne peux pas installer la lib :Net::SSH::Expect
Si vous avez des idées, je suis preneur.
Merci
Manu
Salut manu_ch44,
Pourquoi ne peux-tu pas installer le module Perl Net::SSH::Expect (ce n'est pas une librairie, c'est un module Perl) ? Est-ce en raison de restrictions de "ton système", ou est-ce parce que tu as un message d'erreur en utilisant CPAN, ou que tu ne sais pas comment installer un module Perl ?
Autrement, si expect est déjà installé dans ton système :
Tu peux créer un script expect.
Vois un exemple ici : https://forums.commentcamarche.net/forum/affich-24228280-script-expect-pour-recuperer-la-configuration
C'est un exemple pour Telnet. Adapte le à tes besoins.
Dal
Pourquoi ne peux-tu pas installer le module Perl Net::SSH::Expect (ce n'est pas une librairie, c'est un module Perl) ? Est-ce en raison de restrictions de "ton système", ou est-ce parce que tu as un message d'erreur en utilisant CPAN, ou que tu ne sais pas comment installer un module Perl ?
Autrement, si expect est déjà installé dans ton système :
$ whereis expect expect: /usr/bin/expect
Tu peux créer un script expect.
Vois un exemple ici : https://forums.commentcamarche.net/forum/affich-24228280-script-expect-pour-recuperer-la-configuration
C'est un exemple pour Telnet. Adapte le à tes besoins.
Dal