Python学习之十_paramiko的简单学习


简介

pywinrm 是python用于连接访问windows的工具
paramiko 是python用于连接访问linux的工具

ansible等工具很多也是基于类似的组件进行的处理
连接不同的系统进行命令行的操作.

paramiko的简介

paramiko是用python语言写的一个模块,
遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。

可以进行ssh的连接命令执行以及ftp的文件下载与上传

安装与使用-ssh

import paramiko

# 第一步实例化 SSHClient,获取对象
ssh = paramiko.SSHClient()

# 设置自动添加策略,不添加的话如果不在本地know_hosts文件记录的主机则无法连接
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

# 连接远程主机
ssh.connect(hostname="10.110.xxx.xxx",port=22,username="root",password="xxxxx")

# 建立通道并执行命令 stdout 为正确的输出  stderr为错误的输出
ssh_in,ssh_out,ssh_error = ssh.exec_command('ps -ef')


res,error = ssh_out.read(),ssh_error.read()
result = res if res else error
print(result.decode())

ssh.close()

安装与使用-sftp

import paramiko
import os
transport = paramiko.Transport(('10.110.xxx.xxx',22))
transport.connect( username='root',password='xxxx')
ftp = paramiko.SFTPClient.from_transport(transport)
print(str(ftp))

ftp.get('/pg_hba.conf', r'F:\zhaobsh\pg_hba.conf')
# 注意 我这边必须得有  F:\zhaobsh\pg_hba.conf  这个文件才能成功.