码迷,mamicode.com
首页 > 编程语言 > 详细

Python parami

时间:2020-03-21 18:10:28      阅读:66      评论:0      收藏:0      [点我收藏+]

标签:结构   pcl   上传   host   set   home   密码连接   class   transport   

一、使用
SSHClient:用于连接远程服务器并执行基本命令

  1.基于用户名密码连接
    1.使用SSH帮我们创建transport对象

 1         import paramiko
 2 
 3         #  创建SSH对象
 4         ssh = paramiko.SSHClient()
 5         #  允许连接不在know_hosts文件中的主机
 6         ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
 7         #  连接服务器
 8         ssh.connect(hostname=192.168.124.32,port=22,username=name,password=‘‘)  #  22是默认端口
 9 
10         #  执行命令
11         stdin,stdout,stderr = ssh.exec_command(1s)
12         #  获取命令结构
13         result = stdout.read()
14         #  关闭连接
15         ssh.close()    

        2.自己创建transport对象

 1         import paramiko
 2 
 3         transport = paramiko.Transport((hostname,22))
 4         transport.connect(username=name,password=‘‘)
 5 
 6         ssh.paramiko.SSHClient()
 7         ssh._transport = transport #  创建对象
 8 
 9         stdin,stdout,stderr = ssh.exec_command(df)
10         print(stdout.read())
11 
12         transport.close()

  2.用公共密钥进行连接

    import paramiko
    
    private_key = paramiko.RSAKey.from_private_key_file(/home/auto/.shh/id_rsa)
    
    #  创建SSH对象
    ssh = paramiko.SSHClient()
    #  允许连接不在know_hosts文件中的主机
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    #  连接服务器
    ssh.connect(hostname=192.168.124.32,port=22,username=name,password=‘‘)  #  22是默认端口

    #  执行命令
    stdin,stdout,stderr = ssh.exec_command(1s)
    #  获取命令结构
    result = stdout.read()
    #  关闭连接
    ssh.close()
    

SFTPClient:用于连接远程服务器并执行基本命令(只能用transport连接)
  1.基于用户密码的上传和下载

import paramiko

transport = paramiko.Transport((hostname,22))
transport.connect(username=name,password=‘‘)

sftp  = paramiko.SFTPClient.from_transport(transport)

#  将location.py上传到服务器/tmp/test.py
sftp.put(/tmp/将location.py,/tmp/test.py)
#  将remove_path 下载到本地 local_path
sftp.get(remove_path,local_path)

transport.close()

  2.基于公钥密钥上传下载:(同上)

 

二、多条命令或操作同时使用

把连接、上传、下载、执行命令、关闭....等操作创建成方法,再合成一个类,通过对对象的操作来执行想要的功能

Python parami

标签:结构   pcl   上传   host   set   home   密码连接   class   transport   

原文地址:https://www.cnblogs.com/otome/p/12540533.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!