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 ...
随机推荐
- form表单元素设置只读
form表单元素设置只读 CreateTime--2017年5月5日11:42:41 Author:Marydon 1.设置文本框只读 <!-- 方法一:简写 --> <inpu ...
- PHP递归方式把一个数组里面的null转换为空字符串”的方法
在一些接口的调用中,直接查询数据库出来的字段可能为null字段,但是为了简便前端的判断,需要把null转换成空字符串'',这个时候就需要递归的方式进行.直接上代码如下: //递归方式把数组或字符串 n ...
- Got fatal error 1236 from master when reading data from binary log: 'Could not find first log file name in binary log index file'
setup slave from backup i got error Got fatal error 1236 from master when reading data from binary l ...
- solr 查询参数说明
solr 查询参数说明
- 网页调用本地程序(Windows下浏览器全兼容)
用网页调用本地应用程序的思路是,先进行注册表注册自定义一个URL Protocol协议,再利用URL Protocol实现网页调用本地应用程序. 1.先写一个注册表文件,将其保存为.reg后缀的注册表 ...
- 解决Enter键与input 、a标签触发的事件的冲突
无论是 <button type="button" onclick="console.log('123');">123</button> ...
- 如何编写安全的PHP代码
转于:http://www.nowamagic.net/php/php_HowToWriteSafePhpCode.php
- plink参数说明
Plink: command-line connection utilityRelease 0.67Usage: plink [options] [user@]host [command] ...
- Struts2源码阅读(一)_Struts2框架流程概述
1. Struts2架构图 当外部的httpservletrequest到来时 ,初始到了servlet容器(所以虽然Servlet和Action是解耦合的,但是Action依旧能够通过httpse ...
- vim 创建文件自动生成头部注释
知识点: 1. autocmd命令: 当读写一个文件时,自动执行指定的命令; 2. autocmd event: BufNewFile 当文件不存在时开始写文件; 3. exec命令 execute命 ...