paramiko是什么?
paramiko是一个基于ssh用于做远程控制的模块,使用该模块可以对远程服务器进行命令或文件操作
01.paramiko远程密码连接
import paramiko #导入模块
client = paramiko.SSHClient() #创建一个ssh对象,类似于 ssh username@ip
client.set_missing_host_key_policy(paramiko.AutoAddPolicy() #自动选择yes
# 解决的问题:如果之前没有连接过的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.connect(
hostname='172.25.0.101',
username='root',
password='redhat'
)
# 执行操作
stdin,stdout,stderr = client.exec_command('pwd')
# 通过ssh连接成功之后,在被连接的主机中执行命令。这个操作返回一个元组,元组存在三个元素,分别为标准输入,标准输出,错误输出。
print(stdout.read().decode('utf-8')) #对标准输出结果进行获取ÿ