dns 监控系统 设计 dns安全威胁的可视化。
基于DNS大数据分析实现宽带共享监控系统。实现对宽带用户进行有效管理。
本系统基于DNS大数据分析实现宽带共享监控系统,包括以下方面。
1)数据采集:数据采集过程是通过探针采集的方式,从各地市的DNS服务器上采集各类应用程序生成的各类DNS请求数据、Radius日志信息。这些信息包含用户的行为信息、流量信息与设备信息等。
2)数据储存:将采集到的信息数据通过数据处理,按照统一格式保存在分布式文件系统内。在数据保存前,需要进行重复数据清理、新旧数据对比更新、增量数据保存、垃圾数据清理、备份策略制定等不走,保证大日志数据分布式文件系统中保存的数据是最新的、准确的解析结果。
3)索引分析框架:对海量数据快速查询索引,当需要从数据中进行快速统计或检索时,依据已经建立好的索引进行数据处理,以便获得最大化的减少数据处理时间[5]。为了得到用户违规行为信息,需针对性的对能反应违规信息的日志信息进行处理。
4)自学习云计算框架:将系统预置的定期分析任务或用户界面下发的分析要求,根据分析原语翻译为机器语言及代码,并将执行代码下发到分布式计算环境中。系统预置的用户行为管控任务,通过自学习云计算框架,被分配到分布式计算环境中,进行计算。
5)大数据中心云平台:从DNS端采集数据,通过分布式平台的任务调度和分析查询引擎对核心数据进行检索、分析、数据挖掘和定位等处理。对私接终端用户生成管控黑白名单,如连续多天未符合限制要求,则生成管控名单,存储于相应的数据库中。同时,系统根据DNS日志信息,精准定位用户请求地址,并实时更新用户地址的变化。
6)应用层:接入基于DNS大数据分析实现宽带共享监控系统,用于提供供不同单位使用的数据应用子模块。当用户被列入违规用户黑名单后,将对其进行权限管理,通过DNS系统将其请求引导到代理服务节点,代理服务将向真实数据源获取请求系统,并在获取结果中插入弹窗代码,最终在用户请求响应信息中推送限制提醒或者插入干扰信息。
上述各组成部分中,数据采集与数据存储是基于DNS大数据分析实现宽带共享监控系统的数据层,通过各地市DNS服务器将日志信息采用压缩传输的方式上传到集中几点,进行存储。同时为了保证数据存储的质量,在存储前,需对数据进行各种预处理,以保证日志数据分布式文件系统中保存的数据是最新的、准确的记过。索引分析框架、大数据中心云平台、自学习框架是整个系统的业务支撑层,它实现了任务的分配、处理资源的调度与对数据的处理,得到各种分析结果并储存于相应的数据库中。在应用层,设置多种子系统模块,用户可以根据需要选择相应功能。
=====
实易智能DNS产品
产品特性
- 实时采集分析
- 实时对DNS服务器的数据进行采集、分析、存储、报表;确保及时了解每台服务器的运行状态,真正做到对DNS服务器按分、时、天、周、月、年准确跟踪。
- 用户行为跟踪
- 对域名的查询状况进行实时的分析,详细的了解域名查询总排行、单个域名的访问IP排行、访问时间曲线等。对查询IP进行总排行,地域统计,单个域名的访问域名统计,单个IP的访问时间曲线等。并且按照分、时、天、周、月、年进行实时分析。
- 海量数据处理
- 通过单台部署、集群部署两种部署方式的组合,实易DNS数据挖掘平台每秒钟处理几万到几百万的QPS请求数据,可以满足海量数据处理需求。真正满足运营级DNS大规模的数据分析应用。
- 趋势预警机制
- 实时对DNS服务器的QPS查询、数据流量、CPU、内存进行实时有效的监控,即使发现问题并发送短信、邮件形式报警。真正做到不管何时何地,都可以随时方便的了解DNS服务器运行问题并及时解决。
- 精确数据报表
- 对DNS运行数据进行实时分析并形成报表,按天、周的形式以邮件格式发送指定邮箱。同时在线以柱状图、饼图、折线图、面积图、表盘图等丰富的图形形式,直观的展现查询量统计、域名请求统计、IP来源统计等DNS服务器运行数据。
- 运营数据分析
- 根据域名查询来源、域名查询结果等数据进行深度挖掘分析,为用户分布,应用服务器部署分布做决策。
- ======
-
DNS监控记录软件DNS Firewall v1.0 免费版 - 绿色软件联盟
DNS监控记录软件DNS Firewall这种易于使用的DNS防火墙允许阻止各种网站和域名以其灵活的通配符基于规则。该规则存储在XML文件和一个单一的点击内装载。有一个实时的DNS活动监控和日志记录,以检测可疑活动。该方案维护它自己的DNS缓存来加速网页浏览。 DNS缓存的专属模式允许工作只关闭额外的安全本地DNS缓存。
====
为了了解D N S 的运行服务状况,我们需要对DNS 的各项指标进行实时监控。除了常规的CPU、内存、I / O、网络和进程状态之外,还需要针对D N S 的各类请求进行更细粒度的监控和分析。
首先,需要对D N S 实时请求数、A 类地址查询数、C N A M E 类地址查询数、M X 邮件交换查询数、A A A A I P v6 地址查询数等不同类型的D N S 查询进行分析和统计,计算各类型的数量及比例,帮助管理员在总体上掌握网络概况。
其次,分析和统计不同域名的请求次数和频率,可以了解各业务系统的访问状态,以及互联网访问的集中区域。
再次,通过统计和分析DNS 请求的IP 来源也可以从宏观上掌握整个校园网的网络请求来源分布和热点区域;特别对于对外提供访问服务的站点,可以获知来访者在地区上的分布情况。通过以上信息,我们可以实时获取D N S 的运行状态,以及电子邮件、网站等访问情况。根据校园网用户的D N S 请求I P 来源统计,我们还可以判断出校园网热点区域,这些信息可以辅助我们判断网络状况。假如某个区域在一段时间内的D N S 请求数相比最近的一段时间,出现急剧下降的情况,很可能是该区域的网络连接出现了故障,如果出现急剧上升的情况,很可能是该区域存在恶意访问行为。这些信息都可以帮助管理员在第一时间内追踪问题根源。同时,通过监测来自互联网的D N S 请求,分析和统计其I P 来源、请求对象和频率,可以发现包括D N S 放大攻击在内的恶意请求,也可以有针对性地对爬虫的请求进行过滤和屏蔽。
最后,从用户体验的角度进行响应时间及DNS 服务可用性监测。用户的网络访问首先要通过D N S 解析获取所要访问域名的I P 地址,因此D N S 的服务质量直接关系到网页加载和页面打开的速度,影响用户对网络质量的整体感受。为了更深层次地了解DNS 的服务质量,还需要模拟用户向D N S 发出请求的过程,对D N S 响应结果和响应时间进行检测。
对D N S 实时监控系统的架构进行设计,如图2所示。监控系统包括控制中心、数据传输、数据清洗、索引、分布式存储、检索、统计分析和可视化等部分。
图2 监控系统架构
通过控制中心向D N S 集群下达数据传输任务,D N S 集群将各类性能数据和日志文件通过数据传输模块发往指定的存储区域进行集中化存储。由于原始数据的类型和格式各异,所以需要根据数据源分别对各类数据进行数据清洗,去除格式异常的无效数据,并将其转换为预定义的逻辑结构。接下来数据将会以流的形式发送给索引模块,索引模块为数据建立索引,并将其存储至H B a s e 节点上。对于前端用户发起的查询请求,检索模块通过H B a s e 集群的读写接口进行并行处理,并将结果返回给用户。同时,可视化模块负责提供数据的多样化展示。
数据传输
D N S 服务器时刻都在响应用户的请求,大量的数据在会话中产生。这其中量最大的就是刻画服务性能的相关数据。例如, 服务器实时的CPU、内存使用率,网络带宽的使用情况,并发请求数等等。另外,通过配置,D N S 能够以对服务器的性能指标进行统一管理,需要将这些数据统一传输到监控系统的后端存储上进行集中处理。数据传输任务由控制中心向各DNS 服务器下发,可使用FTP、SCP 等多种传输方式。
数据清洗
对于传输到监控系统后端存储上的数据,由于其格式各不相同,并且可能包含一些无效的数据,所以在进行索引和分析之前,需要对数据进行统一的清洗。数据清洗主要通过F l u e n t d 来实现。Fluentd 是一款开源的数据流收集系统,它的特点在于其输入输出部分均是可定制化的,用户可以通过简单的配置,将数据流以指定格式输出到目标位置。例如,一条典型的DNS 查询请求格式如下所示:
18-Aug-2012 15:05:19.975 info: client 175.186.6.136#56377:view internal: query: www.hao123.com IN A +
各字段分别记录了请求日期、时间、请求来源和端口,以及请求对象和请求类型。为了从中提取对数据统计和分析有价值的信息,可以通过构造正则表达式定义如下的F l u e n t d 数据格式配置来对该条数据进行整理:
format /^(?<date[^ ]*>) (?<t_time[^ ]*>) [^ ]* [^ ]* (?<src_ip[a-zA-Z0-9:.]*>)[^ ]* [^ ]*[^ ]*[^ ]*(?<domain[^ ]*>) .*$/
整理后的数据为Key-Value 的形式,非常适合做进一步地处理。
索引与分布式存储
为了提高数据检索的速度,需要将清洗后的数据做进一步的处理而不是直接进行存储。首先将数据通过全文索引工具Lucene 进行处理,由于是文本文件,Lucene 使用Text File Parser 对数据进行解析,提取出索引项和相关频率等信息。接下来Lucene 对数据构建反向索引并进行存储,其中反向索引包含搜索关键词所对应的所有文档,通过这种方式来提高对文档关键词的检索速度。但随着处理数据量的增加,索引的规模也在迅速膨胀,直接基于文件系统存储索引会使检索性能明显下降。本文通过将Lucene 索引存储到专为海量数据处理而设计的HBase 之上,能够很好地利用HBase 高可靠性、高性能、可伸缩的分布式存储特点,即使在索引规模较大的情况下也能够实现实时的查询。
控制中心
对于监控系统的数据传输、数据清洗、索引和存储等任务,都需要由控制中心来统一下发命令和进行任务调度。在数据传输过程中,控制中心需要实时检测传输是否中断,传输完成之后还要再次检查线上数据和监控系统后端存储数据是否一致。如果两份数据不一致,控制中心需要通知数据传输模块进行重传。对于成功传输的数据,控制中心会通知传输模块将其从DNS 线上服务器删除。同样,数据处理的其他各阶段,也需要控制中心来监控处理过程,对于出现异常的任务需要重新启动,只有顺利完成的任务才能够进入下一个阶段进行进一步的数据处理。
检索
经过索引后的数据,可以通过监控系统的前端提交查询请求。查询请求的格式支持Lucene 的查询语法,同时支持多条件、多字段的综合查询。例如,需要查询2013 年07 月03 日所有查询f u d a n .edu.cn 域名的请求情况,可以输入以下语句进行查询:
Date:”2013-07-03” AND domain:”fudan.edu.cn”
检索模块将通过H B a s e 查询接口对索引数据进行查询,并返回所有的结果。
图3 DNS 监控系统数据检索页面
可视化
对于D N S 的各项监控指标,单纯从记录查询和数据统计上可能无法对D N S 的整体运行状况有全局性的了解。因此对监控数据进行可视化展示和对比能够让管理员对D N S 运行状态一目了然。本文设计的监控系统通过横向和纵向对比各监控指标所占的比例和趋势,提供柱状、饼状和热力图等可视化方式,使管理员全面掌握DNS 以及网络的运行情况。
对于各类D N S 监控指标的实时可视化效果如图4 所示。当DNS 流量或并发请求出现异常时,为了进一步排查,需要对请求来源做统计分析,请求来源可视化可以为解决此类问题提供帮助。如图5 所示,通过某天的D N S 流量统计报表发现其中一台D N S 流量同比有大幅上涨,通过图6 所示的D N S 请求来源统计可以迅速定位可疑I P 地址,并通过监控系统的前台检索该I P 请求内容,进一步确认该IP 是否存在恶意访问行为。
图4 DNS 各类查询比例
图5 DNS 每日统计报表
图6 DNS 请求来源
同时,DNS 监控系统对请求来源实时绘制热力图,根据其IP 来源映射到所属的地理位置,并以标注点的明亮程度代表请求的数量多少。热力图支持通过正则表达式过滤IP 来源和查询历史。
本文设计和实现了一种DNS 实时监控系统,能够实时分析和统计D N S 的各类请求及来源分布,并通过统计报表及可视化的手段帮助管理员从全局把握D N S 和网络的运行状况。在实际应用中,该实时监控系统能够帮助管理员及时发现网络中潜在的问题和风险,进行预警和告警,还可以帮助管理员进行细粒度的问题排查,具备处理高效、监控精准、响应实时、统计分析全面的特点。
=====
https://data.aliyun.com/visual/datav?spm=5176.67234.765261.84.d25108037DOV
参考一下阿里云的datav
http://www.digihail.com/ 参考一下数字冰雹的案例,看看网络,安全的威胁都是用什么来表现的========
dns安全威胁的可视化。
=====
态势感知 + DataV:安全可视化交互,这么玩儿
=====