• 幕客老师召集小伙伴
  • 运维高手36项修炼
  • python自动化运维项目实战
  • nginx从入门到实战
  • 阿里云与Centos7实战

DevOPS - python的paramiko模块

一、介绍

paramiko是一个基于Python实现的SSH远程安全连接,用于SSH远程执行命令、文件传输等功能的ssh客户端模块。

 

二、安装

两个前提:paramiko模块、python环境

yum install gcc python-crypto python-paramiko

 

三、使用

1、使用用户密码的登录方式

In [1]: import paramiko                                           

In [2]: jssh = paramiko.SSHClient()                               

In [4]: jssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

In [5]: jssh.connect('192.168.1.101',22,'test','123456')   

 

2、使用idrsa密钥登录方式

In [1]: import paramiko

In [2]: jssh = paramiko.SSHClient()
In [4]: key = paramiko.RSAKey.from_private_key_file('/tmp/id_rsa')

In [8]: jssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

In [10]: jssh.connect('192.168.1.101',22,'test',pkey=key,timeout=2)

 

3、读取输入输出日志

In [17]: stdin,stdout,stderr = jssh.exec_command('ls /tmp',timeout=5)

In [17]: stdout.read()                                               
Out[17]: ''

 

4、intract()交互式

paramiko 涉及到交互式终端的一些方法,暂时不作介绍了。

知识点:

(1)

In [3]: jssh.connect('192.168.1.101',22,'test','123456')

set_missing_host_key_policy 当选择非know_hosts记录的主机,处理方式

如果不设置,将如下如下的错误:

SSHException: Server '192.168.1.101' not found in known_hosts

(2)id_rsa和id_dsa

 key = paramiko.RSAKey.from_private_key_file('/tmp/id_rsa')

 key = paramiko.DSSKey.from_private_key_file('/tmp/id_dsa')

(3)

 

 

 

 

DevOPS - python的paramiko模块

Pingbacks已打开。

引用地址

暂无评论

发表评论