-
链接方法:
方式一:ssh = paramiko.SSHClient()ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())ssh.connect("某IP地址",22,"用户名", "口令")上面的第二行代码的作用是允许连接不在know_hosts文件中的主机。方式二:ssh = paramiko.Transport((“主机”,”端口”))ssh.connect(username = “用户名”, password = “口令”)如果连接远程主机需要提供密钥,上面第二行代码可改成:ssh.connect(username = “用户名”, password = “口令”, hostkey=”密钥”)方式三:ssh = paramiko.SSHClient()#ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) pkey_file='/hmoe/kkk/.ssh/id_rsa' #设置用户私秘钥路径 key=paramiko.RSAKey.from_private_key_file(pkey_file) ssh.connect(host,port,user, pkey=key,timeout=5)
2.实例:
In [1]: import paramikoIn [2]: import sys,os In [3]: host='127.0.0.1' #sys.argv[1] 第一个参数为主机IP In [4]: user='kkk' In [5]: password='123456' In [6]: cmd='ls -l' In [7]: s=paramiko.SSHClient() #绑定实例 In [8]: s.load_system_host_keys() #加载本地host主机文件 In [9]: s.set_missing_host_key_policy(paramiko.AutoAddPolicy()) #允许连接不在know_hosts文件中的主机(可选项) In [10]: s.connect(host,22,user,password,timeout=3) #链接远程主机 In [11]: stdin,stdout,stderr=s.exec_command(cmd) #一次性的执行命令 In [12]: cmd_result=stdout.read(),stderr.read() #读取命令结果 In [13]: for i in cmd_result: ....: print i ....:
posted on 2017-07-10 09:18 阅读( ...) 评论( ...)