堡垒机

Posted ︻◣_蝸犇り~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了堡垒机相关的知识,希望对你有一定的参考价值。

堡垒机架构

  • 所有人包括运维、开发等任何需要访问业务系统的人员,只能通过堡垒机访问业务系统
    • 回收所有对业务系统的访问权限,做到除了堡垒机管理人员,没有人知道业务系统任何机器的登录密码
    • 网络上限制所有人员只能通过堡垒机的跳转才能访问业务系统 
  • 确保除了堡垒机管理员之外,所有其它人对堡垒机本身无任何操作权限,只有一个登录跳转功能
  • 确保用户的操作纪录不能被用户自己以任何方式获取到并篡改 

流程分析:

  首先,host 与remote_user相互之间没有直接关联,但是要登陆远程主机,要通过用户名密码。一个主机可以有多个远程用户,一个远程用户也可以对应多个主机,这两者之间形成了多对多的关系。就有了如下图形:

 

group与host之间关联,但同时又要知道对应的remote_user,所group与bind_host之间关联,group可以对应多个host,host分别对就不同remote_user,group对应多个bind_host,一个host与remote_user可以同时属于多个group组,所以group与bind_host又是多对多的关系。如下图形:

 

堡垒机账户user_profile想直接连某个host与对应remote_user,user_profile可以连多个bind_host,一个bind_host可以让多个user_profile连接,user_profile与bind_host形成了多对多关系。如下图形:

user_profile连接group时,可以允许连接多个group,group又可以让多个user_profile连接,user_profile与group形成多对多关系。如下图形:

联合唯一索引

__table_args__ = (UniqueConstraint(\'auth_type\'\'username\',\'password\', name=\'_user_passwd_uc\'),)

错误问题:

 sqlalchemy: \'InstrumentedList\' object has no attribute \'filter\'

 出现这样的问题时解决方法:uselist=False

官方文档:http://docs.sqlalchemy.org/en/latest/orm/join_conditions.html

 

以上是关于堡垒机的主要内容,如果未能解决你的问题,请参考以下文章

堡垒机 paramiko 自动登陆代码

堡垒机-麒麟开源堡垒机 v1.31 版本发布

System----堡垒机

Python_堡垒机开发基础

Python 13:程序:堡垒机开发

堡垒机与数据库审计区别,国内堡垒机品牌都有哪些