|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: May 2003
Messaggi: 48
|
script python telnet
Salve ragazzi
ho un problemino, non riesco a far funzionare questo script in .py Vi spiego meglio, io devo connetermi tramite telnet ad una Sun, poi da li devo andare su un router, fino alla Sun ci arrivo e riesco a pingare il router, ma quando provo ad effettuare il secondo telnet non riesco ad entrare nel router. Posto di seguito lo script import sys import telnetlib HOST = "host" #indirizzo Sun (centro di gestione) user = "user" password = "password" user2 = "user2" password2 = "password2" loop = "loop" #indirizzo Router tn = telnetlib.Telnet(HOST) tn.read_until("login: ") tn.write(user + "\n") if password: tn.read_until("Password: ") tn.write(password + "\n") tn.write("ping ") tn.write(loop + "\n") tn = telnetlib.Telnet(loop) tn.read_until("Username: ") tn.write(user2 + "\n") if password2: tn.read_until("Password: ") tn.write(password2 + "\n") tn.write("exit\n") print tn.read_all() Grazie in anticipo |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
|
due osservazioni:
1 - Usi un telnet con password in chiaro ? Non e' il massimo dal punto di vista della sicurezza... 2 - Cosi' non puo' funzionare perche' cerchi di fare entrambe le connessioni dalla stessa macchina. Devi mandare i comandi per effettuare la connessione al router nello stesso modo in cui inserisci login e password, ovvero scrivi sulla sessione telnet un comando tipo "telnet router" , e poi da li' dalla sessione originale riesci a leggere i dati del router.
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: May 2003
Messaggi: 48
|
ok grazie, per il telnet router sembra funzionare, anche se non so perchè non sempre funziona, mi da problemi sull'autenticazione del router.
Uso password in chiaro perche accedo direttamente dalla rete interna, non dall'esterno. Come posso effettuare una sorta di debug, cioè per vedere dove lo script si ferma? Grazie |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
|
cerco di essere piu' chiaro. Il problema e' nella seguente riga:
Codice:
tn = telnetlib.Telnet(loop) Un modo per farlo potrebbe essere quello di effettuare un telnet dalla riga di comando della shell remota che hai ottenuto, qualcosa del tipo Codice:
tn.write("telnet " + loop + "\n") Quote:
![]()
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele |
|
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: May 2003
Messaggi: 48
|
ok con la stringa da te indicatami ora funziona
![]() per ora funziona l'accesso, ora devo vedere come inviare dei comandi e far salvare il risultato in un file di testo |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:40.