linux 网络监控系统的开发及其应用

基于嵌入式Linux视频的网络监控系统设计, 随着计算机技术及网络技术的迅猛发展,公安、安防行业的发展趋势必然是全面数字化、网络化。linux 网络监控系统的开发及其应用尤为重要,现在就让我们一起关注linux 网络监控系统的开发和成长。

项目背景

易思博公司作为国内著名的专业软件开发商,凭借多年网络计费系统的开发经验,在原有的代理服务器、专线和网关计费系统的基础上,针对XX市公安局计算机安全监察处对公共网络流量进行监控的要求,提出网络安全监控审计系统。
通过本系统,一方面,提供网络接入的部门可以方便地管理上网用户,保证网络资源有效的使用;另一方面,政府部门可以实时监控本区域内Internet的使用情况,为信息安全的执法提供依据。

方案构成

下图是linux 网络监控系统的逻辑模型,linux 网络监控系统由一台或多台数据采集服务器负责从代理服务器或者路由器采集网络的流量信息,并保存到数据库服务器中。计费服务器通过访问数据库服务器,与用户管理协调来统计和控制内部用户的上网行为。安全审计服务对采集来的流量数据进行实时监视,一旦发现非法的数据,立即通过通讯服务将数据通知给控制中心。

linux 网络监控系统的开发及其应用

1.数据采集

数据采集服务负责为整个linux 网络监控系统提供用户上网的数据,是综合网络管理平台的重要部分,也是整个linux 网络监控系统的基础。

数据采集服务能够采集代理服务器、路由器、以及E*Linux网关上的流量数据,并且通过扩充新的模块,可以在短时间内迅速支持新的上网方式。网络管理员或者控制中心可以通过灵活定制采集规则,来控制流量数据采集的方式,以更有效地收集数据。同时,为了满足大型网络数据流量大、以及拓扑结构复杂的要求,数据采集服务既可以分布在一个局域网内部的多台服务器之上,也可以分布在不同地点的多台服务器之上,监控中心可以通过采集规则和数据同步来有效地控制所有的采集服务器。

针对通过路由器接入到互联网的情况,数据采集服务可以采用SNMP、RMON或者IP Accouting的方式来取得路由器上记录的流量信息,支持市面上主流的路由器。

另外,BroadenGate还有自己的网关产品E*Linux,E*Linux已经可以与数据采集服务最紧密地结合,收集到流入和流出网络的各个协议数据包的详情。

数据库服务器可以采用市面上主流的大型数据库管理系统,如Oracle,SQL Server,DB2等等,综合网络管理平台可以通过BroadenGate数据访问接口来无缝地连接这些数据库系统。同时,通过数据库复制来实现数据库的分布和同步,以使安全监控系统具备可扩展的数据处理能力,保证在网络流量日益增大的情况下系统可以可靠地运行。

2.计费系统实现

计费系统的功能是对内部用户上网的情况进行统计分析,并对用户的上网行为进行控制。计费系统的数据来源于数据采集服务。无论用户网络采用代理服务器上网、还是采用专线上网、或者是用E*Linux网关上网,计费系统都会以统一的接口和灵活的方式来反映出每个内部用户的上网行为。

另外,通过E*Linux网关,计费系统还可以实时控制内部用户的上网。

3.监控系统实现

监控系统是安全审计系统的核心,它负责实时监视进出网络的流量,发现非法数据后,能够迅速定位数据包的来源,并能够还原出会话过程,并能够及时将这些信息通知给监控中心。下面分布就各部分的功能进行描述。

实时审计

实时审计的实现基于预先定义的审计规则以及数据库系统的触发器机制。审计规则可以灵活定义,结合用户名称、IP地址、网卡MAC地址,访问目标的域名、IP地址、端口,以及敏感字句等等要素。
实时审计分为两个级别,称为低敏感级和高敏感级。

