一、Windows下开启Telnet服务

(详见:与Win7防火墙无缝结合 Telnet功能测试

1、Windows 2000/XP/2003/Vista:默认已安装但禁止了Telnet服务

(1)开启Telnet:运行services.msc打开服务管理,找到Telnet服务项设置其启动类型为“自动”或者“手动”(更安全,只在需要的时候才启用),然后启动该服务即可。

2、Windos 7:默认未安装Telnet服务

(1)安装Telnet:依次点击“开始”→“控制面板”→“程序”,“在程序和功能”找到并点击“打开或关闭Windows 功能”进入Windows 功能设置对话框。找到并勾选“Telnet客户端”和“Telnet服务器”,最后“确定”稍等片刻即可完成安装。

(2)开启Telnet:方法同1中的(1)

二、Linux下开启Telnet服务

(详见:Ubuntu 10.10 下配置Telnet服务器

(1)安装telnetd(即telnet-server):apt-get install telnetd

(2)安装xinetd(telnet-server的运行需要由xinetd来管理):apt-get install xinetd

(3)配置telnet文件:vi /etc/xinetd.d/telnet

(4)开启xinetd:service xinetd start

三、使用Python实现Telnet远程登录

  Python中专门提供了telnetlib库,用来完成基于telnet协议的通信功能。

  利用telnetlib实现远程登录功能的代码如下:

1 # -*- coding: utf-8 -*- 
 2 
 3 import telnetlib
 4  
 5  '''Telnet远程登录:Windows客户端连接Linux服务器'''
 6  
 7  # 配置选项
 8  Host = '192.168.1.2' # Telnet服务器IP
 9  username = 'admin'   # 登录用户名
10  password = '123456'  # 登录密码
11  finish = ':~$ '      # 命令提示符(标识着上一条命令已执行完毕)
12  
13  # 连接Telnet服务器
14  tn = telnetlib.Telnet(Host)
15  
16  # 输入登录用户名
17  tn.read_until('login: ')
18  tn.write(username + '\n')
19  
20  # 输入登录密码
21  tn.read_until('Password: ')
22  tn.write(password + '\n')
23  
24  # 登录完毕后,执行ls命令
25  tn.read_until(finish)
26  tn.write('ls\n')
27  
28  # ls命令执行完毕后,终止Telnet连接(或输入exit退出)
29  tn.read_until(finish)
30  tn.close() # tn.write('exit\n')

###################################################

#!/usr/bin/env python

import getpass
import sys
import telnetlib

HOST = "10.1.1.1"
user = raw_input("Enter your remote account: ")
password = getpass.getpass()

print password

tn = telnetlib.Telnet(HOST)
print "Begin login."
tn.read_until("login:")
tn.write(user + "\n")

if password:
    tn.read_until("Password:")
    tn.write(password + "\n")
   
print "Login Done."
tn.write("ls\n")
tn.write("exit\n")

print tn.read_all()

这是个简单的例子

python中telnetlib模块的使用的更多相关文章

  1. Python中optionParser模块的使用方法[转]

    本文以实例形式较为详尽的讲述了Python中optionParser模块的使用方法,对于深入学习Python有很好的借鉴价值.分享给大家供大家参考之用.具体分析如下: 一般来说,Python中有两个内 ...

  2. python中threading模块详解(一)

    python中threading模块详解(一) 来源 http://blog.chinaunix.net/uid-27571599-id-3484048.html threading提供了一个比thr ...

  3. 【转】关于python中re模块split方法的使用

    注:最近在研究文本处理,需要用到正则切割文本,所以收索到了这篇文章,很有用,谢谢原作者. 原址:http://blog.sciencenet.cn/blog-314114-775285.html 关于 ...

  4. Python中的模块介绍和使用

    在Python中有一个概念叫做模块(module),这个和C语言中的头文件以及Java中的包很类似,比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一 ...

  5. python中导入模块的本质, 无法导入手写模块的解决办法

    最近身边一些朋友发生在项目当中编写自己模块,导入的时候无法导入的问题. 下面我来分享一下关于python中导入模块的一些基本知识. 1 导入模块时寻找路径 在每一个运行的python程序当中,都维护了 ...

  6. Python中time模块详解

    Python中time模块详解 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括:time,datetime以及calendar.这篇文章,主要讲解time模块. ...

  7. Python中collections模块

    目录 Python中collections模块 Counter defaultdict OrderedDict namedtuple deque ChainMap Python中collections ...

  8. Python中pathlib模块

    Python中pathlib模块 Path.cwd():返回当前目录的路径 Path.home():返回当前用户的家目录 Path.stat():返回此路径信息 Path.touch():创建文件 P ...

  9. Python 中包/模块的 `import` 操作

    版权声明:博客为作者原创,允许转载,但必须注明原文地址: https://www.cnblogs.com/byronxie/p/10745292.html 用实例来说明 import 的作用吧. 创建 ...

随机推荐

  1. 最新Node.js 资源汇总

    Node.js 资源汇总 文档 Node.js 官方文档:http://nodejs.org/api/ Node.js 中文文档:http://nodejs.jsbin.cn/api/ Express ...

  2. iOS开发之视差滚动视图

    首先声明一点,由于自己iOS开发经验有限,这里给下面将要实现的效果起名叫视差滚动视图,自己也不知道是否严谨,等以后有经验了,再来更新吧. 一.需求 有的时候我们可能会有这样一种需求,在一个UITabl ...

  3. Voting

    Voting time limit per test 1 second memory limit per test 256 megabytes input standard input output ...

  4. openwrt的编译环境

    安装centos7 ,以最小的方式安装在 vmware 的虚拟机了.(yum 更新系统就不提了.下面是没有yum更新的情况下的记录和总结) 安装后,发现 ifconfig 命令不好用,得用 ip ad ...

  5. VS编译wxWidgets

    准备工作 下载wxWidgets源码包(官网),我用的是3.02版: 安装Visual Studio.我用的是VS 2015 RC: 编译源码 解压wxWidgets的源码包,会得到一大堆文件.进入b ...

  6. MTK平台Android中常用的路径

    开机Logo的路径: bootable\bootloader\lk\dev\logo 开机Logo图片分辨率路径: device\rq\rq6735_35gt_b_l1\ProjectConfig.m ...

  7. synchronized细节问题

    一.synchronized有锁重入的特点,某个线程得到对象的锁后,再次请求此对象可以再次得到改对象的锁.如下示例,在method1中调用method2,在method2中调用method3,而met ...

  8. 解决 GoogleApi 无法访问的问题

    因为 google 被天朝屏蔽,所以很多运用了 fonts.googleapis 的网站都打开很慢,会直到加载 fonts.googleapis 超时才能打开网页. 在本地开发时,可以引用国内的CDN ...

  9. android 一些数据转换方法

    android 一些数据转换方法 package com.ai9475.util; import android.content.Context; import android.content.res ...

  10. hdu 1298 T9

    字典树+DFS. #include<cstdio> #include<cstring> #include<cmath> #include<string> ...