专栏首页python3Python paramiko模块(实现

Python paramiko模块(实现

开发堡垒机之前,先来学习Python的paramiko模块,该模块基于SSH用于连接远程服务器并执行相关操作

安装paramiko模块

pip3 install paramiko

基于用户密码方式

import paramiko

# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname="10.0.0.200", port=22, username='root', password='1')

# 执行命令
# stdin:标准输入(就是你输入的命令);stdout:标准输出(就是命令执行结果);stderr:标准错误(命令执行过程中如果出错了就把错误打到这里),stdout和stderr仅会输出一个
stdin, stdout, stderr = ssh.exec_command('df')
# 获取命令结果
result = (stdout.read().decode('utf-8'))   # 这个有问题,如果执行的命令是错误的,会不显示错误,可以修改一下,先判断stdout有没有值,如果输出没有,就显示错误
print(result)
# 关闭连接
ssh.close()

基于公钥密钥连接

import paramiko

# 指定私钥路径
private_key = paramiko.RSAKey.from_private_key_file('/root/.ssh/id_rsa')

# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='10.0.0.171', port=22, username='root', pkey=private_key)

# 执行命令
stdin, stdout, stderr = ssh.exec_command('df')
# 获取命令结果
result = stdout.read()
print(result.decode())
# 关闭连接
ssh.close()

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python ssh 远程执行shell

    py3study
  • Python paramiko模块的安装

    paramiko是Python语言编写的遵循SSH2协议,支持加密和认证方式,连接远程服务器执行命令或者上传下载文件。

    py3study
  • python paramiko 问题总结

    SSHClient is the main class provided by the paramkio module. It provides the bas...

    py3study
  • python安装需要安装paramiko

    1.最近手头有个脚本用于远程批量传输文件的。由于系统本身环境兼容不是很好,所以开始升级配置环境。

    py3study
  • AI当自强:独家揭秘旷视自研人工智能算法平台Brain++

    如果说算法模型是果实,那么开发它的环境和框架就是培育果树的土壤。尽管平时在开发中,框架和底层环境没有那么引人瞩目,但没有这些底层技术的支持,优秀的思路和创意也就...

    机器之心
  • 1-STM32带你入坑系列(STM32介绍)

     由于自己的物联网开发板上的单片机是用的STM32,但是有些朋友没有用过,所以我将用这块开发板,带着大家入门STM32

    杨奉武
  • 一条更新语句如何执行

    其实更新语句和查询语句的流程是基本一样的,但是他其中不一样的是涉及两个日志模块,也就是我们经常提到的redo log(重做日志)和binlog(归档日志)。

    小土豆Yuki
  • 基于Python实现对各种数据文件的操作

    更多参考:https://docs.python.org/3/tutorial/inputoutput.html#reading-and-writing-fil...

    1480
  • 从SAP最佳业务实践看企业管理(47)-SD-退货检测

    有人说,我们是做药材、食品生意的,按说售出去的商品概不退货,但是碰上难缠的客户要退货,没办法,谁让客户是大爷呢,那只能按客户的意思给退货,但是退回来的东西,必须...

    SAP最佳业务实践
  • 你用过的网站前端优化的技术有哪些?

    唐怀瑟

扫码关注云+社区

领取腾讯云代金券