首页 > 编程语言 > 详细

python的学习之旅---paramiko 模块

时间:2017-11-18 12:31:11      阅读:277      评论:0      收藏:0      [点我收藏+]

基于用户名密码连接,远程执行命令
import paramiko

# 创建SSH对象
 1 ssh = paramiko.SSHClient() 


# 允许连接不在know_hosts文件中的主机
 1 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 


# 连接服务器

1 ssh.connect(hostname=‘123.56.157.199‘, port=22022, username=‘root‘, password=‘asbsdf.‘)

# 执行命令

while True:
    cmd=input(‘>>: ‘).strip()
    stdin, stdout, stderr = ssh.exec_command(cmd)
    # 获取命令结果
    result = stdout.read()
    print(result.decode(‘utf-8‘))
    # 关闭连接
ssh.close()

基于密钥登录
 1 import paramiko 2 3 private_key = paramiko.RSAKey.from_private_key_file(r‘C:\\id_rsa‘) 

# 创建SSH对象

ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
 1 ssh.connect(hostname=‘123.56.157.199‘, port=22, username=‘root‘, pkey=private_key) 
# 执行命令
stdin, stdout, stderr = ssh.exec_command(‘df‘)
# 获取命令结果
 result = stdout.read()

print(result.decode(‘utf-8‘)) 
# 关闭连接
ssh.close()
#上传下载

 1 import paramiko
 2 
 3 transport = paramiko.Transport((‘123.56.157.199‘, 22022))
 4 transport.connect(username=‘root‘, password=‘HLH199300.‘)
 5 
 6 sftp = paramiko.SFTPClient.from_transport(transport)
 7 # 将location.py 上传至服务器 /tmp/test.py
 8 sftp.put(r‘C:\\id_rsa‘, ‘/tmp/test.rsa‘)
 9 # 将remove_path 下载到本地 local_path
10 # sftp.get(‘remove_path‘, ‘local_path‘)
11 transport.close()

 




python的学习之旅---paramiko 模块

原文:http://www.cnblogs.com/surehunter/p/7856066.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!