首页 > 其他分享 >【paramiko】基于paramiko封装SSH连接服务器执行命令

【paramiko】基于paramiko封装SSH连接服务器执行命令

时间:2023-06-21 17:02:38浏览次数:48  
标签:执行命令 code stdout SSH 服务器 paramiko ssh

1、官方文档

paramiko · PyPI

Welcome to Paramiko’s documentation! — Paramiko documentation

 

2、安装

pip install paramiko

 

3、示例

import paramiko

# 建立一个sshclient对象
ssh = paramiko.SSHClient()

# 将信任的主机自动加入到host_allow列表,须放在connect方法前面
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

# 调用connect方法连接服务器
ssh.connect(hostname="172.16.1.166", port=22, username="test", password="123")

# 执行命令
stdin, stdout, stderr = ssh.exec_command("echo `date` && df -hl")

# 结果放到stdout中,如果有错误将放到stderr中
print(stdout.read().decode('utf-8'))

# recv_exit_status方法会一直阻塞直到命令执行完成
return_code = stdout.channel.recv_exit_status()

print("return_code:", return_code)

# 关闭连接
ssh.close()

 

 

 

 

参考链接:

Python_paramiko_与linux交互 - 不自在 - 博客园

python自动化第三方库之paramiko库:连接远程服务器并通过ssh协议远程执行命令 - 习久性成 - 博客园

标签:执行命令,code,stdout,SSH,服务器,paramiko,ssh
From: https://www.cnblogs.com/fireblackman/p/17496675.html

相关文章

  • 从linux免密码ssh登录到另外一个计算机
    一、从本地Linux做如下操作:  其中192.168.xx.xxx是远端的被登录的计算机1.进入.ssh目录: cd~/.ssh2.生成一对密钥: ssh-keygen-trsa3.发送公钥:    ssh-copy-id192.168.xx.xxx4.免密登录测试: ssh 192.168.xx.xxx 二、windows免密等Linux......
  • 基于SSH框架酒店管理系统
    一、需求分析1.1、系统管理 用户管理:对该系统的使用者即用户信息进行维护。 日志管理:为了系统的安全,对前台人员的导致业务数据更新的操作需要记录日志系统管理员可以定期查看和删除日志。 酒店人员权限管理:可对酒店各部门的员工进行权限的统一分配,以及更新操作。1.2、房客管理......
  • git 多分支,git远程仓库,ssh方式链接远程仓库,协同开发,冲突解决
    目录一、git多分支二、git远程仓库修改用户名username三、ssh方式链接远程仓库具体操作-1先删除原来使用https链接的remote-2增加一个跟远程仓库的链接origin---》是ssh协议的-3本地机器,生成公钥私钥[使用命令生成]-4把公钥配置在gitee上【打开公钥】--》可以配多个-5以......
  • 05 git 多分支,远程仓库,ssh方式链接远程仓库,协同开发,冲突解决
    1git多分支#分支操作0查看分支gitbranch#本地gitbranch-a#本地和远程1创建分支gitbranchdev2切换分支gitcheckout分支名字3删除分支gitbranch-d分支名4合并分支操作步骤 gitbranchdevgitcheckoutdev#dev分支操作......
  • 【已解决】XFTP 连接提示“SFTP 子系统申请已拒绝,请确保SSH连接的SFTP子系统设置有效
    一、报错信息报错:SFTP子系统申请已拒绝请确保SSH连接的SFTP子系统设置有效二、错误原因是ssh配置做了限制,修改一下配置文件就好了。三、解决方式修改 sshd_config 配置文件。vim/etc/ssh/sshd_config如果配置文件中不存在以下代码,找个位置添加上即可。......
  • 详解在 Linux 启动时,如何自动执行命令或脚本
    我一直很好奇,在启动 Linux 系统并登录的过程中到底发生了什么事情。按下开机键或启动一个虚拟机,你就启动了一系列事件,之后会进入到一个功能完备的系统中,有时,这个过程不到一分钟。当你注销或者关机时,也是这样。我一直很好奇,在启动Linux系统并登录的过程中到底发生了什......
  • 非root用户实现ssh免密码连接创建公钥
    非root用户实现ssh免密码连接创建公钥ssh-keygen-trsa,一直回车,会显示公钥位置【注意当前服务器有id_rsa.pub那么就不用生成】文件名作用known_hosts记录ssh访问过计算机的公钥(publickey)id_rsa生成的私钥id_rsa.pub生成的公钥authorized_keys......
  • The remote SSH server rejected X11 forwarding request.“远程SSH服务器拒绝X11转发
       启动kkFileView后弹出提醒无法正常访问服务器, 重启服务器时,需要安装出现如下提醒方法一、 X11forwarding依赖xorg-x11-xauth软件包,需要先安装xorg-x11-xauth软件包。1.使用Xshell执行下面代码[root@VM-4-11-centos~]#yuminstallxorg-x11-xauth  ......
  • linux免密登录 .ssh 密钥
    1、密钥对制作yum-yinstallsshpass免交互创建密钥对ssh-keygen-tdsa-f~/.ssh/id_dsa-P""ll.ssh/2、密钥分发ssh-copy-id-i~/.ssh/[email protected].$ip免交互方式批量分发公钥##!/bin/bash## createkeyp......
  • shell 登录linux服务器并执行命令
    注意里边(eeooff区域)不能定义变量#!/bin/bashscpdist.zipm-p:/data/wwwroot/medical-shop-websshm-p>/dev/null2>&1<<eeooffcd/data/wwwrootrm-rfdist_bakmvdistdist_bakunzipdist.zipexiteeooffechodone!进入容器操作不能用次方法,应该用docker......