一种基于代理技术的ssh协议运维审计系统及方法

文档序号:7811563阅读:263来源:国知局
一种基于代理技术的ssh协议运维审计系统及方法
【专利摘要】本发明公开了一种基于代理技术的SSH协议运维审计系统,在代理服务器中设置了监控回放模块,通过监控回放模块审计人员对客户端和目标服务器之间的运维会话进行实时监测,同时运维人员也可以根据自己的需求回放已经完成的运维会话。本发明还公开了一种基于代理技术的SSH协议运维审计方法,实现了在运维人员对目标服务器进行运维操作中对操作过程的命令分析、会话监控、切断、回放功能,实现了运维操作的事前预防、事中干预和事后分析处理。本发明在一定程度上帮助企业提升内部风险控制水平,提高信息系统运维管理水平,跟踪服务器上用户行为,降低运维成本,提供控制和审计依据,使运维操作更加安全。
【专利说明】一种基于代理技术的SSH协议运维审计系统及方法

【技术领域】
[0001]本发明涉及一种基于代理技术的SSH协议运维审计系统及方法。

【背景技术】
[0002]随着企业信息内网建设不断的加快,需要运维的设备也不断增多,如何管理好众多的运维设备已经成为企业信息化建设的一个问题,更重要的是,企业缺乏对运维人员操作的审计方法,一旦出现了运维操作失误,不仅无法分析出是什么运维操作导致错误,而且无法定位到底是哪一运维人员出现操作失误。
[0003]传统的运维操作中,对于字符型操作系统,例如Linux,大多数采用基于文本显示的网络协议,如SSH,FTP, TELNET等,其中以SSH协议较为普遍。SSH协议是专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。通过SSH可以对所有传输的数据进行加密,具有一定的安全性。但与此同时,管理人员也无法获取SSH协议中的运维操作信息,无法及时发现阻止违规操作,这在监控和审计上带来了一些安全问题。


【发明内容】

