I try to connect to a router R1 with GNS3 using a Python script:
import getpass
import sys
import telnetlib
HOST = "192.168.1.1"
user = raw_input("Enter your remote account: ")
password = getpass.getpass()
tn = telnetlib.Telnet(HOST)
tn.read_until(b"Username: ")
tn.write(user + "\n")
if password:
tn.read_until("Password: ")
tn.write(password + "\n")
tn.write("enable\n")
tn.write("cisco\n")
tn.write("conf t\n")
tn.write("exit\n")
tn.write("exit\n")
print(tn.read_all().decode('ascii'))
But it still freeze because, I think, it can't connect to a router with a line tn = telnetlib.Telnet(HOST)
When I do a ^C I have this error:
admin ~/Desktop $ python3 test.py
Enter your remote account: david
Password:
^CTraceback (most recent call last):
File "test.py", line 9, in <module>
tn = telnetlib.Telnet(HOST)
File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/telnetlib.py", line 218, in _init_
self.open(host, port, timeout)
File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/telnetlib.py", line 234, in open
self.sock = socket.create_connection((host, port), timeout)
File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/socket.py", line 713, in create_connection
sock.connect(sa)
KeyboardInterrupt
The connection to telnet from R1's terminal works fine