论文部分内容阅读
信息技术的发展总是随着数据的发散性、开放性和交互性,借此数据的互通和共享也逐步成为现实。但鉴于该特性的客观存在,也间接导致了网络安全问题的出现。在网络安全攻防领域,防护平台作为守备力量的一方,总是具有先天的滞后性。特别是近年来,随着企业业务量的骤增以及新技术的涌现,数据泄露、黑客入侵等网络安全事故频繁发生。传统防护平台正逐渐丧失作用,新型的防护平台解决方案急需设计。防护平台内的网络安全设备除了对威胁进行拦截,也会在运行中产生海量的日志。经过对日志数据的整合和分析,不仅可以发现威胁的攻击目标和源头,更重要的是利用算法实现威胁感知,防御威胁的再次入侵。随着大数据时代的来临,不仅防护平台的入侵防护压力显著增加,日志的规模也呈现出指数式增长。同时,日志的分布分散性、异构多样性以及动态变化性也给防护平台下日志系统的设计提出了挑战。传统日志系统多以单节点为主,其系统性能在计算、I/O传输、存储等方面十分受限,而目前日志数据逐渐出现海量化、分散化和异构化等新特征,传统的日志系统早已无法满足大规模日志的收集、处理和存储等需求。针对当前信息化和大数据背景下,传统防护平台以及日志系统所面临的困境,论文简要论述了软件即服务(Softwareasa Service,SaaS)云防护平台和On-Premises防护平台的架构,重点阐述了 SaaS云防护平台下日志系统的架构和设计。具体研究内容如下:1)网络安全防护平台设计。分析传统防护平台工作原理以及存在缺陷,针对问题设计了 SaaS云防护平台和On-Premises防护平台。SaaS云防护平台依托大数据和云计算技术,其相较于传统防护平台,在系统计算性能和后期维护成本等方面具有巨大优势,为目前应用较为普及的防护方案。On-Premises防护平台则作为本地防护技术的演进,更多的作为主流SaaS云防护平台的技术补充,其更多的应用于保密级别相对较高的场景。2)云防护日志系统架构设计。将云防护日志系统重点包含如下模块:日志收集、日志处理和数据存储。日志收集模块中,日志的分布式采集和大规模聚合采用了开源日志采集系统Flume。同时,鉴于日志收集和处理模块间可能存在速率不匹配,模块间采用了消息队列Kafka,负责日志的缓存和模块间耦合。日志处理模块依据业务对时间的敏感程度,将其划分为实时计算和离线计算单元。实时计算依靠Storm实现日志的实时清洗和数据统计等流程;离线计算则经过对Map/Reduce与相关算法的研究,实现了对日志的数据挖掘和安全审计等工作。数据存储模块依据存储内容划分为日志存储和数据管理单元。日志存储选用HBase和分布式文件系统(Hadoop Distributed File System,HDFS),后者为日志的底层存储结构,而前者则实现业务层面的对外接口;数据管理则采用了经典的MySQL+Redis的后台管理系统设计方案,完成了日志处理结果的存储和展现。3)云防护日志系统相关算法研究。重点研究了 Map/Reduce的并行化聚类分析和HBase性能优化的实现。其中,离线计算的数据挖掘算法主要采用了无监督学习的K-means算法,通过将其与Map/Reduce相结合,完成了历史日志的并行聚类功能,并验证了在大规模日志数据挖掘方向,相较于传统单节点处理,集群并行化处理的优越性。HBase性能优化则依靠对HBase的存储原理的研究以及对HBase中“热点”现象的重点分析,通过HRegion预分区和RowKey随机散列,解决了其数据访问中的不平衡问题。