python paramiko实现ssh远程访问的方法
安装paramiko后,看下面例子:
import paramiko
#设置ssh连接的远程主机地址和端口
t=paramiko.Transport((ip,port))
#设置登录名和密码
t.connect(username=username,password=password)
#连接成功后打开一个channel
chan=t.open_session()
#设置会话超时时间
chan.settimeout(session_timeout)
#打开远程的terminal
chan.get_pty()
#激活terminal
chan.invoke_shell()
然后就可以通过chan.send('command')和chan.recv(recv_buffer)来远程执行命令以及本地获取反馈。
例如:
chan.send('pwd')
print chan.recv(65535)
重点是,有些命令执行的时间长,不适当的receive回来可能得不到想要的结果,可以使用time.sleep()进行等待,或使用一些条件循环。
例如:
代码如下:
str=chan.recv(recv_buffer)
while not str.endswith('#'):
str=chan.recv(recv_buffer)
相关推荐
-
使用paramiko远程执行命令、下发文件的实例
写部署脚本时,难免涉及到一些远程执行命令或者传输文件. 之前一直使用sh库,调用sh.ssh远程执行一些命令,sh.scp传输文件,但是实际使用中还是比较麻烦的,光是模拟用户登陆这一点,还需要单独定义方法模拟输入. 感受一下: from sh import ssh PASS = 'xxxx' def ssh_interact(line, stdin): line = line.strip() print(line) if line.endswith('password:'): stdin.put
-
python的paramiko模块实现远程控制和传输示例
本文介绍了python的paramiko模块实现远程控制和传输示例,分享给大家,具体如下: 1 安装 sudo pip install paramiko 2 ssh实现远程控制 #LINUX下执行shell ssh username@ip #输入密码后就可以对远程机器进行操作 ssh username@ip command #输入密码后远程机器就执行command ssh运行后,想退出,可以kill掉ssh进程. 3 paramiko实现ssh import paramiko hostname
-
python利用paramiko连接远程服务器执行命令的方法
python中的paramiko模块是用来实现ssh连接到远程服务器上的库,在进行连接的时候,可以用来执行命令,也可以用来上传文件. 1.得到一个连接的对象 在进行连接的时候,可以使用如下的代码: def connect(host): 'this is use the paramiko connect the host,return conn' ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddP
-
python paramiko实现ssh远程访问的方法
安装paramiko后,看下面例子: 复制代码 代码如下: import paramiko #设置ssh连接的远程主机地址和端口t=paramiko.Transport((ip,port))#设置登录名和密码t.connect(username=username,password=password)#连接成功后打开一个channelchan=t.open_session()#设置会话超时时间chan.settimeout(session_timeout)#打开远程的terminalchan.ge
-
Python实现建立SSH连接的方法
本文实例讲述了Python实现建立SSH连接的方法.分享给大家供大家参考.具体实现方法如下: 我需要实现一个Windows下远程连接到SSH服务器执行命令的功能,所以就在网上找资料.我的环境是:Windows7 64位,Python 2.7 32位.按照网上的说法,需要下载pycrypto和paramiko两个模块进行安装.最后下载的版本是pycrypto2.3和paramiko1.7.6. 安装过程也比较简单,先安装pycrypto后安装paramiko,解压后在命令提示符下切换到解压后的目录
-
python获取交互式ssh shell的方法
更新,最近在学unix环境编程,了解一下进程的创建过程,用最原始的方式实现了一个ssh命令的执行. #coding=utf8 ''' 用python实现了一个简单的shell,了解进程创建 类unix 环境下 fork和exec 两个系统调用完成进程的创建 ''' import sys, os def myspawn(cmdline): argv = cmdline.split() if len(argv) == 0: return program_file = argv[0] pid = os
-
python paramiko连接ssh实现命令
目录 paramiko 安装 原因 解决 执行命令 -秘钥 上传下载文件—用户名密码 上传下载文件-用户名秘钥 paramiko paramiko是一个用于做远程控制的模块,使用该模块可以对远程服务器进行命令或文件操作,值得一说的是,fabric和ansible内部的远程管理就是使用的paramiko来现实. 安装 pip install paramiko 模块使用 执行命令—用户名+密码 #!/usr/bin/env python #coding:utf-8 import paramiko #
-
python使用paramiko实现ssh的功能详解
个人认为python的paramiko模块是运维人员必学模块之一,其ssh登录功能是旅行居家必备工具. 安装paramiko很简单,pip install paramiko就搞定了,其依赖库会被一并安装. paramiko的官方站点在这里:http://www.paramiko.org/.有需要深入研究的可以阅读官方文档. paramiko模块提供了ssh及sft进行远程登录服务器执行命令和上传下载文件的功能. 一.基于用户名和密码的 sshclient 方式登录 # 建立一个sshclient
-
使用Python paramiko模块利用多线程实现ssh并发执行操作
1.paramiko概述 ssh是一个协议,OpenSSH是其中一个开源实现,paramiko是Python的一个库,实现了SSHv2协议(底层使用cryptography). 有了Paramiko以后,我们就可以在Python代码中直接使用SSH协议对远程服务器执行操作,而不是通过ssh命令对远程服务器进行操作. 由于paramiko属于第三方库,所以需要使用如下命令先行安装 2.安装paramiko pip install paramiko 3.常用方法 connect():实现远程服务器的
-
Python paramiko 模块浅谈与SSH主要功能模拟解析
疫情还没结束,小编只能宅在家里,哪哪也去不了,今天突发奇想给大家分享一篇教程关于Python paramiko 模块浅谈与SSH主要功能模拟解析. 大家都知道,通过SSH服务可以远程连接到Linux服务器,查看上面的日志状态,批量配置远程服务器,文件上传,文件下载等,Python的paramiko模块同样实现了这一功能. 首先我们需要安装这一模块,pycharm环境中如下操作 一,安装paramiko模块 PyCharm→Preferences→Project:项目名→Project Inter
-
Python自动连接ssh的方法
本文实例讲述了Python自动连接ssh的方法.分享给大家供大家参考.具体实现方法如下: #!/usr/bin/python #-*- coding:utf-8 -*- import sys, time, os try: import pexpect except ImportError: print """ You must install pexpect module """ sys.exit(1) addr_map = { 'v3' :('
-
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.con
-
ubuntu16.04安装ssh服务并实现远程访问的方法
一.查看是否安装了ssh服务 apt-cache policy openssh-client openssh-server ubuntu默认安装了openssh-client,openssh-server需要手动安装 二.安装ssh服务 apt-get install openssh-server 三.查看ssh服务的开启状况 ps -e|grep ssh 如果出现sshd,则ssh服务已开启.如果只有agent,则尚未开启成功 四.开启ssh服务 /etc/init.d/ssh start 五
随机推荐
- javascript操作excel生成报表示例
- Java concurrency之互斥锁_动力节点Java学院整理
- php数组键值用法实例分析
- 浅析PHP7新功能及语法变化总结
- C# Dynamic关键字之:解析dynamic就是Object
- JS学习之表格的排序简单实例
- Android AutoCompleteTextView控件基本用法示例
- 基于JavaScript实现鼠标悬浮弹出跟随鼠标移动的带箭头的信息层
- node.js中的fs.truncate方法使用说明
- JS模式之单例模式基本用法
- Nodejs如何复制文件
- SQL Server 2000的安全配置
- jQuery 1.2.x 升級 1.3.x 注意事项
- jQuery Ajax使用 全解析
- 重写javascript中window.confirm的行为
- Nginx虚拟主机多server_name的顺序问题
- php中取得URL的根域名的代码
- Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法
- c#对字符串操作的技巧小结
- PHP中防止SQL注入方法详解