本发明涉互联网安全领域,尤其涉及一种电子装置、防火墙开通验证方法及存储介质。
背景技术:
随着网络技术的发展及应用,网络安全问题也变得日益严重。为了增加网络数据交互的安全,在内部网络与外部网络之间通常设置有防火墙。而内部系统在调用外部系统的数据时,需要验证该内部系统与需调用的各个外部系统之间的防火墙是否开通。
目前,常用的验证防火墙是否开通的方法需要借助人工查询内部系统需调用的各个外部系统的目的ip地址、以及目的端口,并模拟http请求建立内部系统与外部系统的通信通道之后,依次执行telnet命令,远程登录查询到的各个目的ip地址和目的端口对应的外部系统来验证对应的防火墙是否开通。由于整个过程中需要借助人工进行查询,因此存在容易出错、准确率不高,且验证效率低下的问题。
技术实现要素:
有鉴于此,本发明提出一种电子装置、防火墙开通验证方法及存储介质,能够提高验证防火墙是否开通的准确率及效率。
首先,为实现上述目的,本发明提出一种电子装置,所述电子装置包括存储器、及与所述存储器连接的处理器,所述处理器用于执行所述存储器上存储的防火墙开通验证程序,所述防火墙开通验证程序被所述处理器执行时实现如下步骤:
a1、接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址及源端口信息;
a2、基于所述源ip地址及所述源端口信息遍历预先生成的防火墙白名单,查询所述防火墙白名单中分别与所述源ip地址及所述源端口信息之间相互映射的目标ip地址及目标端口信息;
a3、若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述目标ip地址及所述目标端口信息启动对应的线程数执行验证防火墙开通的指令。
进一步地,所述步骤a3可替换为如下步骤:
若查询不到所述源ip地址及所述源端口信息对应的目标ip地址及目标端口信息,则向预先确定的服务器节点发送防火墙开通验证指令。
进一步地,所述步骤a3可替换为如下步骤:
若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述源ip地址、所述源端口信息、查询到的目标ip地址及目标端口信息生成防火墙端口信息列表,根据生成的防火墙端口信息列表启动对应的线程数执行验证防火墙开通的指令。
进一步地,所述防火墙白名单包括源ip地址及源端口信息与目标ip地址及目标端口信息之间的映射关系,所述防火墙开通验证程序被所述处理器执行时还实现如下步骤:
在预设时间内实时或定时监测预先确定的客户端,若监测到有客户端启动应用程序,则监听该客户端发送的请求消息,所述请求消息中包括目标服务系统的服务编码信息及所述服务编码信息对应的ip地址;
获取监听到的服务编码信息对应的ip地址的端口信息,生成监听到的ip地址及获取的端口信息与该客户端的源ip地址及源端口信息之间的映射关系,将该映射关系写入所述防火墙白名单。
进一步地,所述目标服务系统的服务编码信息为预先确定的可读字符串。
此外,为实现上述目的,本发明还提供一种防火墙开通验证方法,该方法包括如下步骤:
s1、接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址及源端口信息;
s2、基于所述源ip地址及所述源端口信息遍历预先生成的防火墙白名单,查询所述防火墙白名单中分别与所述源ip地址及所述源端口信息之间相互映射的目标ip地址及目标端口信息;
s3、若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述目标ip地址及所述目标端口信息启动对应的线程数执行验证防火墙开通的指令。
进一步地,所述步骤s3可替换为如下步骤:
若查询不到所述源ip地址及所述源端口信息对应的目标ip地址及目标端口信息,则向预先确定的服务器节点发送防火墙开通验证指令。
进一步地,所述步骤s3可替换为如下步骤:
若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述源ip地址、所述源端口信息、查询到的目标ip地址及目标端口信息生成防火墙端口信息列表,根据生成的防火墙端口信息列表启动对应的线程数执行验证防火墙开通的指令。
进一步地,所述防火墙白名单包括源ip地址及源端口信息与目标ip地址及目标端口信息之间的映射关系,所述方法还包括如下步骤:
在预设时间内实时或定时监测预先确定的客户端,若监测到有客户端启动应用程序,则监听该客户端发送的请求消息,所述请求消息中包括目标服务系统的服务编码信息及所述服务编码信息对应的ip地址;
获取监听到的服务编码信息对应的ip地址的端口信息,生成监听到的ip地址及获取的端口信息与该客户端的源ip地址及源端口信息之间的映射关系,将该映射关系写入所述防火墙白名单。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有防火墙开通验证程序,所述防火墙开通验证程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的防火墙开通验证方法的步骤。
本发明所提出的电子装置、防火墙开通验证方法及存储介质,通过在接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址及源端口信息;基于所述源ip地址及所述源端口信息遍历预先生成的防火墙白名单,查询所述防火墙白名单中分别与所述源ip地址及所述源端口信息之间相互映射的目标ip地址及目标端口信息;若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述目标ip地址及目标端口信息启动对应的线程数执行验证防火墙开通指令。提高了验证防火墙是否开通的效率,并提高了验证准确率。
附图说明
图1是本发明提出的电子装置一可选的硬件架构的示意图;
图2是本发明电子装置一实施例中防火墙开通验证程序的程序模块示意图;
图3是本发明防火墙开通验证方法较佳实施例的实施流程图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参阅图1所示,是本发明提出的电子装置一可选的硬件架构示意图。本实施例中,电子装置10可包括,但不仅限于,可通过通信总线14相互通信连接存储器11、处理器12、网络接口13。需要指出的是,图1仅示出了具有组件11-14的电子装置10,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,存储器11至少包括一种类型的计算机可读存储介质,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器11可以是电子装置10的内部存储单元,例如电子装置10的硬盘或内存。在另一些实施例中,存储器11也可以是电子装置10的外包存储设备,例如电子装置10上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,存储器11还可以既包括电子装置10的内部存储单元也包括其外部存储设备。本实施例中,存储器11通常用于存储安装于电子装置10的操作系统和各类应用软件,例如防火墙开通验证程序等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器12在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。处理器12通常用于控制电子装置10的总体操作。本实施例中,处理器12用于运行存储器11中存储的程序代码或者处理数据,例如运行的防火墙开通验证程序等。
网络接口13可包括无线网络接口或有线网络接口,网络接口13通常用于在电子装置10与其他电子设备之间建立通信连接。
通信总线14用于实现组件11-13之间的通信连接。
图1仅示出了具有组件11-14以及防火墙开通验证程序的电子装置10,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
可选地,电子装置10还可以包括用户接口(图1中未示出),用户接口可以包括显示器、输入单元比如键盘,其中,用户接口还可以包括标准的有线接口、无线接口等。
可选地,在一些实施例中,显示器可以是led显示器、液晶显示器、触控式液晶显示器以及oled触摸器等。进一步地,显示器也可称为显示屏或显示单元,用于显示在电子装置10中处理信息以及用于显示可视化的用户界面。
在一实施例中,存储器11中存储的防火墙开通验证程序被处理器12执行时,实现如下操作:
接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址及源端口信息;
基于所述源ip地址及所述源端口信息遍历预先生成的防火墙白名单,查询所述防火墙白名单中分别与所述源ip地址及所述源端口信息之间相互映射的目标ip地址及目标端口信息;
若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述目标ip地址及目标端口信息启动对应的线程数执行验证防火墙开通的指令。
需要说明的是,在本发明的一些实施例中,若分别与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息的数量较大,且超过预设的阈值时,为了方便则根据相互映射的关系生成对应的防火墙端口信息列表;并根据生成的防火墙端口信息列表启动对应的线程数执行验证防火墙开通的指令,验证各个目标ip地址及目标端口与所述源ip地址及所述源端口之间的防火墙是否打开。
或者,在本发明的另一种实施方式中,若查询不到所述源ip地址及所述源端口信息对应的目标ip地址及目标端口信息,则向预先确定的服务器节点发送防火墙开通验证指令。
需要说明的是,所述防火墙白名单包括源ip地址及源端口信息与目标ip地址及目标端口信息之间的映射关系,存储器11中存储的防火墙开通验证程序被处理器12执行时,还包括预先生成所述防火墙白名单的步骤,所述预先生成所述防火墙白名单的步骤包括:
在预设时间内实时或定时监测预先确定的客户端,若监测到有客户端启动应用程序,则监听该客户端发送的请求消息,所述请求消息中包括目标服务系统的服务编码信息及所述服务编码信息对应的目标ip地址;
在本实施例中,所述预设时间根据预先确定的客户端的服务类型可自动设置,例如若预先确定的客户端为邮件服务系统,则预设时间可以设置为最近3个月内,或者最近一个月内,或者若预先确定的客户端为万维网的网页浏览器,则预设时间可以设置为最近一周等;所述目标服务系统的服务编码信息为预先确定的可读字符串。
获取监听到的服务编码信息对应的目标ip地址对应的目标端口信息,生成监听到的目标ip地址及获取的目标端口信息与该客户端的源ip地址及源端口信息之间的映射关系,将该映射关系写入所述防火墙白名单。
进一步地,将所述防火墙白名单存入预先确定的数据库中。
例如,在一实施例中,在接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址为192.168.0.1,源端口信息为8080,基于该源ip地址及源端口信息遍历预先生成的防火墙白名单,假设在防火墙白名单中查询到该源ip地址相互映射的目标ip地址为192.168.1.1、及192.168.1.2,与该源端口信息相互映射的目标端口信息为8080,则生成该客户端对应的需要打开的防火墙端口信息列表如下:
第一组(192.168.0.1到192.168.1.18080)
第二组(192.168.0.1到192.168.1.28080)
根据该防火墙端口信息列表,启动对应的多线程同时生成多个链接所述源ip地址的http请求,登录所述源ip地址192.168.0.1;若接收到该客户端返回的登录成功信息,则生成分别链接所述目标ip地址192.168.1.18080、及192.168.1.18080的telnet命令,若接收到所述目标ip地址对应的服务系统返回的链接成功的信息,则确定防火墙开通。
通过上述实施例可知,本发明提出的电子装置,通过在接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址及源端口信息;基于所述源ip地址及所述源端口信息遍历预先生成的防火墙白名单,查询所述防火墙白名单中分别与所述源ip地址及所述源端口信息之间相互映射的目标ip地址及目标端口信息;若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述目标ip地址及目标端口信息启动对应的线程数执行验证防火墙开通指令。提高了验证防火墙是否开通的效率,并提高了验证准确率。
进一步需要说明的是,本发明的防火墙开通验证程序依据其各部分所实现的功能不同,可用具有相同功能的程序模块进行描述。请参阅图2所示,是本发明电子装置一实施例中互防火墙开通验证程序的程序模块示意图。本实施例中,防火墙开通验证程序依据其各部分所实现的功能的不同,可以被分割成获取模块201、查询模块202、验证模块203。由上面的描述可知,本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述防火墙开通验证程序在电子装置10中的执行过程。所述模块201-203所实现的功能或操作步骤均与上文类似,此处不再详述,示例性地,例如其中:
获取模块201用于在接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址及源端口信息;
查询模块202用于基于所述源ip地址及所述源端口信息遍历预先生成的防火墙白名单,查询所述防火墙白名单中分别与所述源ip地址及所述源端口信息之间相互映射的目标ip地址及目标端口信息;
识别模块203用于若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述目标ip地址及目标端口信息启动对应的线程数执行验证防火墙开通指令。
此外,本发明还提出一种防火墙开通验证方法,请参阅图3所示,所述防火墙开通验证方法包括如下步骤:
步骤s301,接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址及源端口信息;
步骤s302,基于所述源ip地址及所述源端口信息遍历预先生成的防火墙白名单,查询所述防火墙白名单中分别与所述源ip地址及所述源端口信息之间相互映射的目标ip地址及目标端口信息;
步骤s303,若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述目标ip地址及目标端口信息启动对应的线程数执行验证防火墙开通指令。
需要说明的是,在本发明的一些实施例中,若分别与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息的数量较大,且超过预设的阈值时,为了方便则根据相互映射的关系生成对应的防火墙端口信息列表;并根据生成的防火墙端口信息列表启动对应的线程数执行验证防火墙开通的指令,验证各个目标ip地址及目标端口与所述源ip地址及所述源端口之间的防火墙是否打开。
或者,在本发明的另一种实施方式中,若查询不到所述源ip地址及所述源端口信息对应的目标ip地址及目标端口信息,则向预先确定的服务器节点发送防火墙开通验证指令。
需要说明的是,在本申请的各个实施例中,所述防火墙白名单包括源ip地址及源端口信息与目标ip地址及目标端口信息之间的映射关系,所述防火墙开通验证方法还包括预先生成所述防火墙白名单的步骤,所述预先生成所述防火墙白名单的步骤包括:
在预设时间内实时或定时监测预先确定的客户端,若监测到有客户端启动应用程序,则监听该客户端发送的请求消息,所述请求消息中包括目标服务系统的服务编码信息及所述服务编码信息对应的目标ip地址;
获取监听到的服务编码信息对应的目标ip地址的目标端口信息,生成监听到的目标ip地址及获取的目标端口信息与该客户端的源ip地址及源端口信息之间的映射关系,将该映射关系写入所述防火墙白名单。
在本实施例中,所述预设时间根据预先确定的客户端的服务类型可自动设置,例如若预先确定的客户端为邮件服务系统,则预设时间可以设置为最近3个月内,或者最近一个月内,或者若预先确定的客户端为万维网的网页浏览器,则预设时间可以设置为最近一周等;所述目标服务系统的服务编码信息为预先确定的可读字符串。
进一步地,将所述防火墙白名单存入预先确定的数据库中。
例如,在一实施例中,在接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址为192.168.0.1,源端口信息为8080,基于该源ip地址及源端口信息遍历预先生成的防火墙白名单,假设在防火墙白名单中查询到该源ip地址相互映射的目标ip地址为192.168.1.1、及192.168.1.2,与该源端口信息相互映射的目标端口信息为8080,则生成该客户端对应的需要打开的防火墙端口信息列表如下:
第一组(192.168.0.1到192.168.1.18080)
第二组(192.168.0.1到192.168.1.28080)
根据该防火墙端口信息列表,启动对应的多线程同时生成多个链接所述源ip地址的http请求,登录所述源ip地址192.168.0.1;若接收到该客户端返回的登录成功信息,则生成分别链接所述目标ip地址192.168.1.18080、及192.168.1.18080的telnet命令,若接收到所述目标ip地址对应的服务系统返回的链接成功的信息,则确定防火墙开通。
通过上述实施例可知,本发明提出的防火墙开通验证方法,通过在接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址及源端口信息;基于所述源ip地址及所述源端口信息遍历预先生成的防火墙白名单,查询所述防火墙白名单中分别与所述源ip地址及所述源端口信息之间相互映射的目标ip地址及目标端口信息;若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述目标ip地址及目标端口信息启动对应的线程数执行验证防火墙开通指令。提高了验证防火墙是否开通的效率,并提高了验证准确率。
此外,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有防火墙开通验证程序,所述防火墙开通验证程序被处理器执行时实现如下操作:
接收到客户端发送的获取服务数据的请求后,获取该客户端的源ip地址及源端口信息;
基于所述源ip地址及所述源端口信息遍历预先生成的防火墙白名单,查询所述防火墙白名单中分别与所述源ip地址及所述源端口信息之间相互映射的目标ip地址及目标端口信息;
若查询到与所述源ip地址及所述源端口信息相互映射的目标ip地址及目标端口信息,则根据所述目标ip地址及目标端口信息启动对应的线程数,同时执行验证防火墙开通指令,验证各个目标ip地址及目标端口与所述源ip地址及所述源端口之间的防火墙是否打开。
进一步地,所述防火墙开通验证程序被处理器执行时还实现如下操作:
若查询不到所述源ip地址及所述源端口信息对应的目标ip地址及目标端口信息,则向预先确定的服务器节点发送防火墙开通验证指令。
进一步地,所述防火墙开通验证程序被处理器执行时还实现如下操作:
在预设时间内实时或定时监测预先确定的客户端,若监测到有客户端启动应用程序,则监听该客户端发送的请求消息,所述请求消息中包括目标服务系统的服务编码信息及所述服务编码信息对应的ip地址;
获取监听到的服务编码信息对应的ip地址的端口信息,生成监听到的ip地址及获取的端口信息与该客户端的源ip地址及源端口信息之间的映射关系,将该映射关系写入所述防火墙白名单。
本发明计算机可读存储介质具体实施方式与上述电子装置以及防火墙开通验证方法各实施例基本相同,在此不作累述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。