利用paramiko模块模拟ssh执行命令(明文用户名密码):

import paramiko
ssh = paramiko.SSHClient()    #创建ssh对象
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy)   #当找不到验证时自动添加
ssh.connect(hostname='192.168.1.104',port=22,username='songsa',password='123456')   #连接服务器
data = input('>>>')
std_in,std_out,std_err = ssh.exec_command(data)   #执行命令
out,err = std_out.read(),std_err.read()
result = out if out else err  #如果执行正确 result= stdout.read(),否则 result= stderr.read()
print(result.decode())

利用paramiko模块模拟ftp来上传下载(明文用户名密码):

import paramiko
transport = paramiko.Transport(('192.168.1.104',22))   #创建实例
transport.connect(username='root',password='123456')  #建立连接
sftp = paramiko.SFTPClient.from_transport(transport)  #将创建的实例当作参数传给paramiko.SFTPClient.from_transport,交互实在这里边进行的
sftp.put(r'C:\Users\songsa\Desktop\python.tgz','/home/songsa/python_test/python.tgz') #上传
sftp.get('/home/songsa/python_test/python.tgz',r'C:\Users\songsa\Desktop\python.tgz') #下载
transport.close()

利用paramiko模块模拟ssh执行命令(基于公钥):

import paramiko
private_key = paramiko.RSAKey.from_private_key_file(r'C:\Users\songsa\PycharmProjects\untitled\3.21\id_rsa')
ssh = paramiko.SSHClient()  #创建SSH对象
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy) #允许连接不在know_hosts文件中的主机
ssh.connect(hostname='192.168.1.104',port=22,username='songsa',pkey=private_key)#连接服务器
stdin,stdout,stderr =  ssh.exec_command('pwd') #执行命令
result = stdout.read()
print(result.decode())
ssh.close()

利用paramiko模块模拟ftp来上传下载(基于公钥):

import paramiko
private_key = paramiko.RSAKey.from_private_key_file(r'C:\Users\songsa\PycharmProjects\untitled\3.21\id_rsa')
transport = paramiko.Transport(('172.20.0.158', 22))
transport.connect(username='songsa', pkey=private_key)
sftp = paramiko.SFTPClient.from_transport(transport)
sftp.get('/home/songsa/.ssh/id_rsa','id_rsa.txt')
transport.close()

转载于:https://www.cnblogs.com/ss-py/p/8623851.html

python_paramiko模块相关推荐

  1. python_paramiko模块用法

    paramiko是用python语言写的一个模块,远程连接到Linux服务器,查看上面的日志状态,批量配置远程服务器,文件上传,文件下载等,提供了ssh及sftp进行远程登录服务器执行命令和上传下载文 ...

  2. etcd 笔记(05)— etcd 代码结构、各模块功能、整体架构、各模块之间的交互、请求和应答流程

    1. etcd 项目结构和功能 etcd 项目代码的目录结构如下: $ tree ├── auth ├── build ├── client ├── clientv3 ├── contrib ├── ...

  3. OpenCV 笔记(01)— OpenCV 概念、整体架构、各模块主要功能

    1. OpenCV 概念 图像处理( Image Processing )是用计算机对图像进行分析, 以达到所需结果的技术, 又称影像处理. 图像处理技术一般包括图像压缩, 增强和复原, 匹配.描述和 ...

  4. Python 多线程总结(1)- thread 模块

    thread 模块 1. 单线程 首先看下单线程程序运行的例子,如下所示, import timedef loop0():print 'start loop0 begin', time.ctime() ...

  5. 关于python导入模块和package的一些深度思考

    背景 在python中有导入模块和导入package一说,这篇文章主要介绍导入模块和package的一些思考. 首先什么是模块?什么是package? 模块:用来从逻辑上组织python代码(变量,函 ...

  6. Python Re 模块超全解读!详细

    内行必看!Python Re 模块超全解读! 2019.08.08 18:59:45字数 953阅读 121 re模块下的函数 compile(pattern):创建模式对象 > import ...

  7. python性能分析之line_profiler模块-耗时,效率 时间

    20210203 直接用pycharm 自带的 20201215 直接装不上的情况下 先下载安装文件 再安装 line_profiler使用装饰器(@profile)标记需要调试的函数.用kernpr ...

  8. python:Json模块dumps、loads、dump、load介绍

    20210831 https://www.cnblogs.com/bigtreei/p/10466518.html json dump dumps 区别 python:Json模块dumps.load ...

  9. 关于python 中的__future__模块

    Python的每个新版本都会增加一些新的功能,或者对原来的功能作一些改动.有些改动是不兼容旧版本的,也就是在当前版本运行正常的代码,到下一个版本运行就可能不正常了. 具体说来就是,某个版本中出现了某个 ...

  10. GPUtil是一个Python模块,使用nvidia-smi从NVIDA GPU获取GPU状态

    GPUtil是一个Python模块,使用nvidia-smi从NVIDA GPU获取GPU状态 一个Python模块,用于在Python中使用nvidia-smi以编程方式从NVIDA GPU获取GP ...

最新文章

  1. vs下.def文件使用无效问题
  2. 计算机网络技术发源于什么,计算机网络基础试题和答案
  3. [高速通道进阶一]如何理解高速通道的就近接入和一点接入连接全球
  4. Java click传递变量,Java-OnClickListener中的最终变量要求
  5. iPhone Web App及优缺点【书摘】
  6. 霍尼236主机说明书_霍尼韦尔236系统中文说明.DOC
  7. jedis的hscan方法使用方法
  8. THINKPAD SL400 重装XP系统的经历
  9. 神是什么?神即道 道法自然 如来 ---《天道》王志文饰丁元英 左小青饰芮小丹
  10. PowerDesigner建立数据库模型
  11. python实现白色背景转为透明背景
  12. 2021年焊工(初级)考试报名及焊工(初级)最新解析
  13. 苹果手机无线网显示无网络连接到服务器,iPhone提示:“无线局域网似乎未接入互联网”,咋回事?...
  14. 智慧工厂是什么 智慧工厂方案举例 智慧工厂案例
  15. Word Averaging模型做文本分类 稳定效果好模型简单
  16. 安装jre运行环境_如何下载安装java运行环境jre
  17. 第一篇博客----试水
  18. 世界战争2HTML5小游戏,[娱乐][PCD]SkyWarsReloaded —— 天空战争小游戏全新归来![1.8-1.13.2]...
  19. 用于生菜的Linux
  20. Java8 Stream流中的 collect() 方法,远比你想象中的强大

热门文章

  1. 1.13 单用户模式;1.14 救援模式;1.15 克隆虚拟机;1.16 Linux机器相互登录
  2. Zookeeper Client简介
  3. redis演练(1) 搭建redis服务
  4. 实用教程:使用Netflow分析网络异常流量
  5. window.onload和$(function(){})的区别介绍
  6. SCCM2012系列之十二,SCCM2012部署操作系统
  7. idea修改项目编码
  8. Html+CSS基础之img标签
  9. JS中实现Trim(),TrimStart(),TrimEnd() 的方法
  10. 项目案例:新闻发布系统---主题管理及页面新闻显示