一种互联网空间数据的搜索系统及方法技术方案

技术编号:19593338 阅读:332 留言:0更新日期:2018-11-28 04:52
本发明专利技术公开了一种互联网空间数据的搜索系统及方法。该系统包括:探测模块、抓取模块、清洗模块、存储模块、搜索模块和中间件,所述探测模块用于探测互联网中存活的设备和主机,抓取模块用于获取存活的主机和设备的数据信息;清洗模块用于对所述数据信息进行清洗;存储模块用于将清洗后的数据信息保存到数据库;搜索模块用于从所述数据库中搜索设备或主机的数据信息;所述中间件连接所述存储模块和所述搜索模块,所述中间件用于将所述存储模块中的数据信息同步到所述搜索模块中。本发明专利技术提供的互联网空间数据的搜索系统及方法能够提高搜索系统的存储和搜索读取效率。

【技术实现步骤摘要】
一种互联网空间数据的搜索系统及方法
本专利技术涉及互联网数据搜索领域,特别是涉及一种互联网空间数据的搜索系统及方法。
技术介绍
在互联网空间中存在着无数的主机与终端设备,它们虽然每日产生巨量的数据信息,但是用户却不能对其有效的掌握,我们可以通过抓取这些数据并存入数据库,通过构建搜索系统来完成对这些数据信息的搜索,从而方便用户利用。现有的搜索系统大多采用爬虫的方法爬取数据,但大多采用直接将数据导入搜索服务器,从而实现其搜索数据的功能。但是,由于现有技术中搜索系统的数据存储结构与搜索结构不明确,易产生阻塞。另外,由于互联网中不同数据类型的主机间关联程度较低,采用爬虫框架得到的数据量会远远小于实际存在的数据量,偏差过大。
技术实现思路
本专利技术的目的是提供一种互联网空间数据的搜索系统及方法,能够提高搜索系统的存储和搜索读取效率。为实现上述目的,本专利技术提供了如下方案:一种互联网空间数据的搜索系统,所述系统包括:探测模块、抓取模块、清洗模块、存储模块、搜索模块和中间件,所述探测模块用于探测互联网中存活的主机和设备,抓取模块用于获取存活的主机和设备的数据信息;清洗模块用于对所述数据信息进行清洗;存储模块用于将清洗后的数据信息保存到数据库;所述中间件连接所述存储模块和所述搜索模块,所述中间件用于将所述存储模块中的数据索引同步到所述搜索模块中;搜索模块用于从所述数据索引搜索中搜索设备或主机的数据信息。可选的,所述中间件为Monstache模块。可选的,所述存储模块为MongoDB存储服务器。可选的,所述所述搜索模块为ElasticSearch搜索服务器。本专利技术还提供了一种互联网空间数据的搜索方法,所述方法应用于如权利要求1-4中任一项所述的互联网空间数据的搜索系统,所述方法包括:探测互联网中存活的各种主机和设备;获取存活的主机和设备的数据信息;对所述数据信息进行清洗;将清洗后的数据信息保存到数据库;采用中间件将数据库中的数据信息的索引同步于搜索服务器ElasticSearch;采用所述搜索服务器ElasticSearch对同步的数据信息的索引搜索主机或设备的数据信息。可选的,所述探测互联网中存活的各种设备和主机,具体包括:扫描互联网中的主机或设备;向扫描到的主机或设备发出握手请求;根据所述主机或设备对握手请求的响应确定所述主机或设备是否存活。可选的,所述获取存活的主机和设备的数据信息,具体包括:采用zmap与zgrab的集群方法并行获取存活的所述主机或设备的数据信息,所述数据信息包括所述主机或设备在互联网空间展示的内容、所述主机或设备的组件信息和地理信息。可选的,所述对所述数据信息进行清洗,具体包括:将所述数据信息读入内存;删除存在404或ERROR数据;删除匹配字段信息为Data:{}的数据;删除包含数组的数据。可选的,所述将清洗后的数据信息保存到数据库,具体包括:采用多线程读取清洗后的数据信息,并调用数据导入功能,将读取的数据信息写入数据库,所述数据信息格式为json格式。根据本专利技术提供的具体实施例,本专利技术公开了以下技术效果:本专利技术提供的互联网空间数据的搜索系统及方法,通过中间件来同步存储模块与搜索模块中的数据,将数据存储与搜索划分为不同的模块,避免了同时进行存储和搜索功能所产生的IO阻塞,使数据导入与搜索互不影响,提高系统存储和读取效率。此外,数据获取采用了zmap与zgrab的集群方法,对互联网空间中所有活动的设备和主机进行数据抓取,保证了数据量。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例互联网空间数据的搜索系统结构图;图2为本专利技术实施例互联网空间数据的搜索方法流程图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术的目的是提供一种互联网空间数据的搜索系统及方法,能够提高搜索系统的存储和搜索读取效率。为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。图1为本专利技术实施例互联网空间数据的搜索系统结构图,如图1所示,本专利技术提供的互联网空间数据的搜索系统包括:探测模块101、抓取模块102、清洗模块103、存储模块104、搜索模块106和中间件105,所述探测模块101用于探测互联网中存活的设备和主机,抓取模块102用于获取存活的主机和设备的数据信息;清洗模块103用于对所述数据信息进行清洗;存储模块104用于将清洗后的数据信息保存到数据库;所述中间件连接所述存储模块104和所述搜索模块106,所述中间件105用于将所述存储模块104中的数据索引同步到所述搜索模块106中;搜索模块106用于从所述数据索引搜索中搜索设备或主机的数据信息。其中,中间件105可以为Monstache模块。存储模块104可以为MongoDB存储服务器,选用MongoDB作为存储服务器,利用其数据库的特性可以实现快速的存储数据。搜索模块106可以为ElasticSearch搜索服务器。在使用系统搜索时,仅检索ElasticSearch的数据索引,不去干扰MongDB,这样实现了存储和搜索的分离。探测模块:对于互联网空间中主机设备的探测是通过使用Zmap执行主机与设备的端口扫描完成的,从握手派生结构化字段(例如,证书主体或TLS密码套件)与主机设备进行完整的应用程序握手,随后保存这次的握手信息,进行对下一个主机设备的握手。根据主机设备对这些握手请求的响应,从而判断主机设备存货与否。此外,探测的模块也具备几个特点。首先,虽然通常的探测仅仅基于一个协议,但为了满足探测的准确性,需采用多个方面的探测,如某些HTTPS服务器仅支持SSLv3,但同时还存在TLS服务器,所以对HTTPS服务器探测需要同时用TLS扫描和SSLv3扫描。其次,设备模型可能只能基于其HTTP页面进行识别,所以通过协议收集后,还需要进行分组。另外,为了面对互联网上激增的设备和主机,采用可扩展的方法,即对协议的识别数量将随着时间的推移而增长。抓取模块:主机、设备指定端口的数据信息的抓取主要利用了ZGrab。ZGrab支持HTTP,HTTP代理,HTTPS,SMTP,IMAP,POP3,FTP,CWMP,SSH和Modbus的应用程序握手,以及StartTLS,Heartbleed,SSLv3和特定的密码套件检查。ZGrab由go语言来编写,可以根据其高并发的特点,使其并行处理多个请求。默认情况下ZGrab只会执行一个事件连接,只是打开一个TCP连接。经过配置可使其实现多个网络事件的串行链。数据抓取需要首先对主机设备端口发送数据请求信息,并保持请求内容基于相应的协议支持,就可以得到逐渐设备相应的响应内容,其中包括但不仅限于响应头head,响应体body,server信息,cou本文档来自技高网...

