陈斌
【摘 要】文章从大数据背景下网络日志的特点分析入手,论述了大数据支持下的网络日志分析技术。期望通过本文的研究能够对提高计算机网络系统的安全性有所帮助。
【关键词】大数据;网络;日志分析
中图分类号: F270;TP311.13 文献标识码: A 文章编号: 2095-2457(2019)36-0019-002
DOI:10.19694/j.cnki.issn2095-2457.2019.36.008
Research on Network log Analysis Technology Supported by Big Data
CHEN Bin
(Guangdong Institute of construction technology, Guangzhou Guangdong 510440, China)
【Abstract】Based on the analysis of the characteristics of network log in the background of big data, this paper discusses the analysis technology of network log supported by big data. It is hoped that the research in this paper can help to improve the security of computer network system.
【Key words】Big data; Network; Log analysis
在计算机网络系统中,存储着大量的日志数据,如操作系统日志、入侵检测系统日志、防火墙日志、审计日志等等,这些日志对于保障计算机网络的安全运行具有重要作用。随着大数据时代的正式开启,使得日志数据呈几何数倍增,从而对日志分析提出更高的要求。为此,探寻一种智能化、高效化的网络日志分析技术显得尤为必要。借此,下面就大数据支持下的网络日志分析技术展开研究。
1 大数据背景下网络日志的特点
日志归属于数据信息的范畴,具体是指描述用户使用计算机时,对各种应用程序进行操作后,以时间为顺序,记录的操作结果的集合。一个日志文件通常都是由多条日志记录所构成,其中每条记录描述的系统事件均为独立事件。随着大数据时代的正式开启,使网络日志呈现出如下特点。
1.1 数据量大
在大数据环境下,计算机网络系统中的相关设备运行时,均会产生大量的日志,这些日志需要结合说明文档,才能了解其中的具体内容,所以想要通过人工的方式对日志进行分析非常困难。不仅如此,海量的数据信息在一定程度上给日志存储与安全保护带来较大的难度。
1.2 多源异构
在大数据环境下,计算机网络系统中的日志信息来源非常广泛,由于这些日志信息来自于类型各不相同的设备,从而使得日志数据具有多源异构的特点。设备不同,产生的日志格式也不相同,由此给日志的收集与处理增添了一定的难度,尤其是操作系统日志和入侵检测系统日志。
1.3 相互关联
针对计算机网络系统的恶意攻击通常都是由若干个阶段构成,其中的每个阶段均会产生出内容不同的日志数据,从这个角度来看,日志数据之间存在着相互关联的特性。以远程登录为例,整个过程会被以下日志所记录:操作系统日志、防火墻日志以及审计日志。
1.4 易受攻击
在计算机网络系统中,日志主要是为网络管理人员服务,正因如此,对日志进行设计时,只考虑了管理方面的便捷性,却并未充分考虑日志本身的安全性,从而使得日志数据很容易受到恶意攻击。例如,黑客通过对系统注册表或是Syslog配置文件的修改,能够停止日志进程,这样便可阻止日志对系统中的安全事件进行记录,由此会导致计算机网络的安全性大幅度降低。此外,部分日志数据生成之后,会被存储在安全性较低的目录下,这部分日志成为黑客的主要攻击对象。
2 大数据支持下的网络日志分析技术
2.1 网络日志分析技术
1)离线分析。日志中存储着海量的数据信息,为对这部分数据进行深度挖掘和分析,并追溯后台的操作记录,需要对日志数据进行长期、持续地存储,这一目标可以借助Hadoop来实现。Hadoop是Apache软件基金会开发的一套分布式基础架构,它实现了一个分布式文件系统,即HDFS,该系统最为突出的特点是容错性高,可在低廉的硬件上进行部署。因HDFS能够提供高吞吐量对应用程序中的相关数据进行访问,从而使其在超大数据集的应用程序中具有良好的适用性。在网络日志分析中,可将不需要实时分析的数据存储在HDFS中,然后借助相应的编程模型,如Map Reduce等,便可对日志数据进行挖掘和分析。Hadoop不但为非实时分析的日志数据提供了解决方案,还为实时展示的日志数据提供了解决方案,即HBase,这是一个具有分布式特点的面向列的开源数据库,它是Hadoop的子项目之一,可用于非结构数据的存储。HBase能够对数据表进行自动分区,由此可实现海量数据的存储。
离线日志分析具有如下特征:能够批量对数据进行获取及传输,可在预先设定好的周期内,对批量数据进行计算和展示。比较常见的离线日志分析方法有聚类分析法、序列分析法、关联分析法等。不同的方法具有不同的用途,如关联分析法能够发现数据集中存在的因果结构,据此可对事物中某些属性的规律进行描述;序列分析法在预防网络安全中的效果比较显著。
2)实时日志分析技术。对于部分应用程序而言,需要分析实时日志数据,如网络负载、流量、磁盘占用情况等等,此时可以采用以下数据分析工具:
(1)Flume。这是一个可用性和可靠性非常高的海量日志采集系统,其具有分布式的特征,除了能够对日志进行实时采集之外,还能对日志数据进行聚合及传输。Flume支持在日志系统中定制各类数据发送方,由此可对相关的数据进行收集。
(2)Kafka。这是一个由Apache软件基金会开发的开源流处理平台,其能够对网络中的数据流进行处理,这些数据可以通过处理日志和日志聚合来进行解决。借助Kafka,可对实时数据进行存储。
实时日志的具体分析过程如下:
Step1:通过Flume对计算机网络系统中的日志文件进行监听,并对每条日志中的信息进行实时抓取;
Step2:Flume抓取到日志信息之后,可直接存储到Kafka当中,然后借助分布式计算对这些信息进行处理;
Step3:通过自定义的方式,对日志进行分析,并将结果输出到缓存数据库当中,由应用程序对这部分数据进行读取和显示。
2.2 网络日志分析系统的构建
为进一步提高网络日志分析效率,可在大数据的支持下,构建网络日志分析系统,该系统由以下几个层次组成:
(1)数据采集层。该层的核心是日志采集服务器,可实现日志记录的接收与存储。对于一些比较小的文件,服务器会自动将之合并成大文件,然后传给数据存储层。出于安全性方面的考虑,决定采用Syslog服务器对日志数据进行实时采集,该服务器使用的是UDP传输协议,端口为默认端口,可将接收到的日志数据直接写入相应的文件系统当中。
(2)數据存储层。该层主要负责对日志数据及相关的分析结果进行存储,采用的是分布式存储方式,其底层系统为HDFS,配备海量的存储空间,能够对非结构化数据进行持久性存储。
(3)业务层。该层的核心是日志分析程序,负责解决日志的统计分析问题,具体的功能可以按照分析需求自行定制。
(4)数据显示层。该层的主要作用是对业务层处理后的结果进行再处理,然后显示在界面上。由于业务层处理完的数据会存储在底层的HDFS当中,因此,需要通过显示层对这部分数据进行提取,经分析转换之后,以图表、文字等形式,显示在页面上。
3 结论
综上所述,网络日志分析对于保障计算机网络系统的安全性具有重要的现实意义。在大数据环境下,日志数据不断增多,由此增大了日志分析的难度,为有效解决这一问题,可以采用离线和实时两种日志分析技术,并在大数据技术的支持下,构建网络日志分析系统,借此来对海量的日志数据进行分析。未来一段时期,应当加大对网络日志分析技术的研究力度,除对现有的技术进行不断优化之外,还应开发一些新的技术,从而使其更好地为日志分析服务。
【参考文献】
[1]杨立鹏,张仰森,张雯,王建,曾健荣.基于Storm实时流式计算框架的网络日志分析方法[J].计算机科学,2019(9):102-105.
[2]徐航.数据清洗方法分析及其在网络日志数据处理中的应用[D].华中科技大学,2017(5):64-66.
[3]向永谦,李欣,满建文.基于网络日志进行大数据分析的安全感知[J].自动化博览,2018(6):75-77.
[4]颜伟,李俊青.基于Python网络日志分析系统研究与实现[J].曲阜师范大学学报(自然科学版),2017(10):102-106.
[5]张建东.基于大数据技术的日志分析体系结构的研究[J].现代计算机(专业版),2018(3):45-47.