运维操作管理系统(堡垒机)解决方案广州宇皓信息技术有限公司2014年3月1.1需求分析1.1.1所存在的问题用户身份不唯一,用户登录后台设备时,仍然可以使用共享账号(root、administrator等)访问,从而无法准确识别用户的身份;缺乏严格的访问控制,任何人登录到后台其中一台设备后,就可以访问到后台各种设备;重复枯燥的密码管理工作,大大降低了工作效率的同时,人员的流动还会导致密码存在外泄的风险;难于限制用户登录到后台设备后的操作权限;无法知道当前的运维状况,也不知道哪些操作是违规的或者有风险的;缺乏有效的技术手段来监管代维人员的操作;操作无审计,因操作引起设备故障的时候无法快速定位故障的原因和责任人;1.1.2问题分析出现以上问题的主要原因在于:运维操作不规范;运维操作不透明;运维操作风险不可控;1.1.3带来的后果违规操作可能会导致设备/服务异常或者宕机;恶意操作可能会导致系统上敏感数据/信息被篡改、被破坏;当发生故障的时候,无法快速定位故障原因或者责任人;1.1.4解决之道根据客户的现状及问题,可通过部署齐治科技的IT运维操作监控系统(简称:Shterm),实现以下效果:实现维护接入的集中化管理。对运行维护进行统一管理,包括设备账号管理、运维人员身份管理、第三方客户端操作工具的统一管理;能够有效的整合用户现有的运维管理手段及第三方认证系统;能够制定灵活的运维策略和权限管理,实现运维人员统一权限管理,解决操作者合法访问操作资源的问题,避免可能存在的越权访问,建立有效的访问控制;实现运维日志记录,记录运维操作的日志信息,包括对被管理资源的详细操作行为;实现运维操作审计,对运维人员的操作进行全程监控和记录,实现运维操作的安全审计,满足信息安全审计要求;能够有效的检索运维操作细节;能够对于高危及敏感的操作进行实时告警;能够提供灵活的报表及统计分析;实现运维操作的合规性要求、遵从现有的法律法规;1.2方案设计因为操作的风险来源于各个方面,所以必须要从能够影响到操作的各个层面去降低风险。齐治运维操作管理系统(Shterm)采用操作代理(网关)方式实现集中管理,对身份、访问、审计、自动化操作等统一进行有效管理,真正帮助用户最小化运维操作风险。集中管理是前提:只有集中以后才能够实现统一管理,只有集中管理才能把复杂问题简单化,分散是无法谈得上管理的,集中是运维管理发展的必然趋势,也是唯一的选择。身份管理是基础:身份管理解决的是维护操作者的身份问题。身份是用来识别和确认操作者的,因为所有的操作都是用户发起的,如果我们连操作的用户身份都无法确认,那么不管我们怎么控制,怎么审计都无法准确的定位操作责任人。所以身份管理是基础。访问控制是手段:操作者身份确定后,下一个问题就是他能访问什么资源、你能在目标资源上做什么操作。如果操作者可以随心所欲访问任何资源、在资源上做任何操作,就等于没了控制,所以需要通过访问控制这种手段去限制合法操作者合法访问资源,有效降低未授权访问所带来的风险。操作审计是保证:操作审计要保证在出了事故以后快速定位操作者和事故原因,还原事故现场和举证。另外一个方面操作审计做为一种验证机制,验证和保证集中管理,身份管理,访问控制,权限控制策略的有效性。自动运维是目标:操作自动化是运维操作管理的终极目标,通过该功能,可让堡垒机自动帮助运维人员执行各种常规操作,从而达到降低运维复杂度、提高运维效率的目的。1.2.1详细设计1.2.1.1操作网关方式部署集中管理是实现运维操作安全管理的首要前提。针对当前核心设备分散管理的现状,集中管理倡导的是一种统一管理的理念。集中管理是未来运维操作安全管理的必然趋势。实现集中管理,关键点在于对用户原有的运维环境不造成任何影响。综合各种部署方案,我们采用了“操作堡垒机”的部署方式。1.2.1.2用好共享账号在当前的运维环境中,普遍存在操作者身份无法识别的安全隐患。这主要是由操作者共享使用核心设备上的系统账号造成的。设备数量达到一定规模,必然会使用到共享账号。共享账号就是多人共同使用同一个存在于设备上的系统账号,使用共享账号会让整体账号的数量减少。但是仅仅依赖系统上的单一系统账号,无法既能区分用户身份,又能完成工作角色的定位。如何准确的区分用户身份和工作角色,进而实现操作者和具体的操作过程一一对应?Shterm将用户身份认证和系统工作角色功能分离,在Shterm上增加了用户账号,完成用户的身份确认。原来系统上的账号依然存在,但是作用只是完成工作角色授权的工作账号。用户登录Shterm是采用唯一的用户账号,然后根据工作角色的需要,转换成系统账号登录到被管理设备上。这样既能够保证整体账号数量最少,管理方便;同时又能够实现对用户、工作角色的双重定位。当用户加入、离职或岗位变动,当代维人员和原厂商进行维护的时候,只需要在Shterm上变更该用户账号即可,对系统上的系统账号没有任何影响。代维人员维护系统并不需要知道用户系统的最高权限的系统帐号密码,这样大大降低了管理风险。原厂商进行临时维护的时候只需要临时分配一个用户账号,当使用结束后该账号会自动回收,减少了账号管理的成本。1.2.1.3访问控制规则目前,用户只要知道用户名和密码就可以任意访问任意设备,这种现状必然会带来“未授权访问的安全风险”。部署了Shterm后,情况就发生了变化。Shterm逻辑上成为了用户登录的唯一入口,因为入口唯一,访问控制很容易配置了。相同工作任务的集合可以放置在一个访问规则组里,当用户岗位、职责改变时,对用户相关联的组、系统权限、可访问设备通过Web的勾选,很容易调整。根据工作内容的需要,可以配置不同的许可或禁止的登录策略。既可以设定固定日期的登录策略,也可以设定固定时间间隔的策略,还可以设定一天中指定时间段的策略,并且能够针对具体的地址段进行控制。Shterm的访问控制列表可以让用户一目了然的知道某台设备上允许哪些用户登录。某台设备上的系统账号有多少个用户可以使用。另一方面,从安全运维的角度分析,权限控制策略是从操作的层面上,降低高危操作所带来的安全风险:对于使用Telnet/SSH等协议进行远程管理的设备(各种网络设备和Unix服务器),操作权限的多少取决于用户可以执行的命令。所以,针对操作指令的控制才是核心。对于服务器设备操作,Shterm可以对服务器的超级用户root操作权限进行控制,即使是root用户,权限也是受限制的,可以限制root用户只能执行某些操作(白名单)和无法执行某些操作(黑名单)。当多人同时使用一个root账号时,Shterm可以对同一个系统账号进行操作权限再分配,保证使用同一个root账号的不同用户拥有不同的操作指令权限,彻底解决了共享root账号权限一致的情况,真正实现细粒度的操作权限控制。对于网络设备操作,Shterm可以保证即使多个用户在进入enable状态的时候,提供高于网络设备系统更好级别的控制力度,保证每一个用户的操作指令都能严格受到控制。对于操作权限的控制意味着我们从被动接受用户输入到了主动控制。对于用户的操作可以有3种执行状态:允许执行,拒绝执行,禁止执行。对于高危命令(删除,重起,关机等)可以实时告警,一旦高危操作触发,会立即给相关人员发送告警邮件,保证用户在第一时间内知道高危操作是否对系统造成了影响。1.2.1.4完整操作审计运维操作审计是整个Shterm解决方案的重要组成部分。管理员确定了以操作网关方式来部署,解决了之前共享账号的问题,配置了访问规则,明确了操作权限,那么最后也是最重要的就是操作和操作审计。Shterm支持的运维操作方式和相应的操作审计基本涵盖了目前企业日常运维所涉及到的绝大部分操作模式,包括字符会话、图形会话、WebClient会话、文件传输、Oracle数据库操作审计等等。对不同会话采用不同的审计方式针对字符会话,Shterm的审计功能会完全记录所有会话内的输入输出,并可以使用模式方式对这些输入输出进行查询以定位操作时间节点和操作内容。对于图形会话要采用全程的录像和键盘鼠标操作的记录,并在图形会话回放的过程中同步的显示出来。对于WebClient方式的操作会话,也是目前非常主流的一种操作模式,Shterm可以利用对于图形会话的审计方式来审计WebClient方式的会话,即,既包括了图形录像也包括了键盘鼠标记录,并且可以如图形会话一样,键盘输入信息可以进行完全的检索以便快速定位一个较长的审计录像。针对文件传输,FTP、SFTP之类的上传下载,Shterm支持全部的信息记录,包含时间,人员,IP等等信息。对于Oracle数据库的操作审计,采用跳板机和应用发布的方式,能够把图形方式操作中的数据库语句全部完成的审计到Shterm平台内。此外,Shterm对审计人员本身也有严格要求,一方面,对审计人员的审计操作,Shterm有严格的记录,审计管理员何时查阅了某个会话操作都要有明确记录。另一方面,Shterm支持非全局性的操作审计,即,审计人员也没有权利审计所有的会话信息,因为会话中可能包含了非常敏感甚至机密的企业信息。1.2.1.5运维自动化日常运维中经常需要对一些操作进行重复性动作,例如每天去执行一些脚本、检测一些状态等,重复繁琐的工作容易令人出现操作的失误。如果能通过一些技术手段,替代用户的重复操作,使用户从重复繁琐的工作中释放出来,可以让用户有更多的时间去专注于更多技术领域。操作自动化是运维操作管理的终极目标,通过Shterm的自动脚本功能,可让Shterm自动帮助运维人员执行各种常规操作(如自动巡检、自动备份配置等),从而达到降低运维复杂度、提高运维效率的目的。1.2.2实现目标根据客户的现状及问题,可通过部署齐治科技的运维操作管理系统(Shterm,简称运维堡垒机),实现以下效果:实现维护接入的集中化管理。对运行维护进行统一管理,包括设备账号管理、运维人员身份管理、第三方客户端操作工具的统一管理;通过主从帐号管理,使用户认证与系统授权分开,从而有效解决系统帐号共享使用而带来的身份不唯一的问题;并实现与现有的第三方认证系统(LDAP、Radius、AD域、TOTP等)整合;能够制定灵活的运维策略和权限管理,实现运维人员统一权限管理,解决操作者合法访问操作资源的问题,避免可能存在的越权访问,建立有效的访问控制;实现对核心设备操作的双人授权访问与双人操作复核,有效降低运维操作风险;密码托管和自动改密,使得密码管理规范能有效落地,避免了因人员的流动还会导致设备密码存在外泄的风险;能完整记录运维人员的操作过程,当系统因人为操作导致故障的时候,能够快速定位故障原因和责任人,满足信息安全审计要求;能够有效的检索运维操作细节;能够对于高危及敏感的操作进行实时告警;能够提供灵活的报表及统计分析;实现运维操作的合规性要求、遵从现有的法律法规;1.3功能介绍1.3.1操作系统及协议支持协议:Telnet、SSH、RDP、VNC、HTTP/HTTPS、FTP/SFTP/SCP;服务器:Windows操作系统;各种Unix操作系统(AIX、HP-UX、Solaris等);各种Linux操作系统(RedHat,SUSE等);网络设备:Cisco全系列;华为全系列;Juniper全系列;AVAYA全系列;各种其他网络设备;KVM设备:Avocent,Raritan等数字KVM;数据库:Oracle、SQL-Server、Sybase等数据库;1.3.2部门管理1.3.2.1分部门用户管理超级管理员根据实际情况建立好相应的部分,并且把用户归入相应的部门里。本部门的管理员只能管理本部门的用户帐号,无权管理其它部门的用户帐号。1.3.2.2分部门设备管理本部门的配置管理员可以任意添加设备,设置访问规则和操作权限规则,本部门的设备的只能由本部门的配置管理员或上级的配置管理员进行管理,同级别部门的配置管理员则无权管理。1.3.2.3分部门操作审计操作人员登录到某部分的设备进行维护操作,此次的操作日志只有该部门的审计管理员或上级