处于低敏感级别时,系统只关心流过网关的域名或IP地址是否符合规则的要求,当一个新的IP包被捕获以后,数据采集服务会将这个IP包的详细信息,包括源地址、源端口、目的地址、目的端口,记录到数据库中,通过触发器的设定,数据库系统会自动启动一个规则比对的过程,发现问题后及时处理。

系统处于高敏感级别时,除了关心IP地址的合法性之外,还关心流过的数据包中的内容是否合法,是否含有敏感字句。由于数据采集服务采集到的是单个的IP包的序列,要得到数据包中内容,必须对TCP的会话过程进行再现,也就是说,必须将会话中涉及到的全部IP包进行重新组装,并得到一个可以理解的TCP过程。TCP会话的还原过程由实时审计系统内部的模拟TCP/IP栈来实现。

通过TCP/IP栈的模拟,并结合应用协议的分析,所有的TCP应用协议,如TELNET、HTTP、FTP、SMTP、POP3、IMAP,以及基于UDP的ICQ、OICQ等等都可以在实时审计系统面前一览无遗。

最后,规则控制模块对协议的会话内容进行检查,完成实时审计过程。如果发现非法情况,通知数据库服务记录下给定时间段某个用户的数据流,为日后的动作回放做准备。同时,以告警灯、告警声音、告警级别(从颜色上反映)、以及告警分析等方式通知监控中心。

动作回放

动作回放是实时审计的查看工具,也就是说,实时审计发现了问题,监控中心得到了报警信息,通过动作回放,就可以更加直观地显示出被报警用户的使用网络的全过程,为执法人员提供可信的证据。

动作回放功能是在网络控制中心由监控人员来使用。为了执行一个回放,首先,监控中心需要与远程的通讯服务联系,通过数据库服务,取得一个报警所涉及的全部IP包。监控中心得到了全部IP包之后,与实时审计一样,需要启动一个模拟的TCP栈,还原出TCP的会话过程,最后按照协议的不同,在不同的环境下重现用户使用网络的过程。例如,某个远程的用户通过WEB浏览器访问了非法站点,并发布了非法信息,监控中心得到了告警之后,得到了该用户的HTTP的会话过程,其中包含了URL的请求,服务器的返回等等,在监控中心的模拟环境中,就可以重现URL请求和服务器返回的详细情况。

下图是回放一个HTTP请求和回应的简单示意。

linux 网络监控系统的开发及其应用

屏幕监控

监控中心通过屏幕监控系统可以实时监控每个上网用户的屏幕变化。在用户通过用户管理登记到BroadenGate系统上来的时候,系统在客户端安装一个小型的不可见的插件,这个插件作为屏幕监控的客户端,实时截取用户屏幕数据,转换成特定的格式,并通过高性能的数据压缩和数据加密,传输给监控中心。

监控中心的屏幕监控服务器可以同时监控多个工作站,记录工作站显示屏的画面,回放已记录的画面。另外,屏幕监控服务器还可以报告工作站和系统的其它使用情况、锁定工作站、并传送实时信息给工作站。

监控中心

监控中心系统负责控制本区域范围内的BroadenGate安全审计系统,定制监控策略,并发送到每个远程的被控对象,控制它们的数据采集和审计行为,并可以实时显示各被控对象的状态。远程的被控对象在发现非法情况时,在监控终端上可以实时反映告警的各种信息,并可以通过调用动作回放和屏幕监控系统得到进一步的告警信息。

4.用户管理系统的实现

用户管理系统由用户及用户组管理、动态地址分配组成。

用户和用户组管理记录用户的基本信息,并按照用户组对用户进行组合,以一种树状的方式来灵活地管理本区域范围内的全部用户。

动态地址分配是BroadenGate在DHCP基础之上实现的IP地址分配系统,结合用户所在机器的网卡MAC地址、用户名、用户密码等信息给内部用户分配一个唯一的内部IP地址,并设定IP地址的租用期限。通过动态地址分配,可以有效地避免用户名和用户地址变动的情况下用户管理的难度,能够在局域网内部通过IP地址唯一地定位每个用户,并且可以有效地防止IP地址盗用的问题。

技术成果

相关推荐