网络通信 频道

八年互联网老兵谈新生代自动化运维管理

  以下整理总结来自JumpServer 团队的首席构架师董帅于6月4日下午在创客168沙龙的分享:新生代自动化运维管理利器,希望能对大家了解自动化运维有所帮助。

  你是否每天被重复的安装和部署困扰着?是否在越来越多的服务器集群中渐渐的感到迷茫?又或许,现在的你,渴求一种新的方式,去主宰你的集群?运维的管理,从无到有,管理方式经历数代的变迁,现在的堡垒机,还只是狭义的管理。我们渴求一种更便捷更高效的管理方式——开源的JUMPSERVER,极易扩展,是一个功能强大的新生代自动化运维管理利器。

  互联网老兵介绍

八年互联网老兵谈新生代自动化运维管理

  ▲JumpServer 团队的首席构架师董帅

  董帅,JumpServer首席架构师,互联网从业8年,曾打造多家电商以及金融公司技术产品,有丰富的系统安全经验,专注于系统架构设计,致力于推动自动化运维事业。

  安全杂谈

  在传统的开发中运维安全等级优先于业务安全,因为运维安全是企业安全一个最核心的保障,只要运维环节出现任何的问题,都是一个相对比较严重的问题,那么如何才能保证这方面的安全呢?

八年互联网老兵谈新生代自动化运维管理

  Web风险和内部运维的人为把控是需要注意的两个方面。所谓的web风险就是如上图所示,相信读者们早已烂熟于心,以下主要分享的是内部运维的人为把控。

八年互联网老兵谈新生代自动化运维管理

  运维人员由于误用rm等危险命令把服务器搞崩的现象不在少数,走捷径导致服务器敏感信息被别有用心者获取的情况也屡屡出现。很多时候出现安全问题并不是因为这个地方出现了漏洞让别人钻了空子,而是因为很多运维人员没有良好的安全意识,就像弱密码问题、服务器备份问题和传输问题等。运维产业出现这么多年,因为弱密码被破解导致系统暴露的问题从来没有减少过,因为传输脚本容易抓取导致敏感信息被泄露的情况也屡见不鲜,究其原因,还是因为运维人员的安全意识不到位。

  服务器的管理方式的时代变迁

  早期服务器管理方式是使用一台单独机器,在这台机器上登录,设置好客户端软件,用客户端软件保存登录服务器软件的session,这样只需要点开客户端保存的session就可以连接到想要登陆的服务器。优点是在小范围操作时比较简单,缺点是服务器基本处于裸奔状态,没有办法在多人协作中追踪使用记录。

  随后衍生出了另一个方式——使用的公共机器做一个跳板机,在该跳板机的用户下设置好要操纵的服务器的信任关系——这也是一个比较简单的方式。相比于之前的服务器管理方式,利用公共机器做跳板机加强了团队协作的能力,缺点是知道了密码就类似于掌控了天下,在这个世界里任你来去自如。当一个公司发展到一定程度时,这样是非常危险的。基于这个衍生出了现在比较常用的一个方案,就是使用堡垒机,在使用过程中可以添加用户、授权和Web界面。

八年互联网老兵谈新生代自动化运维管理

  在堡垒机的基础上,开源项目JumpServer形成了。JumpServer是对现在的堡垒机做了一个升级,把简单的跳板机结合CMBD、OPS共同打造一个新生代的运维体系。换言之,JumpServer把之前需要安装CMBD等各类软件整合成了一个广义上的、通用性的一个软件,而且可以很方便的基于JumpServer做二次开发。

  堡垒机

八年互联网老兵谈新生代自动化运维管理

  在一个大规模的服务器集群中,需要分配给不同的运维人员不同的管理权限,或者在相同的机器上为不同的人设置不同的权限,面对这种需求堡垒机应运而生。通过代理的形式管理后端的服务器集群,在中间缓冲区做一些权限的控制和危险操作的间隔,平常的使用场景是一个集中的账号管理。

  JumpServer一代

  JumpServer是一个现代的运维管理系统,兼顾了市面上所有类型堡垒机的功能,另外加上了大家反馈需要的一些小功能。JumpServer使用SSH协议进行管理,目前只专攻Linux和Unix体系下的一些产品,产品特点是完全开源,使用GPL协议,底层集成了ansible、批命令等,无需插件支持WebTerminal。

八年互联网老兵谈新生代自动化运维管理

  例如在公司内部有一个运维管理体系,JumpServer可以很方便的把它接入,然后会集中的认证和授权,针对不同的服务器会分配不同权限的账号。JUmpServer另外一个功能是安全审计。安全审计可以说是堡垒机最重要的一个功能,因为没有一个公司可以确定每一个运维人员做的每一个操作都是正确的,所以需要在运维人员做危险操作的时候给出报警;又或者当真的发生了错误之后可以通过这个追踪到问题的原因。JumpServer还可以进行精细化管理,可以细化到每个用户,深刻把控,避免越权事件的发生。

  JumpServer二代

  JumpServer的新版本的目标是要整合公司内部的所有资源,包括现行的运维系统、监控系统和资产管理系统,让这些系统都可以方便的接入到JumpServer中。因为JumpServer是一个开源系统,所以也可以很方便的开发新内容。  

八年互联网老兵谈新生代自动化运维管理

  JumpServer新版本主要包括五个模块。CORE模块是核心模块,必须使用但可以进行二次开发。第二个模块是CMDB资产管理模块,它是每个公司自动化运维的基础,有了所有机器的信息才可以做自动化运维的事情。第三个模块是AUDIT审计模块,把所有敏感的操作、设定的权限范围、操作的内容以及操作的后果做一个记录,当服务器发生问题或者检查的时候做到有据可查。第四个模块是OPS自动化运维模块,有更完善的体系和图形界面,使用起来更方便。第五个模块是LOG日志系统,服务于系统,系统模块的日志或者操作日志都会被记录进系统。

八年互联网老兵谈新生代自动化运维管理

  JumpServer基于新架构有一个新的技术选型,为了避免旧版本强耦合的情况,选用了Flask框架实现解耦合,继续选择Ansible进行后端的一些脚本的运行。选用新构架完全实现了零耦合,如果想使用JumpServer,只用核心Core模块和CMBD模块就可以完整运行。为了新版本的完全解耦合设计,JumpServer使用接口化设计,核心提供接口,可以方便的进行组件替换。

  JumpServer是一个完全解耦的设计,除了CORE模块用户完全可以根据需要自行开发,实现JumpServer和不同系统的对接。虽然JumpServer是一个开源产品,但丝毫不比商业产品的品质差。

0
相关文章