paramiko是用python写的一个模块,遵循ssh2协议,支持以加密和认证的方式,进行远程服务器的连接。利用该模块,可以方便的进行ssh连接和sftp协议进行sftp文件传输以及远程命令执行。
通过安装包安装:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
wget http: / / ftp.dlitz.net / pub / dlitz / crypto / pycrypto / pycrypto - 2.6 .tar.gz
wget http: / / www.lag.net / paramiko / download / paramiko - 1.7 . 7.1 .tar.gz
tar - zxvf pycrypto - 2.6 .tar.gz
cd pycrypto - 2.6 /
python setup.py build && python setup.py install
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
|
yum安装,简单省事:
1
|
yum install python - paramiko - y
|
简单使用:从远程服务器拷贝文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#coding=utf-8
import paramiko, os
def remote_scp( type , host_ip, remote_path, local_path, username, password):
ssh_port = 22
try :
conn = paramiko.transport((host_ip, ssh_port))
conn.connect(username = username, password = password)
sftp = paramiko.sftpclient.from_transport(conn)
if type = = 'remoteread' :
if not local_path:
filename = os.path.split(remote_path)
local_path = os.path.join( '/tmp' , filename[ 1 ])
sftp.get(remote_path, local_path)
if type = = "remotewrite" :
sftp.put(local_path, remote_path)
conn.close()
return true
except exception:
return false
|
通过传递操作类型,主机ip,远程路径和本地路径,用户名密码即可实现文件的远程拷贝。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/Lockey23/article/details/78867787