简介:
Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。要开始一个telnet会话,必须输入用户名和密码来登录服务器。Telnet是常用的远程控制Web服务器的方法。
实现:
Python中提供了telnetlib库来实现基础的telnet协议功能,实例代码如下:
# -*- coding: utf-8 -*-
#author:kongcz
"""
Name: telnet_demo.py
Tesed in python3.6.5
"""
import telnetlib
HOST = "192.168.1.1"
user = "admin"
password = "admin"
def command(con, flag, str_=""):
data = con.read_until(flag.encode())
print(data.decode(errors='ignore'))
con.write(str_.encode() + b"\n")
return data
tn = telnetlib.Telnet(HOST)
command(tn, "Username:", user)
if password:
command(tn, "Password:", password)
command(tn, "<H3C>", "sys")
tn.close()
代码效果如下:
******************************************************************************
* Copyright (c) 2004-2017 New H3C Technologies Co., Ltd. All rights reserved.*
* Without the owner's prior written consent, *
* no decompiling or reverse-engineering shall be allowed. *
******************************************************************************
Login authentication
Username:
admin
Password:
<H3C>