####python——paramiko模块####

Paramiko是一个基于SSH协议的Python库,用于远程控制服务器执行命令和文件操作。本文详细介绍了如何使用Paramiko进行远程密码连接、批量密码连接、公钥私钥连接,以及文件的上传和下载操作。此外,还提到了设置命令行字体颜色的方法。
摘要由CSDN通过智能技术生成

1.什么是paramiko?
paramiko是一个基于ssh用于连接远程服务器做操作的模块,该模块可以进行远程执行命令或文件操作

###paramiko远程密码连接###
1.import paramiko #导入模块
2.client = paramiko.SSHClient( ) #创建一个ssh对象
3.client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) #首次连接时需要输入yea完成认证,这步是自动选择yes
4.连接主机。参数分别是主机ip,要连接的用户和用户密码
5.client.exec_command(‘要执行的命令’) # 连接成功后,在被连接的主机中执行命令,这个操作返回一个元组,元组中存在三个元素,分别为标准输入 标准输出 错误输出
6.stdin,stdout,stderr = client.exec_command(’’) #使用变量接受返回的内容
7.stdout.read( ).decode(‘utf-8’) #获取标准输出结果 decode(‘utf-8’) 返回结果中有中文时正常显示

import paramiko 
#ssh username@ip
client = paramiko.SSHClient()  #创建一个ssh对象
#解决的问题:如果之前没有连接过的ip(主机),会出现
"""
The authenticity of host '172.25.0.101 (172.25.0.101)' can't be established.
ECDSA key fingerprint is 9d:37:08:8e:a4:ad:45:b5:eb:69:6f:d2:88:d3:da:8c.
Are you sure you want to continue connecting (yes/no)? yes
"""
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())   # 自动选择yes
#连接服务器
client.connect(
    hostname='172.25.254.40',
    username='root',
    password='redhat'
)
#执行操作
#标准输入 标准输出 错误输出
stdin,stdout,stderr = client.exec_command('cat /ect/passwd')
#获取命令的执行结果
print(stdout.read().decode('utf-8')) 
client.close() # 关闭连接
 运行结果
 root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值