[0004]发明目的:本发明为了克服现有技术中存在的不足,本发明提出一种可以实时对运维会话进行监控的基于代理技术的SSH协议运维审计系统。
[0005]
【发明内容】
:为解决上述技术问题,本发明提供了一种基于代理技术的SSH协议运维审计系统,包括代理服务器,客户端和目标服务器,所述客户端通过所述代理服务器与所述目标服务器进行运维会话通信;其中,所述代理服务器包括=Web管理模块、代理模块和回放监控模块;
[0006]所述Web管理模块分别与客户端和所述代理模块连接,用于连接代理服务器和客户端;
[0007]所述代理模块将Web管理模块传输的运维会话通信数据经检测后传输至目标服务器,并将目标服务器的反馈信息通过Web管理模块传输至客户端;其中所述代理模块包括认证服务模块、数据记录模块和数据库,其中,认证服务模块用于认证客户端的身份和权限;所述数据记录模块用于存储客户端与目标服务器之间所有的运维会话通信数据;所述数据库用于存储目标服务器的相关信息;
[0008]所述回放监控模块用于从所述数据记录模块中提取监控回放所需的运维会话通信数据,通过回放监控模块中的回放监控插件将对应的运维会话通信数据数据反馈到客户端。
[0009]本发明还提供了一种基于代理技术的SSH协议运维审计系统的审计方法,包括以下步骤:
[0010]步骤1:运维人员或审计人员通过客户端的Web浏览器登录代理服务器,代理服务器中的认证服务模块对客户端的身份和权限进行认证;
[0011]步骤2:身份认证通过后,客户端和目标服务器通过代理服务器建立通信,所述代理服务器中的数据记录模块记录客户端和目标服务器之间所有的运维会话通信数据;
[0012]步骤3:代理服务器对客户端和目标服务器之间的运维会话通信数据进行检测,发现异常的运维会话通信数据,则中断客户端和目标服务器之间的所有的运维会话通信;
[0013]步骤4:所述监控回放模块根据客户端发来的监控回放指令,从所述数据记录模块中提取监控回放所需的运维会话通信数据,通过回放监控插件将对应的运维会话通信数据反馈到客户端。
[0014]进一步,所述步骤4中,如果客户端发来的是监控指令,所述监控回放模块从数据记录模块中调取客户端和目标服务器之间通信的实时运维会话通信数据;如果客户端发来的是回放指令,所述监控回放模块根据监控指令从数据记录模块中调取客户端和目标服务器之间通信的已经完成的运维会话通信数据。
[0015]进一步,所述步骤I中的认证服务模块对客户端的身份和权限进行认证的方法为:
[0016]步骤101 =Web管理模块将客户端发送的需要运维的目标服务器的相关信息发送至代理模块;
[0017]步骤102:代理模块将接收到的需要运维的目标服务器的相关信息输入到内存数据库中进行查询;其中内存数据库为数据库的一部分,用户缓存一部分目标服务器的相关信息;
[0018]步骤103:判断需要运维的目标服务器是否存在内存数据库中,若需要运维的目标服务器已在内存数据库的设备表中,则记录需要运维的目标服务器在内存数据库设备表中的位置;若需要运维的目标服务器不在内存数据库的设备表中,则数据库中读取需要运维的目标服务器的相关信息,将读取的相关信息插入到内存数据库的设备表中并记录读取的相关信息在内存数据库设备表中的位置;
[0019]步骤104:认证服务模块将生成一条认证数据,并将生成的认证数据插入到内存数据库认证表中,其中,认证数据包括:需要运维的目标服务器的相关信息在内存数据库设备表中的位置、客户端IP、运维人员账号、32位的随机用户名和32位随机密码,其中随机用户名前8位为生成的认证数据在内存数据库认证表中的位置;
[0020]步骤105:代理服务器通过ActiveX插件启动标准运维客户端,并将32位随机用户名、32位随机密码以及代理服务器自身连接信息发送给客户端;其中,代理服务器自身连接信息包括:代理服务器的IP地址、代理服务器与客户端的连接端口 ;
[0021]步骤106:客户端通过连接信息连接至代理服务器,使用32位随机用户名和32位随机密码进行认证;代理模块将收到的包括32位随机用户名和32位随机密码的认证信息发送给认证服务模块;认证服务模块到认证信息后,提取出随机用户名前8位的偏移信息并找到内存数据库认证表中指定数据,然后验证剩下56位随机串是否一致,若一致则根据数据库设备表中需要运维的目标服务器的位置信息找到需要运维的目标服务器的连接数据,将需要运维的目标服务器的连接数据发送给代理代理模块连接至需要运维的目标服务器;若验证不一致则返回认证错误信息至客户端。
[0022]进一步,所述运维人员发送回放监控指令时,监控回放模块进行回放的方法为:
[0023]步骤401:代理服务器生成一个32位的随机用户名和32位的随机密码;
[0024]步骤402:代理服务器利用ActiveX控件将32位的随机用户名、32位的随机密码、运维会话号、目标服务器端口号、目标服务器IP地址作为命令行参数启动监控回放模块中的回放监控插件;
[0025]步骤403:回放监控插件将ActiveX控件传来的命令行参数和其他参数组合成一个认证数据包;其他参数主要是代理服务器的IP地址及服务监听端口等参数,这些参数主要是用来查找内存数据库,以完成身份认证。
[0026]步骤404:回放监控插件将认证数据包发动到认证服务模块中,认证服务模块验证32位的随机用户名和32位的随机密码是否正确,如果正确,回放监控模块在数据记录模块中查找需要的运维会话对应的数据结构,如果发现运维会话还没有结束,那么将不能回放;如果发现运维会话已经结束,就在数据记录模块中查找运维会话数据,并将查找的数据发送至客户端;如果32位的随机用户名和32位的随机密码不正确,则将错误信息反馈至客户端。
[0027]工作原理:本发明应用代理技术实现SSH协议运维操作的代理转发、会话记录、命令分析、过程监控及回放。当客户端需要运维服务器时,首先由代理服务器模拟成远程访问的服务端时,接受客户端发送的信息,并对其进行协议的还原、解析、记录,最终获得客户端发送的指令信息,再模拟成操作的客户端,与目标服务器建立通讯,并转发用户端发送的指令信息。代理服务器接收到目标服务器端的返回信息后,再反向执行此过程,将返回值发送给客户端从而实现对各种协议的代理转发过程。在通讯过程中,代理服务器会记录各种指令信息及其返回结果,并根据审计人员和运维人员的需求对记录的各种指令信息及其返回结果进行回放。同时,代理服务器会根据违规规则库对指令信息进行比对,如发现违规的操作行为,则终止数据包的转发,并中断整个运维会话。
[0028]有益效果:本发明在代理服务器中设置了监控回放模块,通过监控回放模块审计人员对客户端和目标服务器之间的运维会话进行实时监测,同时运维人员也可以根据自己的需求回放已经完成的运维会话。实现了在运维人员对目标服务器进行运维操作中对操作过程的命令分析、会话监控、切断、回放功能,实现了运维操作的事前预防、事中干预和事后分析处理。本发明在一定程度上帮助企业提升内部风险控制水平,提高信息系统运维管理水平,跟踪服务器上用户行为,降低运维成本,提供控制和审计依据,使运维操作更加安全。

