Python paramiko模块(实现ssh)

开发堡垒机之前,先来学习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()

原文地址:https://blog.51cto.com/12643266/2422861

时间: 2024-11-08 21:56:10

Python paramiko模块(实现ssh)的相关文章

Python Paramiko模块安装和使用

1.简介 大家会发现,常见的解决方法都会需要对远程服务器必要的配置,如果远程服务器只有一两台还好说,如果有N台,还需要逐台进行配置,或者需要使用代码进行以上操作时,上面的办法就不太方便了. 使用paramiko可以很好的解决以上问题,比起前面的方法,它仅需要在本地上安装相应的软件(python以及PyCrypto),对远程服务器没有配置要求,对于连接多台服务器,进行复杂的连接操作特别有帮助. 2.安装 安装paramiko有两个先决条件,python和另外一个名为PyCrypto的模块. 通常安

python paramiko模块sftp异常:paramiko.ssh_exception.SSHException: EOF during negotiation

python paramiko模块ftp报错: Traceback (most recent call last):File "<stdin>", line 1, in <module>File "/usr/lib/python2.7/dist-packages/paramiko/sftp_client.py", line 170, in from_transportreturn cls(chan)File "/usr/lib/py

Python paramiko 模块

paramiko模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: import paramiko # 创建SSH对象 ssh = paramiko.SSHClient() # 允许连接不在know_hosts文件中的主机 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 连接服务器 ssh.connect(hostname='host', port=po

使用python的Paramiko模块登陆SSH

paramiko是用Python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. python的paramiko模块可以方便的实现ssh登录,并执行命令. 1. paramiko模块安装 1.1安装pycrypto库 下载地址请戳这里:http://download.csdn.net/detail/oatnehc/8825715: pycrypto库的主页在这里:https://www.dlitz.net/software/pycrypto/ pycrypto库

python paramiko模块幸运飞艇平台搭建实现跨平台SSH

需求:在幸运飞艇平台搭建论坛:haozbbs.com Q1446595067 管理用户端(实际上所有支持Python的OS都可以)批量对远程服务器进行部署.命令执行.文件传输.搭建测试环境等. 一般的,我们用Putty,Xshell,Winscp都可以实现SSH登录,但是如果出现N台服务器,我们按照原来的方法,需要逐个登录配置,这会花费一定的时间.实际上,Python的paramiko模块就可以实现这种操作.其原理就是模拟SSH客户端,与SSH服务端进行交互,实现登录与命令的实时传输.Param

python paramiko模块SSH自动登录linux系统进行操作

1). Linux系统首先要开启SSH服务:service ssh status 如果没安装的话,则要:apt-get install openssh-server service ssh restart 2). pip install paramiko example 1: import paramikossh = paramiko.SSHClient()ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())ssh.connect('

python paramiko模块

paramiko模块是python中很重要的模块,他的功能呢主要分为两大块功能.一个是模拟SSH功能登录到远程主机上执行命令.一个是模拟SFTP功能传输文件. paramiko支持密码登陆方式和免密码的私钥登录方式. 密码登陆方式代码如下: #!/usr/bin/env python # coding:utf-8 import paramiko # 创建SSH对象 ssh = paramiko.SSHClient() # 访问未知主机时候的策略,允许连接不在know_hosts文件中的主机 ss

python paramiko模块简介

一:简介 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. 由于使用的是python这样的能够跨平台运行的语言,所以所有python支持的平台,如Linux, Solaris, BSD, MacOS X, Windows等,paramiko都可以支持,因此,如果需要使用SSH从一个平台连接到另外一个平台,进行一系列的操作时,paramiko是最佳工具之一. 举个常见的例子,现有这样的需求:需要使用windows客户端,远程连接到L

Python paramiko模块基本使用(一)

使用paramiko模块登录远程主机,对日志进行统计分析. import paramiko def batch_count(days, hours, ips, user, passwd, source_path, dest_path, port=22): for ip in ips: count(days, hours, ip, user, passwd, source_path, dest_path, port=22) def count(days, hours, ip, username,