Journal Ma connection telnet

Posté par  .
Étiquettes : aucune
0
6
avr.
2004
Bonjour journal

Je suis en train d'écrire un script perl, afin de faire un back-up des switch et routeurs de la boite, via telnet et tftp.
J'utilise Net::Telnet, ça fonctionne pas mal.
Malheureusement, c'était trop beau. Je suis arrivé sur le cas d'un switch, sur lequel quand on se connecte on doit taper Ctrl-Y pour avoir les champs login/mot de passe.
Y'a-t-il une solution pour que j'envoie Ctrl-Y, avant d'envoyer le login ?
J'ai essayé

$t = new Net::Telnet (Timeout => 10);
$t->open($dest);
@lines = $t->cmd("^Y");
$t->login("login", "password");
[...]

Sans succès.

Quelqu'un a déja vu le problème ?

(Les équipements, c'est des Nortel. Passport 8600, Baystack 450/470, et quelques Cisco)
  • # Re: Ma connection telnet

    Posté par  . Évalué à 1.

    Utilise-tu solaris ?

    Si oui il y a un fichier, à la racine du compte utilisateur, ".netrc", qui sert à renseigner les couples login/pw pour toutes les machines auxquelles tu veux te connecter. Marche pour ftp, moins sûr pour telnet.

    Les lignes doivent être de la forme :
    machine remote_machine_name login remote_username password string

    J'avais fait un truc semblable en shell pour Alcatel il y à 3 ans...

    En cherchant un peu, j'ai trouvé ça :
    http://search.cpan.org/~gbarr/libnet-1.18/Net/Netrc.pm(...)
  • # Re: Ma connection telnet

    Posté par  . Évalué à 2.

    heuhhh: newlogin = CTRL+Y+login
    oui je sais c'est con...

    mais, comme le dit un vieux proverbe birman: "l'homme intelligent doit savoir son cerveau reptilien assumer et la solution conne choisir façe à l'adversité de la vie, en tout cas quand elle marche, sinon reflechir plus il doit"
    • [^] # Re: Ma connection telnet

      Posté par  . Évalué à 1.

      Alors là, je ne comprend pas.

      Pour les tables ascii, merci des tuyaux.
      Malheureusement, je fais du sur-place, depuis 2h :(.

      Je ne vois pas trop comment utiliser ces codes ascii.
      • [^] # Re: Ma connection telnet

        Posté par  . Évalué à 1.

        Je vais pas faire ton boulot non plus (moi j'en cherche) mais documente toi sur la fonction cmd, d'après ce que j'ai vite vu tu passer en mode "brute".

        Il y a peut-être une autre fonction plus adaptée pour envoyer un caractère avant le login. cmd à l'air d'être plus pour passer une commande après le login.

        Courage tu vas trouver !
  • # Re: Ma connection telnet

    Posté par  (site web personnel) . Évalué à 1.

    tu ouvres ton script avec un editeur genre vi (je sais pas si ca marche sous emacs) et tu tapes C-v C-y
    Ca te met le caractere Ctrl+y.

    De meme, pour les fichiers windows avec des retourns chariots (des C-M) on peut faire une regexp :%s/C-VC-M//g

    Bref, j espere que ca va t aider.
    • [^] # Re: Ma connection telnet

      Posté par  . Évalué à 1.

      Sous vim, Ctrl-Y, ça recopie le caractère de la ligne précédente, situé à la même position.
      • [^] # Re: Ma connection telnet

        Posté par  . Évalué à 1.

        oui, mais ctrl-v ça a une utilité dans vim, je te laisse regarder.

        La gent féminine, pas la "gente", pas de "e" ! La gent féminine ! Et ça se prononce comme "gens". Pas "jante".

  • # Re: Ma connection telnet

    Posté par  (site web personnel) . Évalué à 1.

    pour cisco
    Net::Telnet::Cisco sur cpan
    peut-être utilisable pour nortel ..
    • [^] # Re: Ma connection telnet

      Posté par  . Évalué à 1.

      Merci à tous pour vos réponses.

      je vais m'en servir, mais aussi regarder du coté de snmp, opur récupérer des conf, apperemment ça fonctionne.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.