Paramiko模块学习
#!/usr/bin/env python
# Author:Zhangmingda
import paramiko
'''创建ssh对象'''
ssh = paramiko.SSHClient()
'''设置允许连接不在know host的主机'''
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy)
'''连接服务器'''
ssh.connect(hostname='49.4.13.98',port=23782,username='root',password='Wyf@1314')
'''执行命令获取结果'''
stdin, stdout,stderr = ssh.exec_command('ls')
result_in = stdin
result_out =stdout.read().decode()
result_err = stderr.read().decode()
# print(result)
# print('type:',type(stdin))
print('stdin:',result_in)
print('stdout:',result_out)
print('stder:',result_err)
ssh.close()
sshclient
#!/usr/bin/env python
# Author:Zhangmingda
import paramiko id_rsa = paramiko.RSAKey.from_private_key_file('id_rsa')
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy)
ssh.connect(hostname='49.4.13.98',port=23782,username='root',pkey=id_rsa)
stdin,stdout,stderr = ssh.exec_command('ls')
stdout_result = stdout.read().decode()
print(stdout_result)
ssh.close()
sshclient_RSA
#!/usr/bin/env python
# Author:Zhangmingda
import paramiko
'''创建私钥对象给ssh传输对象用'''
id_rsa = paramiko.RSAKey.from_private_key_file('id_rsa')
transobj = paramiko.Transport(('49.4.13.98',23782))
transobj.connect(username='root',pkey=id_rsa)
'''将已经连接了服务器的对象给sftp客户端实例,让客户端实例进行上传下载操作''' '''创建sftp对象'''
sftpobj = paramiko.SFTPClient.from_transport(transobj)
# sftpobj.get('/etc/passwd','hehepasswd')
sftpobj.put('hehepasswd','/tmp/from_windows_passwd')
transobj.close()
sftp_RSA
#!/usr/bin/env python
# Author:Zhangmingda
import paramiko
'''创建一个ssh传输连接对象'''
trans_addr = paramiko.Transport(('49.4.13.98',23782))
trans_addr.connect(username='root',password='Wyf@1314') '''将已经连接了服务器的对象给sftp客户端实例,让客户端实例进行上传下载操作'''
sftp = paramiko.SFTPClient.from_transport(trans_addr)
sftp.get('/etc/passwd','from_sshserver_etc_passwd.')
sftp.put('python_av.avi','/root/a.avi')
sftp.close()
trans_addr.close()
'''关闭sftp客户端'''
sftp
Paramiko模块学习的更多相关文章
- 审计系统---paramiko模块学习
paramiko模块学习 [更多参考]http://www.cnblogs.com/wupeiqi/articles/4963027.html [paramiko的Demo实例]https://git ...
- python paramiko模块学习分享
python paramiko模块学习分享 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.paramiko支持Linux, Sola ...
- paramiko模块学习笔记
SSHClient 基于用户名密码连接 import paramiko # 创建SSH对象 ssh = paramiko.SSHClient() # 允许连接不在know_hosts文件中的主机 ss ...
- python3 Paramiko模块学习
简介 ssh是一个协议,OpenSSH是其中一个开源实现,paramiko是Python的一个库,实现了SSHv2协议(底层使用cryptography). 有了Paramiko以后,我们就可以在Py ...
- python 学习分享-paramiko模块
paramiko模块学习分享 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.paramiko支持Linux, Solaris, BS ...
- Python3学习之路~9.1 paramiko模块:实现ssh执行命令以及传输文件
我们一般使用linux的时候,都是在Windows上安装一个ssh客户端连接上去.那么从一台linux如何连接到另一条linux呢?使用ssh命令即可,因为每台linux机器自己都有一个ssh客户端. ...
- python学习之---- paramiko 模块
paramiko 模块 功能:提供了ssh及sftp进行远程登录服务器执行命令和上传下载文件的功能.这是一个第三方的软件包,使用之前需要安装. 1 基于用户名和密码的 sshclient 方式登录 ...
- paramiko模块-2
如何用paramiko模块模拟登入服务器,并记录操作日志,起到审计的作用? 各个client ---(连接跳转机)--->(跳转机)------>各自的目标服务器. 目前我们公司的跳转机, ...
- Pyhton开发堡垒机之paramiko模块
堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: + ...
随机推荐
- DP+单调队列详解+题目
介绍: 单调队列优化的原理 先回顾单调队列的概念,它有以下特征: (1)单调队列的实现.用双端队列实现,队头和队尾都能插入和弹出.手写双端队列很简单. (2)单调队列的单调性.队列内的元素 ...
- R语言实战(第二版)-part 1笔记
说明: 1.本笔记对<R语言实战>一书有选择性的进行记录,仅用于个人的查漏补缺 2.将完全掌握的以及无实战需求的知识点略去 3.代码直接在Rsudio中运行学习 R语言实战(第二版) pa ...
- 全基因组选择育种(GS)简介
全基因组选择(Genomic selection, GS)是一种利用覆盖全基因组的高密度标记进行选择育种的新方法,可通过早期选择缩短世代间隔,提高育种值(Genomic Estimated Breed ...
- R语言与医学统计图形-【24】ggplot位置调整函数
ggplot2绘图系统--位置调整函数 可以参数position来调整,也有专门的函数position_*系列来设置. 位置函数汇总: 1.排列 并排排列 mean <- runif(12,1, ...
- Linux—find在指定路径下查找文件或目录
find /指定路径 -name "*filename*" find /指定路径 -name "*filename*" 2>/dev/null ...
- JAVA中数组的基本概念与用法
JAVA中数组的基本概念与用法 1. 数组的定义与特点 数组的一种引用数据类型 数组中可以同时存放多个数据,但是数据的类型必须统一 数组的长度在开始时就需要确定,在程序运行期间是不可改变的 虽然可以使 ...
- 容器之分类与各种测试(四)——unordered-multimap
unordered-multiset与unordered-multimap的区别和multiset与multimap的区别基本相同,所以在定义和插入时需要注意 key-value 的类型. 例程 #i ...
- Linux下强制踢掉登陆用户
1.pkill -kill -t tty 例:pkill -kill -t tty1
- Linux基础命令---host域名查询工具
host host是一个常用的DNS查询工具,经常用来查询域名.检查域名解析是否正确. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.Fedora. 1.语法 ...
- iBatis查询时报"列名无效"或"找不到栏位名称"无列名的错误原因及解决方法
iBatis会自动缓存每条查询语句的列名映射,对于动态查询字段或分页查询等queryForPage, queryForList,就可能产生"列名无效".rs.getObject(o ...