paramiko是用Python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。

python的paramiko模块可以方便的实现ssh登录,并执行命令。

1. paramiko模块安装

1.1安装pycrypto库

pycrypto库安装方法

python setup.py build && python setup.py install

1.2安装paramiko

python setup.py build && python setup.py install

2.简单使用

2.1 执行远程命令

#!/usr/bin/python

import paramiko

ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect("某IP地址",22,"用户名", "口令")

stdin, stdout, stderr = ssh.exec_command("你的命令")

print stdout.readlines()

ssh.close()

2.2 上传文件到远程

#!/usr/bin/python

import paramiko

t = paramiko.Transport(("某IP地址",22))

t.connect(username = "用户名", password = "口令")

sftp = paramiko.SFTPClient.from_transport(t)

remotepath='/tmp/test.txt'

localpath='/tmp/test.txt'

sftp.put(localpath,remotepath)

t.close()

2.3 上传文件到远程

#!/usr/bin/python

import paramiko

t = paramiko.Transport(("某IP地址",22))

t.connect(username = "用户名", password = "口令")

sftp = paramiko.SFTPClient.from_transport(t)

remotepath='/tmp/test.txt'

localpath='/tmp/test.txt'

sftp.get(remotepath, localpath)

t.close()

3.高级用法

通常需要对多个服务器或者虚拟机进行管理,可以采用批量的方式进行。

#-*- coding: utf-8 -*-

#!/usr/bin/python

import paramiko

import threading

def ssh2(ip,username,passwd,cmd):

try:

ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect(ip,22,username,passwd,timeout=5)

for m in cmd:

stdin, stdout, stderr = ssh.exec_command(m)

out = stdout.readlines()

for o in out:

print o, #屏幕输出

print '%s\tOK\n'%(ip)

ssh.close()

except :

print '%s\tError\n'%(ip)

if __name__=='__main__':

cmd = ['echo hello!']#需要执行的命令列表

username = "root" #用户名

passwd = "root" #密码

threads = [] #多线程

print "Begin excute......"

for i in range(1,254):

ip = '192.168.1.'+str(i)

a=threading.Thread(target=ssh2,args=(ip,username,passwd,cmd))

a.start()

python ssh登陆模块_使用python的Paramiko模块登陆SSH相关推荐

  1. python ssh登录设备_用Python怎么SSH到网络设备

    [ TOC ] 0. 前言 自上一篇文章<用python怎么telnet到网络设备>,简单使用了telnetlib库给大家演示了下,但是,现实环境中仍不建议去使用telnet. SSH(S ...

  2. 一个完整的python文件即是一个模块_用python玩转数据|基本语法

    比较运算符 >>>3<4<7 True >>>3<4<1 False >>> 打开文件 >>> f=op ...

  3. python模拟浏览器模块_在Python中使用mechanize模块模拟浏览器功能

    知道如何快速在命令行或者python脚本中实例化一个浏览器通常是非常有用的. 每次我需要做任何关于web的自动任务时,我都使用这段python代码去模拟一个浏览器. import mechanize ...

  4. python哪个关键字可以导入模块_关于python导入模块import与常见的模块详解

    0.什么是python模块?干什么的用的? Java中如果使用abs()函数,则需要需要导入Math包,同样python也是封装的,因为python提供的函数太多,所以根据函数的功能将其封装在不同的m ...

  5. python 异常处理模块_扩展Python模块系列(五)----异常和错误处理

    在上一节中,讨论了在用C语言扩展Python模块时,应该如何处理无处不在的引用计数问题.重点关注的是在实现一个C Python的函数时,对于一个PyObject对象,何时调用Py_INCREF和Py_ ...

  6. python如何查看有什么模块_在python中如何查看模块功能

    在python中查看模块功能的方法:1.在python命令行输入help()函数进入help帮助文档界面:2.键入[modules]列出当前所有安装的模块:3.键入相应的模块名称即可得到该模块的功能信 ...

  7. python如何导入自定义模块_【python】导入自定义模块

    一.直接import 1.当执行文件与要导入的py文件在同一目录下时 假设要在wangyi.py中导入weibo.py文件 import weibo 2.当执行文件与要导入的py文件所在文件夹在同一目 ...

  8. c调用python代码找不到模块_构建 Python C 扩展模块

    有好几种扩展 Python 的功能的方法.其中一种就是用 C 或 C++ 编写 Python 模块.通过这个过程可以提高性能,更好地访问 C 库函数和系统调用.在本教程中,我将带大家了解如何使用 Py ...

  9. python测试代码与模块_测量Python代码运行时间

    Python 社区有句俗语: "python自己带着电池" ,别自己写计时框架. Python 2.3 具备一个叫做 timeit 的完美计时工具可以测量python代码的运行时间 ...

最新文章

  1. 【译】Swift算法俱乐部-查找最大/最小值
  2. liunx tar安装mysql_在Linux下,安装Mysql(tar)
  3. Leaf:GO语言游戏框架介绍及入门
  4. ps随机排列_漂亮!自然材料:人工可控微米级胶体粒子“堆积木”——粒子随心所欲的组装排列!...
  5. MATLAB 图像函数(第三章) 图像基本处理
  6. js 字符转换,小驼峰转大写字母开头并且加空格 changeDate -》 Change Date
  7. 如何有效地管理测试用例
  8. SpringBoot多数据源(主从数据源)配置
  9. 电脑锁屏按什么键解锁_手机屏幕密码忘了怎么解锁
  10. ROS2——Windows上的安装笔记
  11. html post与get的区别,post 和get请求的区别(html)
  12. Myeclipse10破解版安装包
  13. TypeError: Cannot read property 'getUserMedia' of undefined
  14. PMP-总价合同、固定合同、工料合同对比
  15. 虚拟机安装Linux(ubuntu)
  16. vue3实现电子实时时钟(动态时钟)
  17. 合并m3u8文件 okfun文件夹 .ok文件
  18. 1.1 机器学习与Python
  19. 许亲亲--1101210998 第二次作业
  20. 2020年安全简报(1月)

热门文章

  1. 10个最常见的数据库缺陷
  2. java多线程 生产者消费者_java多线程之生产者消费者经典问题 - 很不错的范例
  3. 增加数组下标_数组以及ArrayList源码解析
  4. yuv格式转换是那个组织定义的_AI 如何赋能摄像机?这场沙龙为你解锁“软件定义”新概念...
  5. 安卓与ios都是linux,随便来说两句,安卓、IOS不是那么容易被取代的
  6. 828c语言程序设计_21计算机考研只考一门高级语言程序设计的院校大汇总!
  7. CAN总线在嵌入式Linux下驱动程序的实现
  8. 400分理科学计算机,理科400分,专科批次,有4所211大学可以报考
  9. c语言绝对循环,c语言之循环
  10. c++ 检查缓冲大小与记录大小是否匹配_后端程序员不得不会的 Nginx 转发匹配规则...