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

Python Discussion :

[telnetlib] Problème de connexion telnet


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2015
    Messages : 151
    Par défaut [telnetlib] Problème de connexion telnet
    Bonjour,

    Je suis en ce moment en train d'essayer de me connecter sur un serveur en telnet pour effectuer des opérations dessus. Ne pouvant pas faire cela directement dans des fichiers batchs, j'ai décidé de me tourner vers le python. J'ai donc regardé du coté du module telnetlib en m'aidant de l'exemple sur la documentation ( http://docs.python.org/2/library/tel...dule-telnetlib ). Le problème c'est qu'au bout d'un moment le programme me retourne une erreur alors que la connexion est possible depuis un outil de connexion telnet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Traceback (most recent call last):
      File "C:\Users\Hichem\Desktop\Client.py", line 18, in <module>
        tn.read_until("Password: ")
      File "C:\Python27\lib\telnetlib.py", line 319, in read_until
        return self.read_very_lazy()
      File "C:\Python27\lib\telnetlib.py", line 395, in read_very_lazy
        raise EOFError, 'telnet connection closed'
    EOFError: telnet connection closed
    voilà mon code :

    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
    # -*- coding: cp1252 -*-
    import telnetlib
     
    HOST = "10.216.200.4"
    user = "user"
    password = "password"
     
    print("Infos : \nHote : {} \nUser : {} \nMot de Passe : {}".format(HOST,user,password))
     
    print("Tentative de connexion...")
     
    tn = telnetlib.Telnet(HOST)
    print("Après : tn = telnetlib.Telnet(HOST)")
    tn.read_until("login: ")
    print("Après : tn.read_until")
    tn.write(user + "\n")
    if password:
        tn.read_until("Password: ")
        tn.write(password + "\n")
     
    tn.write("ls\n")
    tn.write("exit\n")
     
    print tn.read_all()
    Le problème semble se situer au niveau du

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tn.read_until("login: ")
    puisque le programme n'effectue pas mon print d'en dessous.

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    Si çà plante en EOFError, c'est que la chaine de caractères attendue n'a pas été reçue...
    Le plus simple est de regarder les messages échangés avec un outil comme Wireshark.

    Mais vérifiez déjà que vous recevez bien ces chaines de caractères là avec un client telnet qui fonctionne.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2015
    Messages : 151
    Par défaut Nouveau Problème de connexion telnet
    Bonjour,
    Mon nouveau code : c'est le même presque
    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
     
    # -*- coding: cp1252 -*-
    import telnetlib
     
    HOST = "10.216.200.4"
    user = "user"
    password = "motdepasse"
     
    print("Infos : \nHote : {} \nUser : {} \nMot de Passe : {}".format(HOST,user,password))
     
    print("Tentative de connexion...")
     
    print("Après : tn = telnetlib.Telnet(HOST)")
    try:
        tn = telnetlib.Telnet(HOST)
        tn.write('\n')
        tn.read_very_eager()
        tn.write(user)
        tn.write('\n')  # tab into the next field
        tn.write(password)
        tn.write('\n')  # 'enter' key
        tn.write("ls\n")
        tn.write("exit\n")
        print tn.read_all()
    except:
        print "Error"
    le programme me retourne une erreur :

    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
     
    AIX version 5
     
     
    (C) Copyrights by IBM and by others 1982, 2005.
     
     
    Connexion : 
     
     
    AIX version 5
     
     
    (C) Copyrights by IBM and by others 1982, 2005.
     
     
    Connexion : Mot de passe de user : 
     
    /dev/pts/6: 3004-031 Dépassement du délai de lecture du mot de passe -- parasites éventuels sur le port

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    Si vous n'attendez pas l'invite pour entrer l'username et celle pour entrer le mot de passe, çà ne fonctionnera pas.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2015
    Messages : 151
    Par défaut
    J'ai cette fenêtre pour accéder au serveur:

    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
    30
    31
     
    telnet (int_for)
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    AIX version 5
    (C) Copyrights by IBM and by others 1982, 2005.
    Connexion :
    J'ai fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    tn.read_until("Connexion : ")
    tn.write(user+ '\n')
    C'est possible de faire ça ?

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Citation Envoyé par hichem0550 Voir le message
    J'ai fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    tn.read_until("Connexion : ")
    tn.write(user+ '\n')
    C'est possible de faire ça ?
    Ca devrait être "possible". "Est-ce que çà fonctionne?" est une question à laquelle on répond en testant (et je n'ai pas d'Aix sous le coude pour tester et debugger à votre place).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Problème de connexion avec Telnet
    Par bouyachak dans le forum Réseau
    Réponses: 5
    Dernier message: 11/06/2014, 12h33
  2. problème commande apres connexion telnet
    Par polacer dans le forum AIX
    Réponses: 1
    Dernier message: 16/11/2011, 09h38
  3. Problème de connexion Telnet via "Apache Commons Net"
    Par le_misterioso dans le forum Général Java
    Réponses: 1
    Dernier message: 23/02/2011, 21h39
  4. problème de connexion 2 PC
    Par guitalca dans le forum Développement
    Réponses: 3
    Dernier message: 22/09/2003, 14h04

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