简介:

paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。跟常用软件xshell 、xftp功能一样,但是可以连接多台服务器,进行复杂的操作。

安装 :

pip install PyCrypto  (PyCrypto是使用Python编写的加密工具包)

pip install paramiko /easy_install paramiko

paramiko主要包含核心组件,一个是SSHClient类,另一个是SFTPClient类

一、SSHClient类的主要函数:

1、Connect方法

Connect实现了远程SSH的连接并校验。

Connect(self,hostname,port,username,password,pkey,key_filename,timeout,allow_agent,look_for_keys ,compress)

参数含义:

Hostname  str :主机ip

Port  int :端口

Username  str:用户名

Password  str :密码

Pkey  pkey: 秘钥

Timeout  float: 超时时间

Allow_agent  boool :当为flase时,禁用连到ssh代理

Look_for_keys  bool : flase时,禁用在~/.ssh中搜索秘钥文件

Compress    bool : true时打开压缩。

2、exec_command方法

远程命令执行的方法

exec_command(self,command,bufsize=-1)

参数:

Command  str :命令串

Bufsize  int:文件缓冲区大小,默认-1没有限制

3、load_system_host_keys

加载本地公秘钥校验文件,默认为~/.ssh/known_hosts

load_system_host_keys(self,filename)

fielname  str :制定远程主机公钥记录文件

4、set_missing_host_key_policy

连接主机没有本地主机秘钥或者HostKeys对象时策略,目前支持三种:AutoAddPolicy,RejectPolicy,WarningPolicy

AutoAddPolicy:自动添加主机名以及主机秘钥

RejectPolicy(默认):自动拒绝未知的主机名和秘钥

WarningPolicy: 用于记录一个未知主机秘钥的Python警告

ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

5、简单案例

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

import paramiko

username = 'root'

password = 'Aliyun6688xyz'

hostname = '119.29.0.208'

port = 22

ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 允许连接不在know_hosts文件中的主机

ssh.connect(hostname,port,username, password)

stdin, stdout, stderr = ssh.exec_command("uptime")

print stdout.readlines()

ssh.close()

二、SFTPClient类——实现远程操作文件

1、from_transport方法

创建一个已经连通的sftp客户端通道

2、put函数

上传文件到服务器

Put(self,localpath,remotepath,callback=none,confirm=none)

Localpath  str : 上传文件本地源

Remotepath  str : 远程路径

Callback(function(int,int)) 获取已经接受的字节数以及总传输字节数。

Confirm  bool : 文件上传完毕后是否调用start()函数,以便确认文件大小。

3、get方法

从远程主机端下载文件同put

4、其他方法

Mkdir 创建目录 sftp.mkdr(‘/home/user’,0755)

Remove 删除主机端指定目录 sftp.remove(‘/home/user’)

Rename 从命名服务端的文件或者目录 sftp.rename(“/home/test.sh”,”/home/newtest.sh”)

Listdir  获取远程SFTP服务器端指定的目录列表,返回list形式  sftp.listdir(“/home”)

Stat 获取远程主机指定文件信息 sftp.stat(“/home/test.sh”)

5、简单测试代码

t = paramiko.Transport((hostname,port))

t.connect(username = username, password = password)

sftp = paramiko.SFTPClient.from_transport(t)

remotepath='/tmp/test.txt'

localpath='/test.txt'

sftp.get(localpath,remotepath)# get是获取函数,put函数是上传函数

t.close()

转载于:https://www.cnblogs.com/fuyuteng/p/8515273.html