【专利附图】

【附图说明】
[0029]图1为本发明的结构示意图;
[0030]图2为本发明中认证服务模块进行身份认证的流程图;
[0031]图3为本发明中监控回放模块进行回放的流程图。

【具体实施方式】
[0032]下面结合附图对本发明的技术方案作进一步解释。
[0033]如图1所示,一种基于代理技术的SSH协议运维审计系统,包括代理服务器,客户端和目标服务器,客户端通过代理服务器与目标服务器进行运维会话通信;其中,所述代理服务器包括=Web管理模块、代理模块和回放监控模块。
[0034]Web管理模块是整个系统中对客户端的接口,运维人员用客户端通过访问网页来管理配置运维审计参数,同时,通过调用网页的ActiveX控件,启动标准客户端MSTSC连接代理模块,通过代理模块的代理、转发,运维人员可以运维目标服务器。审计人员也可以通过网页调用ActiveX控件,启动监控或回放插件,监控、回放运维人员的运维操作。
[0035]代理模块将Web管理模块传输的运维会话通信数据经检测后传输至目标服务器,并将目标服务器的反馈信息通过Web管理模块传输至客户端;其中,代理模块包括认证服务模块、数据记录模块和数据库。
[0036]认证服务模块负责提供身份认证功能,判断客户端发来的随机认证信息是否合法,若合法则返回相关设备的真实连接信息,若不合法则拒绝连接,并将非法连接信息写入数据库中。
[0037]数据记录模块用于存储客户端与目标服务器之间所有的运维会话通信数据;主要负责将已解析还原的运维会话信息完整的写入会话记录过程文件。会话过程记录文件分为两种,一种是供分析使用的命令文件,该类文件以cmd”结尾,其中数据格式如表1:
[0038]表1:
[0039]

