IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modules Perl Discussion :

Pas de retour du routeur, script perl


Sujet :

Modules Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2015
    Messages : 34
    Par défaut Pas de retour du routeur, script perl
    Bonjour,

    J'essaie d'établir une liaison en SSH1 avec un vieux switch HP. Le switch est fonctionnel et je peux m'y connecter et exécuter des commandes via putty. J'ai testé un script en SSH2 qui n'avait pas de retour non plus d'un autre switch HP mais fonctionnait sous Windows et Linux dans le prompt. Je ne peux pas tester SSH1 dans le prompt de Windows ici car SSH1 j'ai une erreur de version ssh "No matching cipher found: [...]" mais je présume que ça fonctionne. Je présume donc que le problème vient du router ou alors de l'utilisation de mon script par rapport au router ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    use strict;
    use warnings;
    use Net::SSH::Perl;
     
    #log, password, ip
    #[...]
     
    my $cmd = "show version";
     
    print "Connexion SSH \n";
    my $ssh = Net::SSH::Perl->new($host);
    print "Connexion effectuee, identification en cours ...\n";
    $ssh->login($username, $password) or die "Impossible de s'authentifier";
     
    print "Execution de ".$cmd."\n";
    my ($stdout) = $ssh->cmd($cmd) or die "Impossible d'executer la commande \n";
    #A partir d'ici il ne se passe plus rien, le print d'après ne s'effectue pas et je n'ai pas d'erreur.
     
    print $stdout;
    print "Fin du programme \n";
    J'ai utilisé wiresharck pour voir un peu ce qui transitait et voici le résultat
    http://image.noelshack.com/fichiers/...oting-ssh1.png
    Comme on peut voir, après la connexion il y a bien les données qui sont envoyées au switch mais après je ne reçois rien, j'oublie quelque chose dans mon script pour que ça fonctionne sur un switch ?

    Je précise que je suis débutant en Perl, j'ai découvert ce langage il y a quelques jours. Merci de m'avoir lu.

  2. #2
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2015
    Messages : 34
    Par défaut
    en utilisant le mode debug j'ai pu avoir ce retour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     Connecting to 10.*.*.*, port 22.
     Remote version string: SSH-1.5-OpenSSH_2.9p1
     
     Remote protocol version 1.5, remote software version OpenSSH_2.9p1
     Net::SSH::Perl Version 1.42, protocol version 1.5.
     No compat match: OpenSSH_2.9p1.
     Waiting for server public key.
     Received server public key (512 bits) and host key (896 bits).
     Host '10.*.*.*' is known and matches the host key.
     Encryption type: DES3
     Sent encrypted session key.
     Received encryption confirmation.
     Trying password authentication.
     Sending command: show version
     Entering interactive session.
    J'imagine que c'est anormal le "Sending command" avant le "Entering interactive session" ? Après le script ne se finit pas, le processus perl continue à tourner indéfiniment.

  3. #3
    Membre Expert Avatar de dmganges
    Homme Profil pro
    Retraité. Ne recherche pas un emploi.
    Inscrit en
    Septembre 2011
    Messages
    1 442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Retraité. Ne recherche pas un emploi.
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2011
    Messages : 1 442
    Par défaut
    Bonjour,
    Je ne connais pas Net::SSH:erl et j'ai des pb pour l'installer... mais par curiosité... et rien pour tester
    Je ne te serai donc pas d'un grand secours.

    As-tu vu cette discussion
    Notamment en #6 & #7

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2015
    Messages : 34
    Par défaut
    J'ai eu beaucoup de mal à l'installer aussi, ne sachant pas comment faire. Je ferai un petit tuto youtube si j'ai le temps un jour ^^ Sinon merci pour ton intervention, j'étais déjà tombé sur cette "solution" mais je ne l'avais pas appliquée je ne sais plus pourquoi. Je viens de le faire et j'ai l'erreur suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Received disconnect message: Remote command execution not supported.
     at C:/strawberry/perl/site/lib/Net/SSH/Perl/SSH1.pm line 397
    Je ne sais pas si c'est la syntaxe avec "" qui ne passe pas ou si c'est tout simplement le switch qui refuse la commande à distance. Pourtant j'ai deux switchs, un vieux un neuf (HP) et aucun ne veut.

  5. #5
    Membre Expert Avatar de dmganges
    Homme Profil pro
    Retraité. Ne recherche pas un emploi.
    Inscrit en
    Septembre 2011
    Messages
    1 442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Retraité. Ne recherche pas un emploi.
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2011
    Messages : 1 442
    Par défaut
    Ben les messages ne sont pas plus clairs pour moi !

    Mais le message est différent...
    On peut imaginer que les switchs ont tenté qqc de plus... sans succès

    As-tu tenté d'autres commandes ?

    et d'autres syntaxes qu'avec "" & " "
    déjà en plaçant celles-ci après la cde

    et en essayant également des "\n" avant et/ou après...

    c'était ma première idée quand j'ai vu ton message le premier jour, mais je n'ai pas osé la proposer tellement elle me semblait triviale...

    Mais là, j'ai l'impression que c'est un pb de construction de la commande...
    ATTENTION, ça fait bientôt 15 ans que je ne pratique plus professionnellement...

    [Edit 09:50]
    Je n'avais pas lu toute l'erreur retournée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    at C:/strawberry/perl/site/lib/Net/SSH/Perl/SSH1.pm line 397
    indique plutôt que la suntaxe "",cde est incorrecte... pour le module.pm

    essaie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my $cmd = "show version\n";
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my $cmd = "\nshow version";
    et même :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my $cmd = "\nshow version\n";
    il y aura peut-être des msg erreur différents...

    [10:06] au fait ton lien http://image.noelshack.com/fichiers/...oting-ssh1.png
    est mort
    Ben non !!!????

    lorsque je clique sur le tien dans #1 il est mort
    mais sur la copie, dans celui-ci il est OK

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2015
    Messages : 34
    Par défaut
    J'ai plus ou moins essayé ce que tu m'as dit sans succès. Je suis presque sûr que ma syntaxe de départ est bonne et que l'autre n'est pas reconnue par SSH:erl car l'erreur est dans un fichier perl du module.

    Et j'ai résolu le problème du lien, une erreur de copier coller avec un "http" en trop ^^

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. perl ne s'arrete pas a la fin du script
    Par Zwiter dans le forum Langage
    Réponses: 0
    Dernier message: 11/11/2010, 18h07
  2. script PERL sur Routeur Cisco
    Par georges86 dans le forum Programmation et administration système
    Réponses: 4
    Dernier message: 29/07/2010, 14h20
  3. [Système] Appel script perl, pas de création de fichier
    Par trollanfer dans le forum Langage
    Réponses: 2
    Dernier message: 11/12/2008, 22h08
  4. script perl dans script perl et retour derreur..
    Par kiza dans le forum Langage
    Réponses: 7
    Dernier message: 02/12/2005, 15h36
  5. Réponses: 2
    Dernier message: 11/07/2002, 08h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo