Reply to the Riccardo Magliocchetti's message, wrote on 30/11/2015 at 15:24:
Il 30/11/2015 15:10, Gabriele Battaglia ha scritto:
Buon pomeriggio a tutti.
Voglio scrivere uno script che si connetta ad un server telnet e mi
permetta di:
[snip]
Qualcosa però non funziona, non compare alcun output, ne errori di
connessione,
semplicemente la console resta vuota per un lungo periodo di tempo,
poi torna il
prompt, così:
Lo script, fino ad ora è questo, solo un abbozzo.
***
# FICS, data concepimento 28/11/2015 by Gabriele Battaglia
Quindi sarà pronto tra ~9 mesi? :)
Molto probabile anche se spero in un settimino.
# stringa da analizzare
# <12> rnbqkbnr pp-ppppp --p----- -------- ---PP--- -------- PPP--PPP
RNBQKBNR B
3 1 1 1 1 0 279 Exylyan GuestQHWY -1 3 3 39 39 172 180 2 P/d2-d4
(0:11) d4 0 1 0
import getpass, sys, telnetlib
HOST = "freechess.org"
Se la prossima volta specifichi a cosa vuoi collegarti nel testo della
mail agevoli la vita agli altri :)
Volentieri, ma non ne capisco l'utilità: è un server per giocare a
scacchi, appunto freechess.org che implementa una connessione telnet.
user = raw_input("Inserisci il tuo account remoto: ")
password = getpass.getpass()
tn = telnetlib.Telnet(HOST)
tn.read_until("login:")
tn.write(user + "\n")
if password:
tn.read_until("Password: ")
tn.write(password + "\n")
#tn.write("ls\n") *Ho messo il cancelletto perche' non ho capito a che
serve
questo comando
#tn.write("exit\n") * idem
print tn.read_all()
***
Cosa può essere che non funziona?
Prima datti una letta su cos'è telnet su wikipedia e su per cosa viene
(ahinoi ancora) usato (hint: una shell).
Fatto, qui: https://it.wikipedia.org/wiki/Telnet#Caratteristiche
Mi rendo conto dei problemi di sicurezza ma che posso farci? La scelta
di usare telnet e non SSH, o qualche altro protocollo, è dei gestori del
servizio di freechess.
Poi ti consiglio di andare su
freechess.org e leggere le istruzioni su dove devi collegarti (hint: la
porta!).
La porta è quella di default, la 23, anche se penso il server ascolti
anche sulla 5000.
Tuttavia, se dal prompt dei comandi digito:
telnet freechess.org
La connessione è immediata, così come è funzionante la negoziazione di
user e password, insomma, la sessione avviene correttamente e termina
quando io invio il comando "quit".
Sono perciò certo che nessun firewall si opponga, che la porta sia la 23
e che non vi siano altri impedimenti, ecco perchè, credevo lo script
funzionasse senza problemi.
...
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python