paramiko模块的使用
paramiko模块的使用
一 介绍
# 用于帮助开发者通过代码远程连接服务器,并对服务器进行操作。
# pip3 install paramiko
二 通过用户名密码方式远程执行命令
import paramiko# 创建SSH对象
ssh = paramiko.SSHClient()# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 连接服务器
ssh.connect(hostname='192.168.16.85', port=22, username='root', password='123456')# 执行命令
stdin, stdout, stderr = ssh.exec_command('df')
# 获取命令结果
result = stdout.read()
# 关闭连接
ssh.close()print(result.decode('utf-8'))
三 通过用户名密码方式上传下载文件
import paramikotransport = paramiko.Transport(('192.168.16.85', 22))
transport.connect(username='root', password='123456')
sftp = paramiko.SFTPClient.from_transport(transport)# 将location.py 上传至服务器 /tmp/test.py
# sftp.put('123.txt', '/data/123.txt')
sftp.get('/data/123.txt', '123.txt')transport.close()
四 通过公钥私钥远程执行命令
import paramikoprivate_key = paramiko.RSAKey.from_private_key_file(r'C:/Users/Administrator/.ssh/id_rsa')# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='192.168.16.85', port=22, username='root', pkey=private_key)# 执行命令
stdin, stdout, stderr = ssh.exec_command('df')
# 获取命令结果
result = stdout.read()# 关闭连接
ssh.close()print(result)
五 通过公钥私钥远程上传下载文件
import paramikoprivate_key = paramiko.RSAKey.from_private_key_file(r'C:/Users/Administrator/.ssh/id_rsa')transport = paramiko.Transport(('192.168.16.85', 22))
transport.connect(username='root', pkey=private_key)sftp = paramiko.SFTPClient.from_transport(transport)
# 将location.py 上传至服务器 /tmp/test.py
# sftp.put('/tmp/123.py', '/tmp/123.py')# 将remove_path 下载到本地 local_path
# sftp.get('123.py', '123.py')transport.close()
六 通过私钥字符串远程连接服务器
# 也可以是存在于数据库中
key = """-----BEGIN RSA PRIVATE KEY----------END RSA PRIVATE KEY-----"""import paramiko
from io import StringIOprivate_key = paramiko.RSAKey(file_obj=StringIO(key))# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='192.168.16.85', port=22, username='root', pkey=private_key)# 执行命令
stdin, stdout, stderr = ssh.exec_command('df')
# 获取命令结果
result = stdout.read()# 关闭连接
ssh.close()print(result)
七 生成公钥私钥并上传
# 1 生成公钥和私钥s
sh-keygen.exe -m pem# 2 在当前用户家目录会生成: .ssh/id_rsa.pub .ssh/id_rsa# 3 把公钥放到服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.16.85 # 4 以后再连接服务器时,不需要在输入密码
ssh root@192.168.16.85
作者:吴常文
出处:https://blog.csdn.net/qq_41405475
本文版权归作者和CSDN共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
paramiko模块的使用相关推荐
- 在Ubuntu 14.04.3上安装python中的paramiko模块
下面是安装命令 cd /usr/local/src git clone https://github.com/paramiko/paramiko.git cd paramiko sudo easy_i ...
- paramiko 模块封装
paramiko 模块封装 #!/usr/bin/env python #coding=utf-8 import paramiko, getpass,sys,traceback class ssh_u ...
- python ssh模块有哪些_Python paramiko模块(实现ssh)
开发堡垒机之前,先来学习Python的paramiko模块,该模块基于SSH用于连接远程服务器并执行相关操作 安装paramiko模块 pip3 install paramiko 基于用户密码方式 i ...
- Linux上安装paramiko模块
Linux上安装paramiko模块 一.paramiko模块作用 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.由于使用的是pyt ...
- python连接linux服务器并使用命令_python基于paramiko模块实现远程连接Linux虚拟机(服务器)并执行指定命令返回输出结果...
对于开发者来说,windows是我们接触最多的操作系统了,但是Linux是我们必不可少的一项重要技能,很多服务或者应用都需要在Linux下运行,掌握Linux系统的基本使用也是非常重要的,今天有一个需 ...
- Python基础 - 第九天 - paramiko模块、进程、线程
本篇内容: 1.paramiko模块使用 2.进程.线程简介 3.python调用线程的方法 4.join - 等待线程执行 5.守护线程 6.GIL - 全局解释器锁 7.互斥锁 8.信号量 9.事 ...
- python paramiko模块中设置执行命令超时值
经常使用paramiko工具对几百台设备进行管理,但是由于服务器本身或是网络原因,有时返回值回不来,然后程序就看在那里一直等待,这个时候后需要设置一个超时值.paramiko模块中执行命令代码如下: ...
- python paramiko模块 远程上传目录文件
目录 上传目录 上传文件 上传目录 python用paramiko模块默认中只可以上传文件,在网上也没有找到合适的直接上传目录的方法,所以用os.walk方法和paramiko结合写了一个上传目录的方 ...
- python ssh模块_windows下python SSH的使用——paramiko模块
paramiko模块实例. #!/usr/bin/python import paramiko server_ip = '192.168.*.*' server_user = 'your_user' ...
- python第四十九天--paramiko模块安装大作战
准备开始学习:paramiko模块,发现这个模块十分难搞 安装不上 搞了半天,win10 64下 pytyon 3.6 的 paramiko模块 死活安不上,在网上不断的找资料,可是没有用,没有用啊 ...
最新文章
- 惊!YOLOv5重磅来袭!还是基于Pytorch实现?
- oracle常见单词_Oracle的词汇表
- Git学习笔记:远程仓库
- GDCM:gdcm::Unpacker12Bits的测试程序
- 201521123014 《Java程序设计》第11周学习总结
- 中科慧眼双目安装pcl
- python迷宫小游戏大全_Python迷宫小游戏源代码、源程序
- 37 SD配置-销售凭证设置-分配项目类别
- 判断用户输入的银行卡号是否正确--基于Luhn算法的格式校验
- 【华为云技术分享】Python 中的异常和错误
- msp430单片机oled汉字字模_OLED液晶屏如何显示中文呢?
- RFM模型——构建数据库营销的商业战役!(转)
- 通过ADB命令打开MTK和展讯日志的方法
- 闸机常用通讯协议(韦根,485等),或者开关量输出(继电器)直接控制
- **python入门实战**-华氏度转摄氏度python代码
- 计算机未检测到任何网络硬件,win10系统连不上网提示“检测不到任何网络硬件”怎么办...
- 安培-麦克斯韦定律修正-运动的电荷产生涡旋磁场(B=μεv×E)
- tk/tkx canvas区域放大的代码
- python实现梯度下降法
- 基于COMSOL Multiphysics的静电场仿真分析