Python 模块功能paramiko SSH 远程执行及远程下载(可以使用)

原文地址:http://www.cnblogs.com/wuhongliang/p/5134587.html

Python---paramiko

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

复制代码
 1 #!/usr/bin/python
 2 #ssh
 3 import paramiko
 4 import sys,os
 5 
 6 host='127.0.0.1'
 7 user = 'whl'
 8 password = '123456'
 9 
10 s = paramiko.SSHClient()                                 # 绑定实例
11 s.load_system_host_keys()                                # 加载本地HOST主机文件
12 s.set_missing_host_key_policy(paramiko.AutoAddPolicy())  # 允许连接不在know_hosts文件中的主机
13 s.connect(host,22,user,password,timeout=5)               # 连接远程主机
14 while True:
15         cmd=raw_input('cmd:')
16         stdin,stdout,stderr = s.exec_command(cmd)        # 执行命令
17         cmd_result = stdout.read(),stderr.read()         # 读取命令结果
18         for line in cmd_result:
19                 print line,
20 s.close()
复制代码
paramiko实例(账号密码登录执行命令)
复制代码
 1 #!/usr/bin/evn python
 2 import os
 3 import paramiko
 4 host='127.0.0.1'
 5 port=22
 6 user = 'whl'
 7 password = '123456'
 8 ssh=paramiko.Transport((host,port))
 9 privatekeyfile = os.path.expanduser('~/.ssh/id_rsa') 
10 mykey = paramiko.RSAKey.from_private_key_file( os.path.expanduser('~/.ssh/id_rsa'))   # 加载key 不使用key可不加
11 ssh.connect(username=username,password=password)           # 连接远程主机
12 # 使用key把 password=password 换成 pkey=mykey
13 sftp=paramiko.SFTPClient.from_transport(ssh)               # SFTP使用Transport通道
14 sftp.get('/etc/passwd','pwd1')                             # 下载 两端都要指定文件名
15 sftp.put('pwd','/tmp/pwd')                                 # 上传
16 sftp.close()
17 ssh.close()
复制代码
paramiko实例(传送文件)
复制代码
#!/usr/bin/python
#ssh
import paramiko
import sys,os
host='127.0.0.1'
user = 'whl'
s = paramiko.SSHClient()
s.load_system_host_keys()
s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
privatekeyfile = os.path.expanduser('~/.ssh/id_rsa')             # 定义key路径
mykey = paramiko.RSAKey.from_private_key_file(privatekeyfile)
# mykey=paramiko.DSSKey.from_private_key_file(privatekeyfile,password='061128')   # DSSKey方式 password是key的密码
s.connect(host,22,user,pkey=mykey,timeout=5)
cmd=raw_input('cmd:')
stdin,stdout,stderr = s.exec_command(cmd)
cmd_result = stdout.read(),stderr.read()
for line in cmd_result:
        print line,
s.close()
复制代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值