【技术保护点】
1.一种互联网空间数据的搜索系统,其特征在于,所述系统包括:探测模块、抓取模块、清洗模块、存储模块、搜索模块和中间件,所述探测模块用于探测互联网中存活的主机和设备,抓取模块用于获取存活的主机和设备的数据信息;清洗模块用于对所述数据信息进行清洗;存储模块用于将清洗后的数据信息保存到数据库;所述中间件连接所述存储模块和所述搜索模块,所述中间件用于将所述存储模块中的数据索引同步到所述搜索模块中;搜索模块用于从所述数据索引搜索中搜索设备或主机的数据信息。

【技术特征摘要】
1.一种互联网空间数据的搜索系统,其特征在于,所述系统包括:探测模块、抓取模块、清洗模块、存储模块、搜索模块和中间件,所述探测模块用于探测互联网中存活的主机和设备,抓取模块用于获取存活的主机和设备的数据信息;清洗模块用于对所述数据信息进行清洗;存储模块用于将清洗后的数据信息保存到数据库;所述中间件连接所述存储模块和所述搜索模块,所述中间件用于将所述存储模块中的数据索引同步到所述搜索模块中;搜索模块用于从所述数据索引搜索中搜索设备或主机的数据信息。2.根据权利要求1所述的互联网空间数据的搜索系统,其特征在于,所述中间件为Monstache模块。3.根据权利要求1所述的互联网空间数据的搜索系统,其特征在于,所述存储模块为MongoDB存储服务器。4.根据权利要求1所述的互联网空间数据的搜索系统,其特征在于,所述所述搜索模块为ElasticSearch搜索服务器。5.一种互联网空间数据的搜索方法,其特征在于,所述方法应用于如权利要求1-4中任一项所述的互联网空间数据的搜索系统,所述方法包括:探测互联网中存活的各种主机和设备;获取存活的主机和设备的数据信息;对所述数据信息进行清洗;将清洗后的数据信息保存到数据库;采用中间件将数据库中的数据信息的索引同步于搜索...

【专利技术属性】
技术研发人员:姚茗亮史闻博翟润棣汤梓寅刘永辉刘乃齐
申请(专利权)人:东北大学秦皇岛分校
类型:发明
国别省市:河北,13

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1