paramiko小记

1、简介 

  paramiko是基于python实现的SSH2远程安全连接,支持验证密钥方式。可以实现远程执行命令,文件传输,中间SSH代理等功能。

 


2、安装

  安装paramiko有两个先决条件,python和另外一个名为PyCrypto的模块。

  通常安装标准的python模块,只需要在模块的根目录下运行:

python setup.py build

python setup.py install

 

2.1 PyCrypto安装

wget http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.6.tar.gz

tar -zxvf pycrypto-2.6.tar.gz

cd pycrypto-2.6/

python setup.py build && python setup.py install

  测试:
python>> import Crypto

 

2.2 paramiko安装


wget http://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gz

tar xvzf paramiko-1.7.7.1.tar.gz

cd paramiko-1.7.7.1/

python setup.py build && python setup.py install

Crypto error: 'module' object has no attribute 'HAVE_DECL_MPZ_POWM_SEC'

  测试:
python>> import paramiko

  

3、使用

3.1 执行远程命令

#!/usr/bin/python

import paramiko

 

ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect("host",22,"user", "pwd")

stdin, stdout, stderr = ssh.exec_command("cmd")

print stdout.readlines()

ssh.close()

 

3.2 上传文件到远程

#!/usr/bin/python

import paramiko

 

t = paramiko.Transport(("host",22))

t.connect(username = "user", password = "pwd")

sftp = paramiko.SFTPClient.from_transport(t)

remotepath='/tmp/test.txt'

localpath='/tmp/test.txt'

sftp.put(localpath,remotepath)

t.close()

 

 

3.3 从远程下载文件

#!/usr/bin/python

import paramiko

 

t = paramiko.Transport(("host",22))

t.connect(username = "user", password = "pwd")

sftp = paramiko.SFTPClient.from_transport(t)

remotepath='/tmp/test.txt'

localpath='/tmp/test.txt'

sftp.get(remotepath, localpath)

t.close()

 

你可能感兴趣的:(paramiko小记)