堡垒机-readme:

(数据库为mysql)

1、如果数据库不存在,就创建数据库,对数据库的用户授权,创建表结构,和初始化一些数据

2、如果数据库存在,就跳到下一步

3、用户登录堡垒机进行验证

4、如果此堡垒机用户存在,验证成功,就列出该堡垒机用户所有的主机组,和该用户的主机组里可以使用的主机数量。

5、用户选择某个主机组,就可以看到可用主机和用户的列表。


6、用户选择使用某个用户进入某个主机,或者批量执行命令。

7、如果堡垒机用户,选择使用某个用户进入单台主机,就使用paramiko加载本地know_hosts文件,进行密钥验证,用ssh登录客户端主机

   session方式建立channel实例。与主机交互,执行命令,同时按5条5条地写入数据库。

8、如果堡垒机用户,选择批量执行命令。就创建多进程的进程池,

   就使用paramiko加载本地know_hosts文件,进行密钥验证,用ssh连接客户端主机。

   执行命令,然后加锁,打印命令结果,释放锁。等待进程池里的所有进程执行完毕,给用户提示全部执行完毕。

wKiom1YDuyyzH5uEAARcdGLoUfE747.jpgwKiom1YDu6LwJnB-AAHyN4AEcGQ270.jpg