python中paramiko的安装
windows下安装并使用Python的SSH模块(paramiko+pycrypto+ecdsa)
安装这个比较麻烦,需要本地编译,要装vs或gcc还有一堆配置,还不一定能编译成功。(网上能搜到安装步骤)
建议直接下载已编译版: http://www.voidspace.org.uk/python/modules.shtml#pycrypto
直接下载并安装既可。
(注:crypto有java和C++版)
2、安装ecdsa
看很多博客没有提到这个库,但我执行paramiko时,提示找不到ecdsa模块。
下载:https://pypi.python.org/pypi/ecdsa/0.9 ,解压到一个目录,目录中有一个setup.py。
安装比较简单,windows下直接在刚才解压后的目录执行:python setup.py install
3.安装paramiko
与安装ecdsa类型,只是打开下载页面很慢。。。
下载: https://github.com/paramiko/paramiko#,
安装步骤同ecdsa
注:1、所有另外安装的第三方库,如果不特指定安装后库目录的话,将默认保存到 %PYTHON_HOME%\Lib\site-packages下。
2、python大小写敏感,对模块名也是。
3、Crypto可以提供常见的加解密算法,如:RSA、RC4、DSA、DES
测试例子:
- # _*_ coding:UTF-8 _*_
- def t5():
- '''''Crypto MD5'''
- from Crypto.Hash import MD5
- h = MD5.new()
- h.update(b'Hello')
- print h.hexdigest()
- def t6():
- import paramiko
- hostname = '192.168.9.57'
- port = 22
- user = 'root'
- passwd = '123456'
- paramiko.util.log_to_file('paramiko.log')
- s = paramiko.SSHClient()
- s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
- s.connect(hostname=hostname,port=port,username=user, password=passwd)
- #stdin,stdout,stderr=s.exec_command('pwd')
- stdin,stdout,stderr=s.exec_command('cat /etc/passwd | grep root:x:0:0:root', timeout=5)
- #print stdout.read()
- lines = stdout.readlines()
- for i in lines:
- print splitline(i)
- #print i,
- s.close()
- def splitline(line='', ch=':'):
- tmp = line[0:len(line)-1]
- ss = tmp.split(ch)
- ret = ''
- for i in ss:
- ret += i
- ret += ' '
- #print i + '===',
- return ret
- if __name__ == "__main__":
- #t7()
- t6()
- #t5()
# _*_ coding:UTF-8 _*_ def t5():
'''Crypto MD5'''
from Crypto.Hash import MD5
h = MD5.new()
h.update(b'Hello')
print h.hexdigest() def t6():
import paramiko hostname = '192.168.9.57'
port = 22
user = 'root'
passwd = '123456' paramiko.util.log_to_file('paramiko.log')
s = paramiko.SSHClient()
s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
s.connect(hostname=hostname,port=port,username=user, password=passwd)
#stdin,stdout,stderr=s.exec_command('pwd')
stdin,stdout,stderr=s.exec_command('cat /etc/passwd | grep root:x:0:0:root', timeout=5)
#print stdout.read()
lines = stdout.readlines()
for i in lines:
print splitline(i)
#print i,
s.close() def splitline(line='', ch=':'):
tmp = line[0:len(line)-1]
ss = tmp.split(ch)
ret = ''
for i in ss:
ret += i
ret += ' '
#print i + '===',
return ret if __name__ == "__main__":
#t7()
t6()
#t5()
参考文章:
http://blog.chinaunix.net/uid-24917554-id-3476396.html
http://lili-xiang.iteye.com/blog/1796640
api:
https://www.dlitz.net/software/pycrypto/api/current/ https://www.dlitz.net/software/pycrypto/doc/
http://docs.paramiko.org/
python中paramiko的安装的更多相关文章
- python中paramiko模块的使用
paramiko是python一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接1.可以远程操作服务器文件 例如: df:查看磁盘使用情况 mkdir:创建目录 mv/cp/mk ...
- 关于python中PIL的安装
python 的PIL安装是一件很蛋痛的事, 如果你要在python 中使用图型程序那怕只是将个图片从二进制流中存盘(例如使用Scrapy 爬网存图),那么都会使用到 PIL 这库,而这个库是出名的难 ...
- python中pip的安装
1.下载路径如下 https://pypi.python.org/simple/ 在其中查找到pip的安装包:然后找到路径 https://pypi.python.org/simple/pip/ 2. ...
- python中requests已安装却仍报No module named requests错的原因
调用pip list可见已经成功安装了: requests 但是在运行时仍报错: userdeMacBook-Pro:xiaohui user$ python test_web.py Tracebac ...
- python中使用pip安装报错:Fatal error in launcher... 解决方法
python安装了2和3版本在 cmd 中用pip报的错误为:Fatal error in launcher:Unable to create process using 这是因为你安装了python ...
- 关于python中第三方库安装方法和问题解决
一.安装方法 方法一: 1.管理员身份启动命令行(运行--->cmd) 2.pip install 库的绝对路径和库的详细名称 :或者运用cd命令跳转到下载好的库所在的位置然后pip insta ...
- Python中的pip安装与使用
配置python的环境变量 我们在我的电脑右击->属性->高级系统设置看到环境变量 然后我们点击环境变量,找到系统变量中的Path变量然后双击他新建一项,值为我们安装的python的pyt ...
- Python中Paramiko协程方式详解
什么是协程 协程我们可以看做是一种用户空间的线程. 操作系统对齐存在一无所知,需要用户自己去调度. 比如说进程,线程操作系统都是知道它们存在的.协程的话是用户空间的线程,操作系统是不知道的. 为什么要 ...
- python中的pip安装
windows下安装PIP 当前环境(windows 7,python安装路径为c:\Python) 1.首先到官网下载(https://pypi.python.org/pypi/setuptools ...
随机推荐
- 〖Android〗把CM(Android)源代码导入eclipse的正确方法(2013-7-3)
1. 首先应当使CM代码成功编译过一次: cd /path/to/cm . build/envsetup lunch full-eng mka 2. 配置eclipse开发的基本环境 cd /path ...
- 机器学习数学基础- gradient descent算法(上)
为什么要了解点数学基础 学习大数据分布式计算时多少会涉及到机器学习的算法,所以理解一些机器学习基础,有助于理解大数据分布式计算系统(比如spark)的设计.机器学习中一个常见的就是gradient d ...
- Linux 网桥配置命令:brctl
Linux网关模式下将有线LAN和无线LAN共享网段实现局域网内互联: 思路其实很简单:就是将虚拟出一个bridge口,将对应的有线LAN和无线LAN都绑定在这个虚拟bridge口上,并给这个brid ...
- Appium完整安装教程
Appium安装教程 发布时间: 2014-12-11 10:34 作者: 柒月 来源: 51Testing软件测试网采编 字体: 小 中 大 | 上一篇 下一篇 | 打印 | ...
- linux动态链接库导出函数控制
windows 环境的vc的话,可以方便的指定__declspec(dllexport) 关键字来控制是否把dll中的函数导出.我也来测试一下linux下面是如何做的:先看gcc 和ld的相关选项 = ...
- 新浪微博XSS攻击事件
http://blog.csdn.net/terryzero/article/details/6575078 6月28日20时14分左右开始,新浪微博出现了一次比较大的XSS攻击事件.大量用户自动发送 ...
- iOS官方文档阅读 基本格式指北
一些关键词作用 NS_AVAILABLE 表示可用 如 NS_AVAILABLE(NA, 6_0);例如上面这句就是表示 该方法在6.0系统后可用 如果在6.0以下的系统用不了的 或者直接崩溃. NS ...
- Spring Cloud(五):熔断监控Hystrix Dashboard和Turbine
Hystrix-dashboard是一款针对Hystrix进行实时监控的工具,通过Hystrix Dashboard我们可以在直观地看到各Hystrix Command的请求响应时间, 请求成功率等数 ...
- Java类载入器(一)——类载入器层次与模型
类载入器 虚拟机设计团队把类载入阶段中的"通过一个类的全限定名来获取描写叙述此类的二进制字节流"这个动作放到Java虚拟机外部去实现.以便让应用程序自己决定怎样去获取所须要的类 ...
- tcpdump常用参数说明
(一).学习tcpdump的5个参数 初次使用tcpdump时,使用tcpdump -h命令可以看到它有数十个参数. 根据我们在运维工作中的经验,掌握tcpdump以下5个参数即可满足大部分的工作需要 ...