python模块-paramiko相关推荐

  1. 利用python模块paramiko在CentOS 6.3 64上搭建SFTP环境

    用python实现远程登陆主机执行命令或通过sftp上传下载文件,有个很好的模块paramiko模块来演示这些功能,使用起来很方便 CentOS 6.x上的python版本默认是2.6的,为了平台兼容 ...

  2. python 模块paramiko

    一.基础学习 ssh远程连接服务器 知识储备:python基本常识/注释 以及模块 此处使用的版本为python3 ssh需要库的名称以及功能,此处需要paramiko库,检查python中是否存在该 ...

  3. python paramiko使用_使用python的paramiko模块实现ssh与scp功能

    #1. 介绍 这篇文章简单地介绍了python的paramiko模块的用法,paramiko实现了SSH协议,能够方便地与远程计算机交互.简单的说,就是你在terminal下执行的如下语句,现在可以通 ...

  4. python ssh登陆模块_使用python的Paramiko模块登陆SSH

    paramiko是用Python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. python的paramiko模块可以方便的实现ssh登录,并执行命令. 1. pa ...

  5. 【Python】Paramiko模块在Windows10中import ssl报错的处理方法

    上一篇文章[Python]Paramiko模块实现Linux服务器远程文件操作 介绍了如何通过Paramiko进行 sftp的操作,但最近遇到一个问题,换上家里的windows10电脑后,执行脚本时发 ...

  6. python之paramiko模块

    .简介 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. 由于使用的是python这样的能够跨平台运行的语言,所以所有python支持 ...

  7. python模块之 paramiko(转载)

    python模块之 paramiko(转载) paramiko模块提供了ssh及sft进行远程登录服务器执行命令和上传下载文件的功能.这是一个第三方的软件包,使用之前需要安装. 1 基于用户名和密码的 ...

  8. python第三方库排行-Python模块汇总(常用第三方库)

    模块 定义 计算机在开发过程中,代码越写越多,也就越难以维护,所以为了编写可维护的代码,我们会把函数进行分组,放在不同的文件里.在python里,一个.py文件就是一个模块 优点: 提高代码的可维护性 ...

  9. Python模块学习

    阅读目录 第一篇:Python模块之netmiko 第二篇:Python模块之junos-eznc 第三篇:Python模块之pexpect 第四篇:Python模块之paramiko 第五篇:Pyt ...

最新文章

  1. 2.1.1 正则化基本介绍
  2. Google学术搜索方法
  3. 今晚直播 | 微软亚洲研究院徐毅恒:预训练时代下的文档智能
  4. Python3.x:pip命令安装第三方库,超时处理方案
  5. oci mysql_Oracle常用的OCI函数
  6. 请假一天,回粤西老家买了套房
  7. baidu收录速度明显慢了
  8. 如何在悬停而不是单击时使Twitter Bootstrap菜单下拉列表
  9. eureka 注册中心高可用失败,没有互为副本
  10. 关于videoplayer
  11. python3爬虫实战-requests+beautifulsoup-爬取下载顶点网站的小说
  12. ESD选型指南,带你了解不一样的ESD
  13. 实验: 写一个.msstyles皮肤测试程序
  14. opengl学习笔记
  15. 那些你可能不知道的百度产品
  16. Shiro限制登录尝试次数(适用于单节点)
  17. 2016亚洲城市GDP50强出炉
  18. IntelliJ IDEA 2018.3 x64 安装激活教程(全面)
  19. 51单片机中断的调用寄存器组(PSW)的作用,以及汇编堆栈的作用,堆栈指针的SP的使用方法,RAM的运行和ROM在单片机具体运行和C语言的优势和中断,定时器基础知识(上)
  20. 面试之站在面试官的角度去面试

热门文章

  1. Python——内置类型
  2. Maximo 7.5 集成方式 去掉主菜单
  3. .Net转Java自学之路—Spring框架篇二(IOC注解、AOP)
  4. python基本数据类型(一)-python3.0学习笔记
  5. 【312天】我爱刷题系列071(2017.12.14)
  6. 境外WiFi市场持续升温 2016年或迎普及元年
  7. SqlServer标识列、修改标识列值
  8. AngularJs 实战 -慕课网
  9. iOS核心动画 - CALayer
  10. AtomicInteger简介