python连接ssh_Python建立SSH连接与使用方法
paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接
安装过程也比较简单,先安装pycrypto后安装paramiko,解压后在命令提示符下切换到解压后的目录,输入python setup.py install就可以了。另外安装pycrypto前需要先安装mingw,不然会因为缺少编译器而提示缺少一个BAT文件。安装好mingw后,需要在Python安装目录下的Lib\distutils\文件夹里建立一个distutils.cfg文件,文件内容为:
[build]
compiler=mingw32
由于windows下安装pycrypto 经常出现,如果出错,本处笔者,提供一个快捷方法:
pycrypto下载稳定已编译版本:http://www.voidspace.org.uk/python/modules.shtml#pycrypto (到这个位置下载对应的版本:pycrypto-2.6.win32-py2.7)
安装好后,再通过pip install paramiko来安装paramiko模块
当paramiko模块安装好后,可通过import paramiko进行测试验证。
安装好以后就可以编写写代码了。由于我的SSH服务器只需要用户名和密码就可以连接,应该说属于最简单的一种了。
stdout.readlines()返回一个列表,一般来说,Linux命令的每行输出存储为一个元素,且已经带了换行符。
import paramiko
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect('192.168.118.x', 22, username='xx', password='xx', timeout=10)
cmd = ['ls -l','echo hello!']#你要执行的命令列表
for m in cmd:
stdin, stdout, stderr = client.exec_command(m)
for std in stdout.readlines():
print std
client.close()
使用SSHClient对象的这个方法执行例如ls,pwd等命令的时候,都执行的还不错。
但是cd /path这个命令就有点问题了,发现cd到其他路径下,但是使用pwd发现还是在登录的时候的默认路径,/home/
相当于没有执行cd命令,这个时候就要把后续的想要执行的命令和cd放在同一个字符串中传入exec_command方法中才会生效。
例如:
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect('IP', username='username', password='password', timeout=5)
client.exec_command('cd /home//xxx/yyy; ls -al')
这时会列出yyy的文件列表
【linux】——FreeBSD 建立 SSH 连接慢的解决方法
一般在编写 linux 程序的时候,会使用 SecureCRT 或者 xshell 等工具远程登录到 linux 服务器上.最近发现在建立 SSH 连接的时候,非常慢,但是建立连接成功之后可以正常使用 ...
更改计算机名及使用Secure CRT ssh连接用户添加方法汇总
修改计算机名 更改/etc/sysconfig下的network文件,在提示符下输入vi /etc/sysconfig/network,然后将HOSTNAME后面的值改为想要设置的主机名. 开启SS ...
ssh 连接缓慢解决方法
ssh 连接缓慢解决方法 摘自:https://blog.csdn.net/qq_14821541/article/details/61915589 2017年03月13日 12:00:38 所以怎样 ...
诊断并解决CentOS SSH连接慢的方法
诊断并解决CentOS SSH连接慢的方法: http://os.51cto.com/art/201507/484743.htm
Python实现SSH连接远程服务器
首先需要安装paramiko模块 #-*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import paramiko ssh = p ...
【Python】 SSH连接的paramiko
paramiko *paramiko需要PyCrypto模块的支持 paramiko支持通过SSH协议进行一些操作,比如远程执行命令,上下传文件等等 用法: ① 远程命令 ssh = paramiko ...
Python通过ssh连接服务器并执行命令
[本文出自天外归云的博客园] 脚本示例如下: # coding:utf-8 import time,paramiko,re,StringIO def exec_shell(command): ''' ...
Termux和Ubuntu建立ssh连接
1 本机环境 Android:Termux v0.77 作为客户端 Linux:Ubuntu 19.10 作为服务器 两者处于同一局域网下 2 ssh安装 2.1 Termux pkg install ...
ssh连接失败解决方法
执行如下命令: ssh-keygen -t dsa -P '' -f /etc/ssh/ssh_host_dsa_key ssh-keygen -t rsa -P '' -f /etc/ssh/ssh ...
随机推荐
spring统一日志管理,切面(@Aspect),注解式日志管理
step1 开启切面编程
mysql主从配置(基于mysql5.5.x)
安装mysql数据库主从复制,步骤如下:1.主从服务器分别作以下准备: 1.1.数据库版本完全一致 1.2.修改root的密码, 不改也可以 2.修改主服务器master #vi /etc ...
[转]安装openoffice,并且配置为windows服务
[转]安装openoffice,并且配置为windows服务 http://blog.csdn.net/zzzz3621/article/details/18400277 下载windows reso ...
Medium上关于git的文章
rebase和merge的正确使用时机 https://medium.com/@porteneuve/getting-solid-at-git-rebase-vs-merge-4fa1a48c53aa ...
jquery的事件绑定
暂时有 bind(),live(),delegate(),on() 这四个事件监听函数 对应的4个事件解除函数分别是: unbind(),die(),undelegate(),off() bind:向 ...
DOM方法
DOM常用方法: 方法 描述 getElementById() 返回带有指定 ID 的元素. getElementsByTagName() 返回包含带有指定标签名称的所有元素的节点列表(集合/节点数组 ...
位运算 (&;|)与--或 一位数组表示多种意思~~ 与--或
var arr:Array = [0,1,2,4,8,16] var gate:int = 0; gate |= arr[1] gate |= arr[2] gate |= arr[3] trace( ...
EVM项目管理
详细参照:https://zhuanlan.zhihu.com/p/33925657 报告日实际: 按预算完成 按原始cpi完成 按时完成
【HNOI2018】排列
[HNOI2018]排列 神仙贪心题. 题目说这么大堆东西就是想告诉你这是个森林,选了\(v\)的父亲后才能选\(v\). 我们设\(w_v\)为\(v\)所在联通块权值和,\(size_v\)表示\ ...
module模块和包(十七)
在前面的几个章节中我们脚本上是用 python 解释器来编程,如果你从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了. 为此 Python 提供了一个办法,把这些定义存放在文 ...
python连接ssh_Python建立SSH连接与使用方法相关推荐
- python远程连接ssh_Python实现SSH连接远程服务器
首先需要安装paramiko模块 #-*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import paramiko ssh = p ...
- python ssh连接_python 建立SSH连接发送指令
import paramiko import select def link_server_client2(serverip, user, pwd): # 进行连接 print('---------- ...
- unity连接linux服务器,C#编程之C#通过SharpSSH库与Linux服务器建立SSH连接并执行命令...
本文主要向大家介绍了C#编程之C#通过SharpSSH库与Linux服务器建立SSH连接并执行命令,通过具体的内容向大家展示,希望对大家学习C#编程有所帮助. 在Unity3D项目开发工具时需要用到S ...
- python利用paramiko实现ssh连接及远程执行命令
python3.6, windows下 1,安装paramiko模块 依赖cryptography:使用命令easy_install安装该模块时,如果报错"...microsoft visu ...
- c# ssh到linux,C#通过SharpSSH库与Linux服务器建立SSH连接并执行命令
在Unity3D项目开发工具时需要用到SSH连接远程Linux服务器执行命令,找到SharpSSH链接库后,通过此方法就可使用./// /// SSH登录远程Linux服务器,并运行指令 /// // ...
- mysql ssh .net_c# – 使用SSH.NET库与MySQL建立SSH连接
通过使用C#与 MySQL数据库的SSH连接,我获得了使用此库进行连接的链接. 这是图书馆的LINK,你会发现这很有趣,因为你不需要手动打开SSH频道. 这是一个非常详细的库,有很多功能,但我想要做的 ...
- VirtualBox与DockerToolBox使用轻量级Linux 系统Boot2Docker建立SSH连接
VirtualBox采用轻量级Linux系统Boot2Docker通过SSH连接来访问需要做相应的设置(Boot2Docker本身是集成了SSH服务的),所以对于DockerToolBox而言使用Bo ...
- pycharm远程连接服务器防止ssh连接中断
pycharm远程连接服务器 1.安装pycharm专业版 2.打开实例,拿到用户名和密码 例如ssh -p 38076 root@region-1.autodl.com 密码:xxxxxxx 380 ...
- mysql 禁用ssl连接_MySQL建立SSL连接问题,设置useSSL=false显式禁用SSL,或者设置useSSL=true...
You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide tr ...
- mac下宿主机与virtualbox中的Ubuntu建立ssh连接
目的:在Mac book上安装Linux虚拟机,然后能让该Linux虚拟机通过该MAC上网,当然了本身我的AMC Book是通过Wi-Fi上网的. 1.首先安装virtualbox 2.再virtu ...
最新文章
- java作图哪个是x轴_java – 主要以X和Y轴绘制的圆圈,为什么?
- 【 FPGA 】Vivado中常用的5个Tcl命令
- 计算几何算法概览 (一)
- ecos代码分析(2)
- oracle备库重启后失去连接,关于dataguard备库宕机后重启后的问题
- Lombok@Builder和@NoArgsConstructor冲突
- 区块链、自动驾驶、人工智能鏖战开始 谁将成为下一个风口?
- spring mvc学习(38):Unknow tag(c:forEach)错误解决办法,jstl.jar包以及standard.jar包下载与导入
- js获取一个月份最大天数和获取月的最后一天
- 您的618快递正在燃烧?12吨快递货车高速上起火,网友:代入感极强!
- Asp.net MVC验证哪些事(2)-- 验证规则总结以及使用
- 蒙特卡洛模拟方法的matlab实现
- windows7配置java环境变量
- 论文阅读笔记:A brief introduction to weakly supervised learning
- C# AHP层次分析法计算特征向量(和法、根法、幂法)
- SAS硬盘-神级高性能硬件盘点
- 新美域杂志新美域杂志社新美域编辑部2022年第6期目录
- 川大高分子为什么不学c语言,四川大学软件工程考研难吗
- 数据驱动测试一:使用TestNG进行数据驱动
- 微信中打开app store连接