Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Python实现ssh远程执行

Python实现ssh远程执行

作者头像
summerking
发布于 2022-09-19 03:38:26
发布于 2022-09-19 03:38:26
2.1K00
代码可运行
举报
文章被收录于专栏:summerking的专栏summerking的专栏
运行总次数:0
代码可运行

paramiko是基于Python实现的SSH2远程安全连接,支持认证及密钥方式。可以实现远程命令执行、文件传输、中间SSH代理等功能,相对于Pexpect,封装的层次更高,更贴近SSH协议的功能

# ssh执行远程命令脚本

点击查看

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import paramiko
import sys
def pl_ssh(ip,password,username,cmd,port="22"):
    ssh_client=paramiko.SSHClient()
    ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy)
    try:
        ssh_client.connect(hostname=ip,username=username,password=password)
    except Exception as e:
        print('服务器%s连接失败' %ip)
        print(e)
        sys.exit()
    stdin,stdout,stderr=ssh_client.exec_command(cmd)
    print('服务器%s磁盘使用率情况' %ip)
    print(stdout.read().decode("utf-8"))
    ssh_client.close()
if __name__ == '__main__':
    servers={
        "192.168.0.7":{
            "username": "root",
            "password": "hadoop",
            "cmd": "df -h",
            "port": "22"
        },
        "192.168.0.8":{
            "username": "root",
            "password": "hadoop",
            "cmd": "df -h",
            "port": "22"
        }
    }
    for ip,info in servers.items():
        pl_ssh(ip=ip,
               username=info.get("username"),
               password=info.get("password"),
               cmd=info.get("cmd"),
               port=info.get("port")
               )

  • 效果验证

# ssh上传下载文件脚本

点击查看

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import  paramiko
transport = paramiko.Transport(('192.168.0.66', 22))
transport.connect(username='root', password='hadoop')
sftp = paramiko.SFTPClient.from_transport(transport)  #ftp+ssh

#将当前主机F:\学习\k8s\微服务、k8s文档\jb51.net.txt文件 放到 192.168.0.66/home/jb51.net.txt
sftp.put('F:\学习\k8s\微服务、k8s文档\jb51.net.txt', '/home/jb51.net.txt')
# 下载用get
# sftp.get('/home/jb51.net.txt', 'F:\学习\k8s\微服务、k8s文档\jb51.net.txt')
transport.close()

  • 效果验证
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@summer ~]# cd /home/
[root@summer home]# ll
total 8
-rw-r--r-- 1 root        root        4848 Dec 19 00:30 jb51.net.txt
drwx--x--x 5 summer summer  106 Dec 17 00:36 summer
[root@summer home]# pwd
/home
[root@summer home]# 
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-05-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
原来Python是这样连接远程主机的,你会吗?
在软件测试的过程中,涉及到远程Linux主机环境测试的时候,难免会遇到需要执行shell命令的场景,比如通过shell命令去配置一些环境或者去检查用例执行的结果等等,那么就是用到了比较常用的工具paramiko。
软测小生
2021/09/06
2.1K0
Python学习—paramiko模块实
paramiko模块提供了ssh及sft进行远程登录服务器执行命令和上传下载文件的功能。这是一个第三方的软件包,使用之前需要安装。
py3study
2020/01/08
3840
python paramiko 执行命令
http://wangwei007.blog.51cto.com/blog/68019/1058726
py3study
2020/01/14
1.2K0
Python 进行 SSH 操作,实现本地与服务器的链接,进行文件的上传和下载
我本地和服务器的连接一直使用的是 Xshell 5,而在与服务器进行文件操作的时候使用的是 Xshell 推荐安装的一个工具 Xftp 5,然而,昨天自己想着从服务器下载备份好的的数据库文件到本地的时候发现这个文件传输工具居然过期不能用了,好气啊!于是没办法(机智如我)只好用 Python 来实现 SSH 的连接,顺便从服务器批量下载一些文件,实现自动化。
Hopetree
2022/09/26
1.5K0
Python Paramiko实现sftp文件上传下载以及远程执行命令
Paramiko模块是基于Python实现的SSH远程安全连接,用于SSH远程执行命令、文件传输等功能。
py3study
2020/02/29
10K0
paramiko模块——ssh远程连接服务器并执行命令
https://www.cnblogs.com/ghylpb/p/12158061.html
GH
2020/03/19
3.1K0
paramiko模块
ssh是一个协议,OpenSSH是其中一个开源实现,paramiko是Python的一个库,实现了SSHv2协议(底层使用cryptography)。
Eric杂货铺
2020/09/24
1.3K0
批量执行Linux命令或者配置
在批量服务器密码统一的情况下使用: 参数介绍: -u   用户名 -p 密码 -P port -s  要执行的脚本 -c 要执行的命令 -f  要执行的服务器IP列表
用户1503405
2021/10/31
2.9K0
Python33 paramiko模块
需要打开cmd,通过 pip install paramiko 命令来安装paramiko模块。
py3study
2020/01/07
9810
Python建立ssh连接|paramiko实践
之前写了一篇Python调用系统命令的六种方法,但是执行linux命令时,需要在本地运行,如果想远程执行命令,就要用到另一个库paramiko。
吾非同
2020/12/17
2.7K0
Python 学习笔记 – Paramiko 模块
Python提供了一个Paramiko模块,允许我们通过SSH 对远程系统进行操作,上传和下载文件。他的使用很直观,下面直接看例子。
全栈程序员站长
2022/07/19
2400
python3 paramiko 远程执行 ssh 命令、上传文件、下载文件
在win10的系统下,本来想要python3直接调用ansible库进行远程执行的,但是很可惜,ansible是基于linux系统的ssh服务进行远程调用,不太兼容windows。 那么下面来使用paramiko库,直接手写一个ssh远程调用。
Devops海洋的渔夫
2019/06/15
5.9K0
Python远程连接主机之paramiko模块
Python的paramiko模块能够连接远程主机,并在该主机上执行命令,和该主机之间进行文件传输。paramiko支持用明文密码登录远程主机和秘钥登录。使用之前要安装一下这个模块哈,pip install paramiko,不会安装可以百度哈。
用户1432189
2018/09/05
2.4K0
Python远程连接主机之paramiko模块
基于python实现日志收集
另外需要实现建好本地外层路径,更改路径后在Linux下也可执行。也可以使用pyinstaller打包成exe执行。
py3study
2020/01/10
7440
Python实现Paramiko二次封装
Paramiko是一个用于执行SSH命令的Python第三方库,使用该库可实现自动化运维的所有任务,如下是一些常用代码的封装方式,多数代码为半成品,只是敲代码时的备份副本防止丢失,仅供参考,目前本人巡检百台设备完全无压力。
微软技术分享
2022/12/28
7300
Paramiko: SSH and SF
Paramiko 是一个用于python2.5或更高版本的实现了使用SSH2协议安全(加密与验证)的连接远程计算机的模块
py3study
2020/01/06
1.1K0
python 运行nmon使用说明
第一步: 安装:paramiko window安装方法:pip install paramiko
py3study
2020/01/06
1.3K0
python 利用paramiko批量管
paramiko是基于python实现的ssh2远程安全连接,支持秘钥认证,实现远程命令执行,文件传输,中间ssh代理等功能
py3study
2020/01/09
5310
python之ssh连接库paramik
  paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。
py3study
2020/01/08
1.3K0
python实现ssh客户端
使用用户名、密码方式,前提是曾经ssh登陆过远程机器,在用户目录的.ssh目录下的known_hosts有记录
py3study
2020/01/07
2K0
相关推荐
原来Python是这样连接远程主机的,你会吗?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验