CN106899604B - 数据包过滤规则的处理方法及装置 - Google Patents

数据包过滤规则的处理方法及装置 Download PDF

Info

Publication number
CN106899604B
CN106899604B CN201710151149.3A CN201710151149A CN106899604B CN 106899604 B CN106899604 B CN 106899604B CN 201710151149 A CN201710151149 A CN 201710151149A CN 106899604 B CN106899604 B CN 106899604B
Authority
CN
China
Prior art keywords
filtering
preset
data packet
rule
packet filtering
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710151149.3A
Other languages
English (en)
Other versions
CN106899604A (zh
Inventor
陶怡然
刘德启
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Neusoft Corp
Original Assignee
Neusoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Neusoft Corp filed Critical Neusoft Corp
Priority to CN201710151149.3A priority Critical patent/CN106899604B/zh
Publication of CN106899604A publication Critical patent/CN106899604A/zh
Application granted granted Critical
Publication of CN106899604B publication Critical patent/CN106899604B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Abstract

本发明公开了一种数据包过滤规则的处理方法及装置,涉及信息处理技术领域,主要目的在于解决在用户不是系统管理员的前提下,实现调用操作系统内核Kernel,以创建过滤规则时,需要通过root方式成为系统中唯一的超级用户,实现过程复杂繁琐。本发明的主要技术方案包括:获取客户端发送的数据包过滤设置请求,所述数据包过滤设置请求中包含过滤目标及过滤类别;根据所述过滤目标及过滤类别确定与所述过滤目标对应的网络协议类型,并将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中;基于预置模组,并根据所述预设规则表创建数据包过滤规则。应用于防火墙对网络数据安全进行防护的过程中。

Description

数据包过滤规则的处理方法及装置
技术领域
本发明涉及信息处理技术领域,特别是涉及一种数据包过滤规则的处理方法及装置。
背景技术
伴随着终端及通信技术的快速发展,人们对通信过程中数据的安全性越来越重视,通常的做法为在终端中安装防火墙,通过该防火墙(Firewall)对通信过程中的数据安全进行防护。
目前,以安卓系统的终端为例,防火墙允许用户配置过滤数据包的规则,具体实现过程如下:防火墙通过预设接口接收用户发送的设置请求,该设置请求中包含包过滤规则,防火墙调用操作系统内核Kernel,由操作系统内核Kernel实现包过滤规则的创建,待操作系统内核Kernel创建完包过滤规则后,将创建结果通知防火墙,以便防火墙根据包过滤规则维护数据通信过程中的数据安全。
发明人在实现上述发明过程中,发现现有技术中在调用操作系统内核Kernel时,只有系统管理员才拥有调用及使用权限;若用户不是系统管理员,则需要通过root方式成为系统中唯一的超级用户,以获得调用操作系统内核Kernel的权限,实现过程复杂繁琐。
发明内容
有鉴于此,本发明提供的一种数据包过滤规则的处理方法及装置,主要目的在于解决在用户不是系统管理员的前提下,实现调用操作系统内核Kernel,以创建过滤规则时,需要通过root方式成为系统中唯一的超级用户,实现过程复杂繁琐。
依据本发明一个方面,本发明提供了一种数据包过滤规则的处理方法,包括:
获取客户端发送的数据包过滤设置请求,所述数据包过滤设置请求中包含过滤目标及过滤类别;
根据所述过滤目标及过滤类别确定与所述过滤目标对应的网络协议类型,并将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中;
基于预置模组,并根据所述预设规则表创建数据包过滤规则。
可选的,基于预置模组,并根据所述预设规则表创建数据包过滤规则包括:
向所述预置模组发送建立通信连接请求,并向所述预置模组发送创建数据包过滤规则的请求,以便所述预置模组根据所述预设规则表创建所述数据包过滤规则;
接收所述预置模组返回的创建所述数据包过滤规则的状态码,所述状态码用于反映所述预置模组创建数据包过滤规则的当前状态。
可选的,将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中包括:
获取所述过滤目标对应的网络协议类型;其中,所述网络协议类型包括:TCP类型、TCP范围类型、UDP类型、HTTP类型;
根据所述过滤类别将所述过滤目标与网络协议类型的对应关系存储于预设黑名单规则表/预设白名单规则表中;所述预设规则表包括预设黑名单规则表以及预设白名单规则表。
可选的,在将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中之后,所述方法还包括:
设置网络协议类型的优先级;
根据优先级对所述预设黑名单规则表/预设白名单规则表中过滤目标与网络协议类型的对应关系进行重新排序。
可选的,在基于预置模组,并根据所述预设规则表创建数据包过滤规则之后,所述方法还包括:
将所述预置模组返回的状态码通过异步广播方式发送至所述客户端。
可选的,在获取客户端发送的数据包过滤设置请求之前,所述方法还包括:
基于软件开发工具包SDK验证客户端访问权限的合法性,以及验证数据包过滤设置请求中过滤目标格式的合法性;
所述获取客户端发送的数据包过滤设置请求包括:
若所述客户端访问权限及数据包过滤设置请求中过滤目标格式均合法,则获取所述客户端发送的数据包过滤设置请求。
可选的,所述预置模组为IP信息包过滤系统IPtables。
依据本发明另一个方面,本发明提供了一种数据包过滤规则的处理装置,包括:
获取单元,用于获取客户端发送的数据包过滤设置请求,所述数据包过滤设置请求中包含过滤目标及过滤类别;
确定单元,用于根据所述获取单元获取的所述过滤目标及过滤类别确定与所述过滤目标对应的网络协议类型;
记录单元,用于将所述确定单元确定的所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中;
创建单元,用于基于预置模组,并根据所述记录单元记录的所述预设规则表创建数据包过滤规则。
可选的,所述创建单元包括:
第一发送模块,用于向所述预置模组发送建立通信连接请求;
第二发送模块,用于在所述第一发送模块向所述预置模组发送建立通信连接请求之后,向所述预置模组发送创建数据包过滤规则的请求,以便所述预置模组根据所述预设规则表创建所述数据包过滤规则;
接收模块,用于接收所述预置模组返回的创建所述数据包过滤规则的状态码,所述状态码用于反映所述预置模组创建数据包过滤规则的当前状态。
可选的,所述记录单元包括:
获取模块,用于获取所述过滤目标对应的网络协议类型;其中,所述网络协议类型包括:TCP类型、TCP范围类型、UDP类型、HTTP类型;
存储模块,用于根据所述过滤类别将所述过滤目标与网络协议类型的对应关系存储于预设黑名单规则表/预设白名单规则表中;所述预设规则表包括预设黑名单规则表以及预设白名单规则表。
可选的,所述装置还包括:
设置单元,在所述记录单元将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中之后,设置网络协议类型的优先级;
排序单元,用于根据所述设置单元设置的优先级对所述预设黑名单规则表/预设白名单规则表中过滤目标与网络协议类型的对应关系进行重新排序。
可选的,所述装置还包括:
发送单元,用于在所述创建单元基于预置模组,并根据所述预设规则表创建数据包过滤规则之后,将所述预置模组返回的状态码通过异步广播方式发送至所述客户端。
可选的,所述装置还包括:
验证单元,用于在所述获取单元获取客户端发送的数据包过滤设置请求之前,基于软件开发工具包SDK验证客户端访问权限的合法性,以及验证数据包过滤设置请求中过滤目标格式的合法性;
所述获取单元,还用于当所述验证单元验证所述客户端访问权限及数据包过滤设置请求中过滤目标格式均合法时,获取所述客户端发送的数据包过滤设置请求。
可选的,所述预置模组为IP信息包过滤系统IPtables。
借由上述技术方案,本发明提供的数据包过滤规则的处理方法及装置,FrameWorks组件获取客户端发送的数据包过滤设置请求,该数据包过滤设置请求中包含过滤目标及过滤类别,根据过滤目标及过滤类别确定与过滤目标对应的网络协议类型,并将过滤目标及网络协议类型的对应关系记录于预设规则表中,基于预置模组,并根据预设规则表创建数据包过滤规则,与现有技术相比,本发明通过FrameWorks组件实现对数据包过滤规则的创建,无需要求用户为系统管理员身份,或者,将操作系统进行root升级等操作,操作过程简单。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种数据包过滤规则的处理方法的流程图;
图2示出了本发明实施例提供的一种数据包过滤规则的处理装置的组成框图;
图3示出了本发明实施例提供的另一种数据包过滤规则的处理装置的组成框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供一种数据包过滤规则的处理方法,所述方法应用于FrameWorks组件中,如图1所示,所述方法包括:
101、FrameWorks组件获取客户端发送的数据包过滤设置请求,所述数据包过滤设置请求中包含过滤目标及过滤类别。
本发明实施例所述的FrameWorks组件为终端中的组件,所述终端可以包含但不局限于以下内容例如:手机、平板电脑等等,需要说明的是,所述终端的系统可以包含但不局限于以下内容,例如:Linux内核的操作系统,或者,安卓Android操作系统;其中,所述Linux内核的操作系统可以包括乌班图Ubuntu、Android Operating Oystem(Android OS);本发明实施例对具体的终端系统不作限定。
本发明实质在于对创建防火墙在执行数据包过滤时依赖的数据包过滤规则,只有数据包过滤规则创建成功了,防火墙才能进行安全防护,即防火墙具有可配置功能。而在实际应用中,数据包过滤规则通常以列表形式存储,并且其集成于Linux内核中,本发明实施例中,通过FrameWorks组件完成数据包过滤规则的创建。
在执行生成数据包过滤规则时,首先,FrameWorks组件接收客户端发送的数据包过滤设置请求,其根据用户的实际需求进行设置,在客户端制定的数据包过滤设置请求中必须包含过滤目标及过滤类别,所述过滤目标可以包含但不局限于以下内容:目标互联网协议地址(Internet Protocol Address,IP)地址、目标IP范围、全称域名(FullyQualified Domain Name,FQDN)及目标统一资源定位符(Uniform Resource Locator,URL)等等,所述过滤类别是指将数据包直接过滤,以及直接放行两种类型。
在实际操作过程中,用户基于客户端直接输入过滤目标,即一个网址、或者一个IP地址、IP地址范围,确定上述内容是直接过滤和直接放行的类别,并触发客户端中的设置功能按键即可实现防火墙的配置。从用户层面讲,用户只需设置过滤目标与过滤类别,对用户来说其只需定制对数据包的过滤或者放行规则,而用户无需了解FrameWorks组件如何将客户端发送的数据包过滤设置请求应用到操作系统底层,也无需了解操作系统底层中IP信息包过滤系统IPtables设置规则,实现操作系统内核对用户的透明性。
102、FrameWorks组件根据所述过滤目标及过滤类别确定与所述过滤目标对应的网络协议类型,并将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中。
FrameWorks组件对接收到的数据包过滤设置请求进行解析,获取其包含的过滤目标及过滤类别。在实际应用中,过滤目标可以直接从数据包过滤请求中获得,过滤类别会通过预定标识进行确定,一般情况下,使用drop字段标识的过滤类别用于标识直接将数据包进行过滤;使用accept字段标识的过滤类别用于将标识直接将数据包进行放行。
本发明实施例中,通过对数据包过滤规则的设定,实现对特定网址、特定应用程序数据包的过滤,在具体实现过程中,对特定过滤目标执行的过滤表现在:设置防火墙的数据包过滤规则,确定出过滤目标对应的网络协议类型,所述网络协议类型包含但不局限于以下内容,例如:TCP类型、TCP范围类型、UDP类型、HTTP类型,具体有关过滤目标与网络协议类型对应关系会在后续实施例进行说明,本发明实施例对网络协议类型不作限定。
在确定出过滤目标对应的网络协议类型后,将过滤目标与网络协议类型的对应关系记录于预设规则表中,以便根据该预设规则表创建数据包过滤规则;本发明实施例中,在将过滤目标与网络协议类型记录于预设规则表之后,将该预设规则表存储于本地存储空间中,以便后续能够便捷快速地调用该预设规则表。
需要说明的是,预设规则表中记录的过滤目标与网络协议类型的对应关系是用户基于客户端发送的一些简易用户规则,如一个网址、或者一个IP地址、IP地址范围,在生成数据包过滤规则时生成的是一些防火墙底层过滤规则,用户在没有相关参数说明的情况下可能无法判别,但是,终端防火墙能够基于数据包过滤规则进行数据的安全维护。
103、FrameWorks组件基于预置模组,并根据所述预设规则表创建数据包过滤规则。
所述FrameWorks组件运行于终端的中间层,而防火墙对应的数据包过滤规则集成于终端的底层,即终端的操作系统内核中。因此,FrameWorks组件调用预置模组实现数据包过滤规则的创建,所述预置模组包括但不局限于IP信息包过滤系统IPtables。IPtables是与Linux内核集成的IP信息包过滤系统,其根据步骤102中预设规则表中记录的内容创建数据包过滤规则,该处创建的数据包过滤规则能够直接被终端底层进行识别、读取、使用。
本发明实施例提供的数据包过滤规则的处理方法,FrameWorks组件获取客户端发送的数据包过滤设置请求,该数据包过滤设置请求中包含过滤目标及过滤类别,根据过滤目标及过滤类别确定与过滤目标对应的网络协议类型,并将过滤目标及网络协议类型的对应关系记录于预设规则表中,基于预置模组,并根据预设规则表创建数据包过滤规则,与现有技术相比,本发明实施例通过FrameWorks组件实现对数据包过滤规则的创建,无需要求用户为系统管理员身份,或者,将操作系统进行root升级等操作,操作过程简单。
作为对上述实施例的细化,在步骤103执行基于预置模组,并根据所述预设规则表创建数据包过滤规则时,可以采用但不局限于以下方式实现,例如:FrameWorks组件向所述预置模组发送建立通信连接请求,具体实现过程中FrameWorks组件首先与native接口建立socket通信,所述socket通信为网络上的FrameWorks组件与native接口通过一个双向的通信连接实现数据的交换;基于该socket通信FrameWorks组件向native接口发送创建数据包过滤规则的请求,native接口接收到创建数据包过滤规则的请求后,调用IPtables,由IPtables读取FrameWorks组件本地存储的预设规则表,并根据该预设规则表创建数据包过滤规则。
待IPtables创建完成数据包过滤规则之后,基于socket通信向FrameWorks组件返回一个数据包过滤规则的状态码,该状态码用于反映预置模组创建数据包过滤规则的当前状态,即数据包过滤规则创建成功,还是数据包过滤规则创建失败;FrameWorks组件接收IPtables返回的创建所述数据包过滤规则的状态码,并将IPtables返回的状态码通过异步广播方式发送至所述客户端,以便客户端用户知晓防火墙在防护客户端数据安全时的防护内容。
由上述实施例可知,在设置防火墙的数据包过滤规则时,可设置两种类型的过滤方式,第一种是将数据包直接过滤,第二种是将数据包直接放行。顺应于数据包过滤的需求,本发明实施例中提供两种类型的预设规则表,对应于第一种类型的数据包过滤规则,可将其存储于预设黑名单规则表中,对应于第二种类型的数据包过滤规则,可将其存储于预设白名单规则表中。将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中时,首先,获取过滤目标对应的网络协议类型,所述网络协议类型包括:TCP类型、TCP范围类型、UDP类型、HTTP类型;根据所述过滤类别将所述过滤目标与网络协议类型的对应关系存储于预设黑名单规则表/预设白名单规则表中所述预设规则表包括预设黑名单规则表以及预设白名单规则表。
为了便于说明,以下将以示例的形式说明预设黑名单/白名单规则表中过滤目标与网络协议类型的对应关系。如表1所示,表1示出了本发明实施例提供的过滤目标与网络协议类型的映射关系说明,由表1可看出,过滤目标不同其对应的网络协议类型也不同。在具体实现过程中,预设黑名单规则表与预设白名单规则表中包含的过滤目标与网络协议类型的种类是相同的,不同的是,IPtables根据预设白名单规则表创建对应的数据包的屏蔽规则,IPtables根据预设黑名单规则表创建对应的是数据包的放行规则。
表1
Figure GDA0001250116290000091
需要说明的是,FrameWorks组件基于预置模组IPtables创建数据包过滤规则,创建的数据包过滤规则需要被底层的执行程序(防火墙)识别、执行,以下以示例的形式说明IPtables创建数据包过滤规则。示例性的,假设,客户端向FrameWorks组件的数据包过滤设置请求中所包含的过滤目标是一个IP地址:10.1.X.X,过滤类别为屏蔽该IP地址,FrameWorks组件首先根据过滤类别确定将该请求为屏蔽规则,根据IP地址可确定对应的网络协议类型为TCP网络协议类型,并将其记录于预设黑名单规则表中,以便IPtables读取该规则,生成底层能够识别的规则:iptables-p TCP-d 10.1.X.X-j DROP,其中,-p表示网络协议类型,-d表示过滤的IP地址,-DROP表示屏蔽规则。在IPtables生成数据包过滤规则后将其记录于预设黑名单规则中,如表2所示,表2示出了本发明实施例提供的一种预设黑名单规则表,需要说明的是,预设黑名单规则表中可记录多条过滤规则、多种网络协议类型,本发明实施例对上述参数不作限定,例如:可以使用p表示网络协议类型,也可以使用W表示网络协议类型等等,具体不作限定。
表2
Figure GDA0001250116290000092
Figure GDA0001250116290000101
在具体应用中,当防火墙基于上述预设黑名单规则表执行数据安全防护过程中,当接收到的数据包符合预设黑名单规则表中的任意一条规则时,均会将数据包进行过滤。在防火墙对客户端发送的数据包进行检测时,将数据包的各个网络数据,与预设黑名单规则表中的第一条记录开始匹配,若与预设黑名单规则表中的任一条记录匹配成功,则将客户端发送的数据包进行拦截。
以上以IPtables创建数据包过滤规则,该规则为预设黑名单规则表中一条规则,以下,将说明IPtables创建的数据包过滤规则为预设白名单规则。示例性的,假设,客户端向FrameWorks组件的数据包过滤设置请求中所包含的过滤目标是一个网址:X.X.X.com,过滤类别为放行目标网址,FrameWorks组件首先根据过滤类别确定将该请求为放行规则,根据网址可确定对应的网络协议类型为HTTP网络协议类型,并将其记录于预设白名单规则表中,以便IPtables读取该规则,生成底层能够识别的规则:iptables-p http-s X.X.X.com-j ACCEPT,其中,-p表示网络协议类型,-s表示过滤的网址,-ACCEPT表示放行规则。在IPtables生成数据包过滤规则后将其记录于预设白名单规则中,如表3所示,表3示出了本发明实施例提供的一种预设白名单规则表,需要说明的是,预设白名单规则表中可记录多条过滤规则、多种网络协议类型,本发明实施例对上述参数不作限定。
表3
Figure GDA0001250116290000102
在具体应用中,当防火墙基于上述预设白名单规则表执行数据安全防护过程中,当接收到的数据包符合预设白名单规则表中的任意一条规则时,均会将数据包进行放行。在防火墙对客户端发送的数据包进行检测时,将数据包的各个网络数据,与预设白名单规则表中的第一条记录开始匹配,若与预设白名单规则表中的任一条记录匹配成功,则将客户端发送的数据包进行放行。若与预设白名单规则表中的任意一条记录(除表3中的最后一条记录)均未匹配成功,则执行预设白名单规则表中的最后一条记录,将数据包进行过滤,即只有当数据包符合预设白名单规则表中的任一条规则时,才能将数据包放行,凡是不符合预设白名单过滤规则的数据包,全部过滤。
需要说明的是,在防火墙基于上述预设黑名单规则表及预设白名单规则表进行安全防护时,防火墙同时以两个规则表中的记录进行数据安全防护,若一条记录同时存在于预设黑名单规则表及预设白名单规则表中,则该条记录需要被同时检测两次,但是,预设黑名单规则表及预设白名单规则表两者之间存在优先级顺序,预设黑名单规则表的优先级高于预设白名单规则表,即若预设黑名单规则表及预设白名单规则表中存在相同的过滤规则,则直接将与该过滤规则对应的数据包进行过滤。
基于防火墙在对数据安全进行防护时,从第一条记录开始逐行遍历预设黑名单规则表及预设白名单规则表的策略,若待检测数据包对应的规则存在于预设黑名单规则表及预设白名单规则表的最后一行,则需要一次遍历预设黑名单规则表及预设白名单规则表的前面所有行,造成终端电量及流量的消耗。为解决费电费流量的问题,本发明实施例在生成预设黑名单规则表及预设白名单规则表之后,对规则进行优化,以达到省电省流量的目的,包括:FrameWorks组件设置网络协议类型的优先级;根据优先级对所述预设黑名单规则表/预设白名单规则表中过滤目标与网络协议类型的对应关系进行重新排序。本发明实施例中,包含四种类型的网络协议类型,分别为:TCP网络协议类型、TCP范围网络协议类型、UDP网络协议类型、HTTP网络协议类型,其中,UDP网络协议类型的优先级最高,TCP范围网络协议类型的优先级次之,TCP网络协议类型的优先级第三,HTTP网络协议类型的优先级最低,由于HTTP网络协议类型一般针对的是过滤目标为URL的协议类型,而URL中通常会包含协议头、网址参数信息等,在对HTTP网络协议类型的数据包进行过滤时,涉及string匹配,算法相较匹配TCP网络协议类型的数据包运算量更大,因此,HTTP网络协议类型的优先级最低。防火墙基于经过优化规则后的预设黑名单规则表/预设白名单规则表进行数据安全防护,可称为防火墙“省电模式”防护,达到既省电又省流量的目的。
防火墙运行于终端的中间层,而客户端运行于FrameWorks组件的前段,因此,在客户端与FrameWorks组件进行交互时,需要借助第三方软件开发工具包(SoftwareDevelopment Kit,SDK)提供的接口,实现双方数据的交互。在实际应用中,客户端向包过滤SDK发送数据包过滤设置请求,包过滤SDK将数据包过滤设置请求转发至FrameWorks组件,在包过滤SDK接收到客户端发送的数据包过滤设置请求之后,首先,验证客户端是否有FrameWorks组件的访问权限,若确定客户端有访问FrameWorks组件的权限,则继续对数据包过滤设置请求中过滤目标格式进行验证;若确定客户端没有访问FrameWorks组件的权限,则直接将数据包过滤设置请求进行过滤。在包过滤SDK中会存储有允许访问FrameWorks组件的列表,该列表中记录有客户端对应的设备标识,包过滤SDK通过客户端的设备标识对访问FrameWorks组件的权限进行鉴权。
在包过滤SDK验证客户端有FrameWorks组件的访问权限后,继续验证数据包过滤设置请求中过滤目标格式是否正确,例如,验证过滤目标的书写格式是否正确IP地址范围是否正确等等;当包过滤SDK验证数据包过滤设置请求中过滤目标格式合法后,将客户端发送的数据包过滤设置请求转发至FrameWorks组件,以便FrameWorks组件在获取数据包过滤设置请求后,创建对应的数据包过滤规则,实现对终端网络数据的安全防护。
进一步的,作为对上述图1所示方法的实现,本发明另一实施例还提供了一种数据包过滤规则的处理装置。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。
本发明实施例提供一种数据包过滤规则的处理装置,如图2所示,所述装置包括:
获取单元21,用于获取客户端发送的数据包过滤设置请求,所述数据包过滤设置请求中包含过滤目标及过滤类别;
确定单元22,用于根据所述获取单元21获取的所述过滤目标及过滤类别确定与所述过滤目标对应的网络协议类型;
记录单元23,用于将所述确定单元22确定的所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中;
创建单元24,用于基于预置模组,并根据所述记录单元23记录的所述预设规则表创建数据包过滤规则。
进一步的,如图3所示,所述创建单元24包括:
第一发送模块241,用于向所述预置模组发送建立通信连接请求;
第二发送模块242,用于在所述第一发送模块241向所述预置模组发送建立通信连接请求之后,向所述预置模组发送创建数据包过滤规则的请求,以便所述预置模组根据所述预设规则表创建所述数据包过滤规则;
接收模块243,用于接收所述预置模组返回的创建所述数据包过滤规则的状态码,所述状态码用于反映所述预置模组创建数据包过滤规则的当前状态。
进一步的,如图3所示,所述记录单元23包括:
获取模块231,用于获取所述过滤目标对应的网络协议类型;其中,所述网络协议类型包括:TCP类型、TCP范围类型、UDP类型、HTTP类型;
存储模块232,用于根据所述过滤类别将所述过滤目标与网络协议类型的对应关系存储于预设黑名单规则表/预设白名单规则表中;所述预设规则表包括预设黑名单规则表以及预设白名单规则表。
进一步的,如图3所示,所述装置还包括:
设置单元25,在所述记录单元23将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中之后,设置网络协议类型的优先级;
排序单元26,用于根据所述设置单元25设置的优先级对所述预设黑名单规则表/预设白名单规则表中过滤目标与网络协议类型的对应关系进行重新排序。
进一步的,如图3所示,所述装置还包括:
发送单元27,用于在所述创建单元24基于预置模组,并根据所述预设规则表创建数据包过滤规则之后,将所述预置模组返回的状态码通过异步广播方式发送至所述客户端。
进一步的,如图3所示,所述装置还包括:
验证单元28,用于在所述获取单元21获取客户端发送的数据包过滤设置请求之前,基于软件开发工具包SDK验证客户端访问权限的合法性,以及验证数据包过滤设置请求中过滤目标格式的合法性;
所述获取单21元,还用于当所述验证单元28验证所述客户端访问权限及数据包过滤设置请求中过滤目标格式均合法时,获取所述客户端发送的数据包过滤设置请求。
进一步的,所述预置模组为IP信息包过滤系统IPtables。
本发明实施例提供的数据包过滤规则的处理装置,FrameWorks组件获取客户端发送的数据包过滤设置请求,该数据包过滤设置请求中包含过滤目标及过滤类别,根据过滤目标及过滤类别确定与过滤目标对应的网络协议类型,并将过滤目标及网络协议类型的对应关系记录于预设规则表中,基于预置模组,并根据预设规则表创建数据包过滤规则,与现有技术相比,本发明实施例通过FrameWorks组件实现对数据包过滤规则的创建,无需要求用户为系统管理员身份,或者,将操作系统进行root升级等操作,操作过程简单。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的数据包过滤规则的处理方法及装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (12)

1.一种数据包过滤规则的处理方法,其特征在于,包括:
获取客户端发送的数据包过滤设置请求,所述数据包过滤设置请求中包含过滤目标及过滤类别;
根据所述过滤目标及过滤类别确定与所述过滤目标对应的网络协议类型,并将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中,所述预设规则表包括预设黑名单规则表以及预设白名单规则表;
其中,所述将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中,进一步包括:根据所述过滤类别将所述过滤目标与网络协议类型的对应关系存储于预设黑名单规则表/预设白名单规则表中;
设置网络协议类型的优先级;
根据优先级对所述预设黑名单规则表/预设白名单规则表中过滤目标与网络协议类型的对应关系进行重新排序;
基于预置模组,并根据所述预设规则表创建数据包过滤规则。
2.根据权利要求1所述的方法,其特征在于,基于预置模组,并根据所述预设规则表创建数据包过滤规则包括:
向所述预置模组发送建立通信连接请求,并向所述预置模组发送创建数据包过滤规则的请求,以便所述预置模组根据所述预设规则表创建所述数据包过滤规则;
接收所述预置模组返回的创建所述数据包过滤规则的状态码,所述状态码用于反映所述预置模组创建数据包过滤规则的当前状态。
3.根据权利要求2所述的方法,其特征在于,所述网络协议类型包括:TCP类型、TCP范围类型、UDP类型、HTTP类型。
4.根据权利要求2所述的方法,其特征在于,在基于预置模组,并根据所述预设规则表创建数据包过滤规则之后,所述方法还包括:
将所述预置模组返回的状态码通过异步广播方式发送至所述客户端。
5.根据权利要求1-4中任一项所述的方法,其特征在于,在获取客户端发送的数据包过滤设置请求之前,所述方法还包括:
基于软件开发工具包SDK验证客户端访问权限的合法性,以及验证数据包过滤设置请求中过滤目标格式的合法性;
所述获取客户端发送的数据包过滤设置请求包括:
若所述客户端访问权限及数据包过滤设置请求中过滤目标格式均合法,则获取所述客户端发送的数据包过滤设置请求。
6.根据权利要求5所述的方法,其特征在于,所述预置模组为IP信息包过滤系统IPtables。
7.一种数据包过滤规则的处理装置,其特征在于,包括:
获取单元,用于获取客户端发送的数据包过滤设置请求,所述数据包过滤设置请求中包含过滤目标及过滤类别;
确定单元,用于根据所述获取单元获取的所述过滤目标及过滤类别确定与所述过滤目标对应的网络协议类型;
记录单元,用于将所述确定单元确定的所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中,所述预设规则表包括预设黑名单规则表以及预设白名单规则表;
所述记录单元包括:存储模块,所述存储模块用于根据所述过滤类别将所述过滤目标与网络协议类型的对应关系存储于预设黑名单规则表/预设白名单规则表中;
设置单元,在所述记录单元将所述过滤目标与所述网络协议类型的对应关系记录于预设规则表中之后,设置网络协议类型的优先级;
排序单元,用于根据所述设置单元设置的优先级对所述预设黑名单规则表/预设白名单规则表中过滤目标与网络协议类型的对应关系进行重新排序;
创建单元,用于基于预置模组,并根据所述记录单元记录的所述预设规则表创建数据包过滤规则。
8.根据权利要求7所述的装置,其特征在于,所述创建单元包括:
第一发送模块,用于向所述预置模组发送建立通信连接请求;
第二发送模块,用于在所述第一发送模块向所述预置模组发送建立通信连接请求之后,向所述预置模组发送创建数据包过滤规则的请求,以便所述预置模组根据所述预设规则表创建所述数据包过滤规则;
接收模块,用于接收所述预置模组返回的创建所述数据包过滤规则的状态码,所述状态码用于反映所述预置模组创建数据包过滤规则的当前状态。
9.根据权利要求8所述的装置,其特征在于,所述网络协议类型包括:TCP类型、TCP范围类型、UDP类型、HTTP类型。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
发送单元,用于在所述创建单元基于预置模组,并根据所述预设规则表创建数据包过滤规则之后,将所述预置模组返回的状态码通过异步广播方式发送至所述客户端。
11.根据权利要求7-10中任一项所述的装置,其特征在于,所述装置还包括:
验证单元,用于在所述获取单元获取客户端发送的数据包过滤设置请求之前,基于软件开发工具包SDK验证客户端访问权限的合法性,以及验证数据包过滤设置请求中过滤目标格式的合法性;
所述获取单元,还用于当所述验证单元验证所述客户端访问权限及数据包过滤设置请求中过滤目标格式均合法时,获取所述客户端发送的数据包过滤设置请求。
12.根据权利要求11所述的装置,其特征在于,所述预置模组为IP信息包过滤系统IPtables。
CN201710151149.3A 2017-03-14 2017-03-14 数据包过滤规则的处理方法及装置 Active CN106899604B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710151149.3A CN106899604B (zh) 2017-03-14 2017-03-14 数据包过滤规则的处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710151149.3A CN106899604B (zh) 2017-03-14 2017-03-14 数据包过滤规则的处理方法及装置

Publications (2)

Publication Number Publication Date
CN106899604A CN106899604A (zh) 2017-06-27
CN106899604B true CN106899604B (zh) 2020-06-05

Family

ID=59192293

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710151149.3A Active CN106899604B (zh) 2017-03-14 2017-03-14 数据包过滤规则的处理方法及装置

Country Status (1)

Country Link
CN (1) CN106899604B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109274511A (zh) * 2017-07-17 2019-01-25 南京烽火软件科技有限公司 一种基于信息同步的新型信息发布系统及其发布方法
CN107483593B (zh) * 2017-08-22 2019-12-31 网宿科技股份有限公司 双向透明代理方法及系统
CN108171887B (zh) * 2017-12-20 2020-10-20 新华三技术有限公司 一种电量计费的方法及装置
CN108495087B (zh) * 2018-03-29 2020-12-22 北京安为科技有限公司 视频监控系统前端的安全智能处理装置
CN108632280A (zh) * 2018-05-08 2018-10-09 国家计算机网络与信息安全管理中心 流量处理方法、装置及系统、防火墙和服务器
CN109743326B (zh) * 2019-01-10 2021-09-07 新华三云计算技术有限公司 流量传输方法及装置
CN111818099B (zh) * 2020-09-02 2020-12-04 南京云信达科技有限公司 一种tcp协议报文过滤方法及装置
CN112784230B (zh) * 2021-01-21 2024-02-09 北京启明星辰信息安全技术有限公司 网络安全数据共享与管控方法及系统
CN113114709B (zh) * 2021-06-16 2021-09-17 紫光恒越技术有限公司 自定义url过滤分类的应用方法、装置、服务器及存储设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102355667A (zh) * 2011-06-30 2012-02-15 北京邮电大学 移动智能终端系统中应用程序网络连接控制方法和系统
CN103560995A (zh) * 2013-09-25 2014-02-05 深圳市共进电子股份有限公司 一种同时实现ipv4和ipv6的URL过滤方法
CN103595547A (zh) * 2013-11-15 2014-02-19 北京奇虎科技有限公司 智能设备的广播拦截方法和装置
CN106549944A (zh) * 2016-10-17 2017-03-29 上海斐讯数据通信技术有限公司 一种基于Linux内核哈希表的域名过滤方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138416A1 (en) * 2003-12-19 2005-06-23 Microsoft Corporation Object model for managing firewall services

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102355667A (zh) * 2011-06-30 2012-02-15 北京邮电大学 移动智能终端系统中应用程序网络连接控制方法和系统
CN103560995A (zh) * 2013-09-25 2014-02-05 深圳市共进电子股份有限公司 一种同时实现ipv4和ipv6的URL过滤方法
CN103595547A (zh) * 2013-11-15 2014-02-19 北京奇虎科技有限公司 智能设备的广播拦截方法和装置
CN106549944A (zh) * 2016-10-17 2017-03-29 上海斐讯数据通信技术有限公司 一种基于Linux内核哈希表的域名过滤方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《基于Netfilter/Iptables的网络流量监控系统的设计与实现》;吴小倩;《CNKI优秀硕士学位论文全文库》;20131231;第5-12页的第2.1节 *

Also Published As

Publication number Publication date
CN106899604A (zh) 2017-06-27

Similar Documents

Publication Publication Date Title
CN106899604B (zh) 数据包过滤规则的处理方法及装置
JP6559694B2 (ja) 自動sdk受容
CN101888329B (zh) 地址解析协议报文的处理方法、装置及接入设备
US8255985B2 (en) Methods, network services, and computer program products for recommending security policies to firewalls
CN110971569A (zh) 网络访问权限管理方法、装置及计算设备
CN106657014B (zh) 访问数据的方法、装置及系统
KR102299865B1 (ko) 데이터 네트워크에 접근하기 위한 사용자의 인증에 관한 방법 및 시스템
CN110968848B (zh) 基于用户的权限管理方法、装置及计算设备
CN105871908B (zh) 企业网络边界设备访问控制策略的管控方法及装置
CN104580553B (zh) 网络地址转换设备的识别方法和装置
CN112995163B (zh) 资源访问的鉴权方法及装置、存储介质、电子设备
CN111131310A (zh) 访问控制方法、装置、系统、计算机设备和存储介质
CN111182537A (zh) 移动应用的网络接入方法、装置及系统
CN109302397B (zh) 一种网络安全管理方法、平台和计算机可读存储介质
CN108134796A (zh) 安全通信方法、装置及边界网关
CN108009439B (zh) 资源请求的方法、装置及系统
CN103607374A (zh) 基于身份认证和数据包过滤技术的网络资源访问控制方法
CN112995164B (zh) 资源访问的鉴权方法及装置、存储介质、电子设备
CN107623696B (zh) 一种基于用户行为特征的用户身份验证方法及装置
CN111147625B (zh) 获取本机外网ip地址的方法、装置及存储介质
CN109040034B (zh) 基于虚拟信息的用户身份信息处理方法及装置
JP5715030B2 (ja) アクセス回線特定・認証システム
CN112688899A (zh) 云内安全威胁检测方法、装置、计算设备及存储介质
CN116633638A (zh) 一种增强型身份认证、资源访问控制系统
CN110971570A (zh) 网络访问权限控制方法、装置及计算设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant