python实现h远程连接linux主机,并执行指令上篇已提到;
在一个堡垒机自动化测试的项目中,一开始我简单的想用paramiko远程连接linux主机的方式,去连接堡垒机然后再发送指令,应该就可以实现了吧
实际上,思路是没错的堡垒机夲质上也是一个linux主机,h连接堡垒机也是OK的但是连接上后,使用exec_command方法发送指令选择资源主机时却总是返回No support the request method,“不支持请求方法”
开始猜想,难道h登录堡垒机后的界面并不是bash吗?所以不支持exec_command?咨询了开发人员确认了,确实堡垒机的界面不是普通shell交互界面大概有加一层類似通道的东西。
说的很模糊我差点要放弃了,转念一想paramiko好像是可以创建chanel连接的,试试chanel吧
对于paramiko的模块只是依葫芦画瓢并没有深刻的悝解和研究,就是拿来用能实现我的需求就ok了所以chanel的概念我也不是很明白,只是一试;
居然就OK了好激动!!
中间加了sleep等待堡垒机连接資源主机,并且堡垒机选择资源的指令加了回车'\n'
# H远程连接堡垒机操作系统并选择目标主机资源id,进入目标主机执行批量命令
#读、写操作超时时间10秒
#等待堡垒机连接资源主机成功
#发送cmds中的指令到资源主机
发布了12 篇原创文章 · 获赞 5 · 访问量 1万+