ITPub博客

首页 > Linux操作系统 > Linux操作系统 > python paramiko模块管理SSH

python paramiko模块管理SSH

原创 Linux操作系统 作者:zhangsharp20 时间:2017-09-20 16:20:39 0 删除 编辑
参考地址:http://lihuipeng.blog.51cto.com/3064864/1071125/

下面是两种使用paramiko连接到linux服务器的代码
方式一:
  1. ssh = paramiko.SSHClient() 
  2. ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
  3. ssh.connect("某IP地址",22,"用户名", "口令") 
上面的第二行代码的作用是允许连接不在know_hosts文件中的主机
方式二:
  1. t = paramiko.Transport((“主机”,”端口”)) 
  2. t.connect(username = “用户名”, password = “口令”) 
如果连接远程主机需要提供密钥,上面第二行代码可改成:
  1. t.connect(username = “用户名”, password = “口令”, hostkey=”密钥”) 
例子:
  1. #!/usr/bin/python   
  2. import paramiko 
  3.   
  4. ssh = paramiko.SSHClient() 
  5. ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
  6. ssh.connect("某IP地址",22,"用户名", "口令") 
  7. stdin, stdout, stderr = ssh.exec_command("你的命令")print stdout.readlines() 
  8. ssh.close() 
下载linux服务器上的文件
  1. #!/usr/bin/python   
  2. import paramiko 
  3.   
  4. t = paramiko.Transport((“主机”,”端口”)) 
  5. t.connect(username = “用户名”, password = “口令”) 
  6. sftp = paramiko.SFTPClient.from_transport(t) 
  7. remotepath=’/var/log/system.log’ 
  8. localpath=’/tmp/system.log’ 
  9. sftp.get(remotepath, localpath) 
  10. t.close() 
上传文件到linux服务器
  1. #!/usr/bin/python   
  2. import paramiko 
  3.  
  4. t = paramiko.Transport((“主机”,”端口”)) 
  5. t.connect(username = “用户名”, password = “口令”) 
  6. sftp = paramiko.SFTPClient.from_transport(t) 
  7. remotepath=’/var/log/system.log’ 
  8. localpath=’/tmp/system.log’ 
  9. sftp.put(localpath,remotepath) 
  10. t.close() 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29802484/viewspace-2145223/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 数据库补丁索引
下一篇: 日志删除脚本
请登录后发表评论 登录
全部评论

注册时间:2014-08-12

  • 博文量
    382
  • 访问量
    801413