【权利要求】
1.一种基于代理技术的SSH协议运维审计系统,其特征在于:包括代理服务器,客户端和目标服务器,所述客户端通过所述代理服务器与所述目标服务器进行运维会话通信;其中,所述代理服务器包括=Web管理模块、代理模块和回放监控模块; 所述Web管理模块分别与客户端和所述代理模块连接,用于连接代理服务器和客户端; 所述代理模块将Web管理模块传输的运维会话通信数据经检测后传输至目标服务器,并将目标服务器的反馈信息通过Web管理模块传输至客户端;其中所述代理模块包括认证服务模块、数据记录模块和数据库,其中,认证服务模块用于认证客户端的身份和权限;所述数据记录模块用于存储客户端与目标服务器之间所有的运维会话通信数据;所述数据库用于存储目标服务器的相关信息; 所述回放监控模块用于从所述数据记录模块中提取监控回放所需的运维会话通信数据,通过回放监控模块中的回放监控插件将对应的运维会话通信数据数据反馈到客户端。
2.采用权利要求1所述的基于代理技术的SSH协议运维审计系统的审计方法,其特征在于:包括以下步骤: 步骤1:运维人员或审计人员通过客户端的Web浏览器登录代理服务器,代理服务器中的认证服务模块对客户端的身份和权限进行认证; 步骤2:身份认证通过后,客户端和目标服务器通过代理服务器建立通信,所述代理服务器中的数据记录模块记录客户端和目标服务器之间所有的运维会话通信数据; 步骤3:代理服务器对客户端和目标服务器之间的运维会话通信数据进行检测,发现异常的运维会话通信数据,则中断客户端和目标服务器之间的所有的运维会话通信; 步骤4:所述监控回放模块根据客户端发来的监控回放指令,从所述数据记录模块中提取监控回放所需的运维会话通信数据,通过回放监控插件将对应的运维会话通信数据反馈到客户端。
3.根据权利要求1所述的基于代理技术的SSH协议运维审计方法,其特征在于:所述步骤4中,如果客户端发来的是监控指令,所述监控回放模块从数据记录模块中调取客户端和目标服务器之间通信的实时运维会话通信数据;如果客户端发来的是回放指令,所述监控回放模块根据监控指令从数据记录模块中调取客户端和目标服务器之间通信的已经完成的运维会话通信数据。
4.根据权利要求1所述的基于代理技术的SSH协议运维审计方法,其特征在于:所述步骤I中的认证服务模块对客户端的身份和权限进行认证的方法为: 步骤101 =Web管理模块将客户端发送的需要运维的目标服务器的相关信息发送至代理模块; 步骤102:代理模块将接收到的需要运维的目标服务器的相关信息输入到内存数据库中进行查询;其中内存数据库为数据库的一部分,用户缓存一部分目标服务器的相关信息; 步骤103:判断需要运维的目标服务器是否存在内存数据库中,若需要运维的目标服务器已在内存数据库的设备表中,则记录需要运维的目标服务器在内存数据库设备表中的位置;若需要运维的目标服务器不在内存数据库的设备表中,则数据库中读取需要运维的目标服务器的相关信息,将读取的相关信息插入到内存数据库的设备表中并记录读取的相关信息在内存数据库设备表中的位置; 步骤104:认证服务模块将生成一条认证数据,并将生成的认证数据插入到内存数据库认证表中,其中,认证数据包括:需要运维的目标服务器的相关信息在内存数据库设备表中的位置、客户端IP、运维人员账号、32位的随机用户名和32位随机密码,其中随机用户名前8位为生成的认证数据在内存数据库认证表中的位置; 步骤105:代理服务器通过ActiveX插件启动标准运维客户端,并将32位随机用户名、32位随机密码以及代理服务器自身连接信息发送给客户端;其中,代理服务器自身连接信息包括:代理服务器的IP地址、代理服务器与客户端的连接端口 ; 步骤106:客户端通过连接信息连接至代理服务器,使用32位随机用户名和32位随机密码进行认证;代理模块将收到的包括32位随机用户名和32位随机密码的认证信息发送给认证服务模块;认证服务模块到认证信息后,提取出随机用户名前8位的偏移信息并找到内存数据库认证表中指定数据,然后验证剩下56位随机串是否一致,若一致则根据数据库设备表中需要运维的目标服务器的位置信息找到需要运维的目标服务器的连接数据,将需要运维的目标服务器的连接数据发送给代理代理模块连接至需要运维的目标服务器;若验证不一致则返回认证错误信息至客户端。
5.根据权利要求3所述的基于代理技术的SSH协议运维审计方法,其特征在于:所述运维人员发送回放监控指令时,监控回放模块进行回放的方法为: 步骤401:代理服务器生成一个32位的随机用户名和32位的随机密码; 步骤402:代理服务器利用ActiveX控件将32位的随机用户名、32位的随机密码、运维会话号、目标服务器端口号、目标服务器IP地址作为命令行参数启动监控回放模块中的回放监控插件; 步骤403:回放监控插件将ActiveX控件传来的命令行参数和其他参数组合成一个认证数据包;其他参数包括代理服务器的IP地址及服务监听端口位置,所述其他参数组合用来查找内存数据库,以完成身份认证。 步骤404:回放监控插件将认证数据包发动到认证服务模块中,认证服务模块验证32位的随机用户名和32位的随机密码是否正确,如果正确,回放监控模块在数据记录模块中查找需要的运维会话对应的数据结构,如果发现运维会话还没有结束,那么将不能回放;如果发现运维会话已经结束,就在数据记录模块中查找运维会话数据,并将查找的数据发送至客户端;如果32位的随机用户名和32位的随机密码不正确,则将错误信息反馈至客户端。
【文档编号】H04L12/24GK104135389SQ201410401839
【公开日】2014年11月5日 申请日期:2014年8月14日 优先权日:2014年8月14日
【发明者】吴克河, 张晓良, 崔文超 申请人:华北电力大学句容研究中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1