paramiko简介
- paramiko是用Python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。
- paramiko主要是通过ssh协议对远程主机进行管理:包括执行远程主机CLI、上传和下载文件等。
安装paramiko模块
python -m pip install paramiko
paramiko命令参数详解
- 利用密码登陆方式批量执行命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
- 利用公钥验证方式批量执行命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
|
- 从远程主机上传、下载文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
脚本演示
- 局域网物理主机批量管理:执行命令
脚本还有很多瑕疵,只是作为参考练习,前提是所有主机的用户名、密码和端口号都要相同
例如:Username:root Password:redhat Port:22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
|
执行脚本:
1 |
|
截图部分返回结果:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
- 局域网物理主机批量管理:执行上传、下载文件
这里只对批量上传做了演示,对于批量下载文件只是一行代码的更换就可以了,我也在脚本中添加了注释行。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
|
执行脚本:
1 |
|
截图部分返回结果:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
登陆远程主机查看文件是否上传完成:
1 2 3 4 5 6 7 8 |
|
- 注意:
- 批量上传文件脚本只能满足单个文件,如何实现多个文件上传和下载呢?可以通过os模块来实现,下一篇文章中介绍如何以更人性化的方式实现参数上传下载,那就是os模块和optparse模块