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 :

Connexion � un switch Cisco en SSH. Net::SSH::Perl? Net::SSH::W32Perl? Net::SSH2?


Sujet :

Modules Perl

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    16
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 16
    Par d�faut Connexion � un switch Cisco en SSH. Net::SSH::Perl? Net::SSH::W32Perl? Net::SSH2?
    Bonjour,

    Je me d�cide � poster ici car je commence � p�ter un plomb sur mon probl�me.

    Je dois faire un script perl qui se connecte en SSH � un switch cisco pour r�cup�rer les configurations (running, startup et vlan.dat).

    D'abord, je tente de faire la connexion et juste passer une commande.
    Je me penche sur le probl�me et je trouve le module Net::SSH:erl, que j'arrive � installer apr�s moults p�rip�ties...
    Avec ce module, j'arrive � me connecter au switch en SSH sans probl�me, mais impossible de passer des commandes, il me met comme erreur : "NetInfTel01: Channel open failure: 1: reason 4:"

    J'essaye donc avec le module Net::SSH::W32Perl, m�me erreur.
    Apr�s des recherches je trouve que c'est parce que Cisco n'accepte qu'un channel que �a ne marche pas... Soites...

    Je vais donc vers le module Net::SSH2, qui ne me fait aucune erreur, mais qui ne me retourne rien non plus si je fais juste un "show version" par exemple... Je ne sais peut-�tre pas m'y prendre pour faire appara�tre le r�sultat, c'est possible aussi...
    Donc je ne sais pas si ce module marche, je pense qu'il arrive � se connecter au switch mais apr�s... myst�re.

    Passe ton tour donc, je me met sur le module Net::SSH::Expect, et l� impossible de le lancer car il me manque un fichier IO::Tty::Constant.



    Ma demande est donc : quelqu'un sait-il par quel moyen se connecter � un switch Cisco en SSH, lui passer une commande et avoir son retour?
    Si �ventuellement quelqu'un sait, est-il possible d'avoir juste quelques lignes de code avec connexion, passage et r�cup�ration de commande ?

    Je vous ai �pargn� tous les codes sources car c'�tait vraiment les codes sources b�ta qui correspondent � chaque module, et de plus ils sont sur un autre ordinateur qui n'a aucun lien avec celui l�... gal�re donc !


    Merci beaucoup beaucoup beaucoup d'avance � celui qui pourra me r�pondre, ou m�me essayer de m'aider ne serait-ce qu'un tout petit peu !

    Thomas

  2. #2
    Membre �m�rite
    Profil pro
    Inscrit en
    Ao�t 2008
    Messages
    505
    D�tails du profil
    Informations personnelles :
    Localisation : France, Puy de D�me (Auvergne)

    Informations forums :
    Inscription : Ao�t 2008
    Messages : 505
    Par d�faut
    Je me connecte � un pix avec �a. Je fait un sh conn. Tu peux essayer, cela dit, le pix utilise du ssh 1, et peut-etre dans ton cas faudra t'il forcer le protocole.

    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
    22
    23
    24
    25
    26
    27
    28
    29
     
    use Net::SSH::Perl;
     
    $mypass_ena="toto";
     
    my $cmd="
    ena
    $mypass_ena
    conf t
    pager  0
    sh conn
    ";
     
    my $host="192.168.56.30";
    my $user="pix";
    my $pass="bidule";
     
     
     
    my $ssh = Net::SSH::Perl->new($host,debug=>true,
    			      options => ["BatchMode yes", "RhostsAuthentication no" ]);
    $ssh->login($user,$pass);
     
     
    my ($stdout, $stderr, $exit) = $ssh->cmd("",$cmd);
     
    print "stdout:$stdout \n";
    print "stderr: $stderr \n";
    print "$exit\n";

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    16
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 16
    Par d�faut
    Merci pour ta r�ponse !

    Malheureusement, j'avais d�j� test� le m�me code, et le probl�me ne vient pas du code en lui m�me qui est bon, mais du fait que je bosse sur un Catalyst, qui apparemment ne peut ouvrir qu'un "channel" SSH.
    Du coup il me connecte, il me passe une commande mais ne me retourne aucun r�sultat et reste bloqu�.

    Voici le log qu'il m'affiche avec le debug :

    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
     
    NetInfTel01: Reading configuration data C:\Documents and Settings\blablablabla/.ssh/config
    NetInfTel01: Reading configuration data /etc/ssh_config
    NetInfTel01: Connecting to 192.168.10.2, port 22.
    NetInfTel01: Remote version string: SSH-1.99-Cisco-1.25
     
    NetInfTel01: Remote protocol version 1.99, remote software version Cisco-1.25
    NetInfTel01: Net::SSH::Perl Version 1.30, protocol version 1.5.
    NetInfTel01: No compat match: Cisco-1.25.
    NetInfTel01: Waiting for server public key
    NetInfTel01: Received server public key (640 bits) and host key (768 bits).
    NetInfTel01: Host '192.168.10.2' is known and matches the host key.
    NetInfTel01: Encryption type: DES3
    NetInfTel01: Send encrypted session key.
    NetInfTel01: Received encryption confirmation.
    NetInfTel01: Trying password authentification.
    NetInfTel01: Sending command:
    NetInfTel01: Entering interactive session.
    Et apr�s le "Entering interactive session", plus rien... �a bloque, je ne r�cup�re plus la main � moins de faire un Ctrl+C.

    Tous les morceaux de code que j'ai essay� sont bons, mais c'est le type de mat�riel et sa sp�cificit� � n'accepter qu'un seul "channel" SSH qui fait tout bloquer...

  4. #4
    Membre �m�rite
    Profil pro
    Inscrit en
    Ao�t 2008
    Messages
    505
    D�tails du profil
    Informations personnelles :
    Localisation : France, Puy de D�me (Auvergne)

    Informations forums :
    Inscription : Ao�t 2008
    Messages : 505
    Par d�faut
    Il y a surement un probl�me, mais je ne suis pas sur qu'il s'agisse d'un probl�me de channel. Le channel n'est utilis� que dans la version 2 du protocole ssh. D'ailleurs, une des m�thode que tu peux utiliser est de fixer la version du protocole.
    C'est � mon avis la premi�re chose � tester.

    La deuxieme, c'est de savoir quelle est la version de Net::SSH:erl install�e. Dans la version 1.31, un bug assez semblable a �t� introduit par le nouveau mainteneur. Il a corrig� �a dans la 1.33 (encore en unauthorized release).


    http://search.cpan.org/~turnstep/Net...et/SSH/Perl.pm

    Si tu es en 1.30 en revanche, ce n'est probablement pas �a.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    16
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 16
    Par d�faut
    J'ai r�cup�r� un script sur le Net, et en le modifiant � ma sauce selon mes besoins j'ai r�ussi � faire marcher la chose pour du SSH1 sur un Catalyst Cisco. Mais la m�thode m'a l'air tordue quand m�me !

    Le script : http://www.cpan.org/authors/id/R/RG/...CCS_sub_SSH.pl

    Par contre vraiment impossible � faire marcher quelque chose en SSH2, le probl�me c'est que je ne peux pas forcer tous mes �quipements du parc en SSH1, et certains sont forc�s en SSH2...

    Pour la version de Net-SSH-Perl, j'ai effectivement la 1.31, je vais tenter d'installer la version 1.33, mais crois-tu que �a r�soudra le probl�me en SSH2?

    Merci beaucoup pour ton aide en tout cas!

    Thomas

  6. #6
    Membre �m�rite
    Profil pro
    Inscrit en
    Ao�t 2008
    Messages
    505
    D�tails du profil
    Informations personnelles :
    Localisation : France, Puy de D�me (Auvergne)

    Informations forums :
    Inscription : Ao�t 2008
    Messages : 505
    Par d�faut
    Oui, dans le script, il force le protocole en version 1. C'est ce qui fait que �a marche, je pense. Sur les pix, ce qui m'avait le plus surpris, c'est que je n'arrivait pas � faire

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    $ssh->cmd("ma commande");
    je devais faire
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    $ssh->cmd("","ma commande");
    Ce qui est bizarre...

    Pour la version 2, oui, je pense qu'il faut que tu passes en version 1.33. D'apr�s ce que j'ai pu lire, les patches r�glaient le probl�me...

    A+

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    16
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 16
    Par d�faut
    Moi c'est l'inverse, avec $ssh->cmd("","ma commande"), il bloque tout de suite sur "Entering interactive session".

    Par contre quand je fais $ssh->cmd("ma commande"), il me fait une commande puis bloque sur le "Entering interactive session" � la 2eme commande...


    J'ai install� la version 1.33 et aucun changement au niveau du SSH2.
    Il se connecte bien comme avant, par contre au passage d'une commande via $ssh->cmd("ma commande"), il m'indique toujours :
    "NetInfTel01: Channel open failure: 1: reason 4:"

    Pareil si je transforme le script que j'ai indiqu� dans mon post pr�c�dent en le passant en protocole 2 (et en modifiant tout ce qui est n�cessaire au niveau du register_handler comme indiqu� dans le cpan de Net::SSH:erl). Il se connecte toujours bien mais ne passe aucune commande au switch...

Discussions similaires

  1. connexion perl et ssh
    Par rapdoc dans le forum Programmation et administration syst�me
    R�ponses: 3
    Dernier message: 05/06/2014, 11h24
  2. [PowerShell] connexion � un switch cisco via powershell
    Par phinestra dans le forum Scripts/Batch
    R�ponses: 1
    Dernier message: 08/10/2012, 11h18
  3. Probl�me connexion en ssh sur Switch CISCO
    Par Maykin dans le forum Modules
    R�ponses: 2
    Dernier message: 18/04/2011, 12h00
  4. Browser ssh switch cisco 2950
    Par Yvan76 dans le forum Hardware
    R�ponses: 15
    Dernier message: 12/08/2009, 11h11
  5. Administration switch cisco
    Par zorian dans le forum D�veloppement
    R�ponses: 9
    Dernier message: 24/02/2004, 20h28

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