资源描述
(完整版)网络日志信息采集与分析系统的设计与实现
网络日志信息采集与分析系统的设计与实现
摘要
随着网络规模的不断扩大,网络中的设备数量和服务类型也越来越多,网络中的关键设备和服务产
生了大量的日志信息,如何处理这些日志信息,实现日志信息的集中存储和有效分析,挖掘出有效信
息为网络管理和网络安全服务提供支撑变得尤为重要。本文描述了网络日志集中采集和分析系统的设
计,并详细阐述了系统功能模块的实现方式。
关键字:日志信息 集中采集 日志分析
1、引言
随着网络规模的不断扩大,当校园网中网络扩展到包含了许多主机、应用系统和各种网络设备时,
管理与安全相关的事件就变成了越来越复杂的任务。在这些运营设备中,操作系统本身能够提供一些
日志管理工具,但是由于其孤立于其他组网设施,对运营管理并不能提供所需的综合信息,此外操作
系统本身的日志管理工具也无法提供对关键业务应用的审计功能,而更多的其他组网设备,如路由器、
交换机、防火墙等,很少提供日志管理工具。
对于目前越来越复杂的网络环境,日志管理的问题越来越严重
[1]
:首先,日志凌乱的散落在网络
中各个设备上,发生在网络不同部分的安全事件无法关联起来;随着网络攻击技术的不断发展,系统
本地的日志非常容易被篡改用来消除各种非法入侵行为痕迹;随着时间和容量的变化,日志数据常常
会被自动删除或者覆盖,无法通过长期的日志数据挖掘形成用户行为统计;发生在网络防御设备,诸
如IDS、防火墙等在遭遇攻击时会产生海量日志数据,以至于无法发现重要的安全事件。
因此,在复杂的校园网络环境中,开发和部署一个能够将异构的网络中不同的组网设备以及业务
应用系统的日志信息统一采集和分析的系统,就能够使网络管理员比较方便、容易地将运营系统各个
环节的相关日志数据和安全性有效关联起来,快速发现网络的异常行为,为管理员提供一种快速评价
网络安全运行状态的工具。
2.系统设计与实现
网络日志集中采集与分析系统
能够有效地收集和分析来自异构服
务器、不同供应商提供的网络设备、
不同的业务系统等的安全日志数
据,并对采集到的日志进行分析、汇
总和报警,使网络管理员能够有效识
别网络环境中潜在的异常行为。
2.1 系统总体结构
网络日志集中采集与分析系统具有四个功能模块(如图1所示)。分别是:日志对象管理模块,日
志数据集中采集处理模块,负责采集网络设备和系统的日志数据并对数据进行简单归类处理;日志数
据存储模块,负责将日志数据采集模块获取到的数据进行分类并以文本数据形式存储到指定位置中,
实现数据的集中存储;日志数据分析和报警模块,实现对存储的日志数据进行各种类型的统计分析,
帮助网络管理员高效地从海量的日志数据中提取和挖掘关键安全事件,将结果呈现给网络管理人员,
明显地提高对恶意侵袭的监控和防范能力.
图1:系统总体结构示意图
2。2 主要功能模块介绍
2.2.1 日志对象管理模块
该模块主要实现对需要采集分析的日志对象进行数据库化管理和配置。系统以MySQL为后台数据
库,通过配置界面实现对日志采集分析对象的增加、删除、修改操作,该数据库表结构包含日志采集
分析对象的IP地址,设备名称,日志采集代理类型,设备日志采集状态等.
2。2。2 日志数据采集模块
根据系统设计功能,该模块能够自动收集来自于网络环境中各种设备(Windows、Linux等操作系
统, IDS、防火墙、路由器等网络设备)的日志数据,并将采集到的日志数据发送到数据存储模块进行
集中存储。网络管理中常用来采集日志数据的方式包括文本方式采集、SNMP Trap方式采集和syslog方
[2]
式采集,考虑到各种采集方式的特性和系统的通用性,本系统选用以syslog方式采集日志数据 .
日志数据采集模块采用客户端/服务器架构
[3]
。在系统实现中,采用运行在日志采集服务器端的
Rsyslog作为日志数据采集服务程序,Rsyslog 是一个 syslogd 的多线程增强版,可以实现包括对输
出的文件进行自动压缩和支持多个TCP侦听以及性能方面的提升。而客户端根据对象不同选用不同的开
源软件,例如常规网络设备和Linux客户端使用syslog,Windows客户端则采用第三方的软件(evtsys)
来将windows的日志转换成syslog类型的日志后,发送给syslog服务器。
客户端的设置
[4]
(X。X.X.X代表日志服务器的IP地址):
1)Linux客户端(使用Syslog):编辑/etc/syslog.conf,加入 “*。* @X.X.X。X”。
2)Linux客户端(使用syslog—ng),编辑/etc/syslog—ng.conf,加入“destination log_server
{ udp( "X。X.X。X" port(514) );}”。
2.2。3 日志数据集中存储模块
日志数据集中存储模块实现将日志采集模块获取到的日志数据按照日志获取对象名称、日志类型以及
时间进行分类归档并存储,同时,由于日志文件以文本形式进行存放,考虑到日志文件自身的可压缩
性,系统可以根据设定的时间周期对日志文件进行压缩处理,节约存储空间.
2。2。4 日志数据分析和报警模块
日志数据分析和报警模块是本系统最为关键的模块和功能,该模块根据不同的采集对象类型对日
志数据进行分析,对于同一台设备的日志数据,根据日志数据内容(指日志反映的服务和操作类型等)进
行分类,形成包含服务访问趋势统计,设备操作记录,异常行为在内的日志分析报告,因此,日志分析报
告包含设备运行报告(即一般统计类信息)和设备异常报警(即故障和威胁报告),并将分析结果以web
发布或者以Email方式向管理员进行报警.
作为跨平台的通用型网络日志分析系统,目前该系统可以支持包括Cisco、华为、Force10等网络
设备以及Linux、Windows等操作系统在内的多种类型对象的日志采集和分析功能。同时,为了满足其
它特殊设备和系统日志的分析,该系统提供了日志类型的用户化定制,管理员可以根据实际需求,通
过编辑日志特征(xml文件)增加和修改自定义设备/服务日志类型。
3. 结束语
本文描述的网络日志集中采集与分析系统目前已经在高能所校园网中部署并投入试运行,在校园
网的运行管理工作中发挥了较好的作用。但由于日志规则库不够全面和完善,该系统对部分异常事件
无法识别,被纳入无法识别的网络事件中,需要管理员结合自身经验进行手动干预,添加规则库。系
统的界面友好性也需要进一步加强,特别是在日志统计分析的直观化和可视化方面需要进一步改进,
相信随着系统的进一步开发和完善,日志规则库的不断更新和改进,该系统能够实现对所有网络事件
的分析和报告。
展开阅读全文