一种设置防火墙策略的方法和装置的制作方法

文档序号:6471933阅读:129来源:国知局
专利名称:一种设置防火墙策略的方法和装置的制作方法
技术领域
本发明涉及计算机安全领域,特别是关于一种设置防火墙策略的方法和装置。
背景技术
防火墙是用来保护网络中计算机安全的重要设备,通过监测、限制、更改跨越防火墙 的数据流,能够对外部屏蔽被保护的内部网络的信息、结构和运行状况。现在市面上有很多种 防火墙设备,不同厂商生产的防火墙设备的配置命令均不相同,甚至同一厂商的不同型号的防 火墙设备的配置命令也不相同。然而在实际中不同的防火墙设备使用同一防火墙策略的情况 十分常见,此种情况下,网络管理员在设置防火墙策略的时候,就不得不熟悉各类不同的防火 墙设备的配置界面和命令,并对防火墙设备的防火墙规则逐条配置。这大大增加了网络管理员 的工作量,而且由于是人工对防火墙设备的防火墙规则进行设置,所以很容易出错,导致设置 使用同一防火墙策略的防火墙设备的防火墙策略的不一致,给网络管理带来了很大的困难。

发明内容
本发明提供一种设置防火墙策略的方法和装置,用以解决现有技术中由于人工对
不同的防火墙设备进行设置,容易导致防火墙设备的防火墙策略不一致的问题。 为实现上述目的,本发明采取以下技术方案 —种设置防火墙策略的方法,其特征在于包括如下步骤 A、确定防火墙策略; B、采用可扩展标记语言对所述防火墙策略进行描述; C、对由可扩展标记语言描述的所述防火墙策略进行翻译,得到防火墙设备能够识 别的命令; D、所述防火墙设备按照翻译后得到的命令执行所述防火墙策略。 进一步,采用可扩展标记语言对所述防火墙策略进行描述时,分别对防火墙对象
和防火墙规则进行定义。 更进一步,在对所述防火墙对象和所述防火墙规则进行定义时,均包括"识别标 志"、"名称"和"备注"三个属性。 再进一步,所述"识别标志"和所述"名称"在所述防火墙策略中具有全局唯一性。
进一步,对由可扩展标记语言描述的所述防火墙策略进行翻译的具体步骤包括
Cl、从由可扩展标记语言描述的所述防火墙策略中获取需要下发给所述防火墙设 备的防火墙规则; C2、根据获取到的防火墙规则从由可扩展标记语言描述的所述防火墙策略中获取 防火墙规则所控制的防火墙对象; C3、将获取到的防火墙规则及防火墙对象翻译为所述防火墙设备能够识别的命 令; C4、与所述防火墙设备建立连接,并将翻译后得到的命令下发给所述防火墙设
4备; C5、待所述防火墙设备按照翻译后得到的命令执行完所述防火墙策略后,断开与 所述防火墙设备的连接。 更进一步,与所述防火墙设备建立连接采用远程访问工具或安全外壳协议的方式 进行。
—种设置防火墙策略的装置,其特征在于包括
防火墙策略确定模块,用于确定所述防火墙策略; 防火墙策略描述模块,用于采用可扩展标记语言对所述防火墙策略进行描述;
防火墙策略翻译模块,用于对由可扩展标记语言描述的所述防火墙策略进行翻 译,得到防火墙设备能够识别的命令; 防火墙策略执行模块,所述防火墙设备根据翻译后得到的命令执行所述防火墙策 略。 进一步,所述防火墙策略翻译模块具体包括 获取防火墙规则子模块,用于从由可扩展标记语言描述的所述防火墙策略中获取 需要下发给所述防火墙设备的防火墙规则; 获取防火墙对象子模块,用于根据获取到的防火墙规则从由可扩展标记语言描述 的所述防火墙策略中获取防火墙规则所控制的防火墙对象; 翻译子模块,用于将获取到的防火墙规则及防火墙对象翻译为所述防火墙设备能 够识别的命令; 连接子模块,用于与所述防火墙设备建立连接,并将翻译后得到的命令下发给所 述防火墙设备;待所述防火墙设备按照翻译后得到的命令执行完所述防火墙策略后,断开 与所述防火墙设备的连接。 本发明由于采取以上技术方案,其具有以下优点本发明由于采用 XML (extensible Markup Language,可扩展标记语言)描述防火墙策略,因此防火墙策略具 有很好的扩展性;本发明由于将由XML描述的防火墙策略直接翻译为防火墙设备能够识别 的命令,因此无需人工对防火墙设备进行设置,大大减轻了网络管理员的工作量;本发明由 于将由XML描述的防火墙策略直接翻译为防火墙设备能够识别的命令,避免了人工操作可 能产生的错误,保证了防火墙设备的防火墙策略的一致性。


图1为本发明所述设置防火墙策略的方法的流程图; 图2为本发明所述方法中对由XML描述的防火墙策略进行翻译的流程图; 图3为本发明所述方法的一个较佳实施例中的防火墙策略的XML文档结构示意
图; 图4为本发明所述设置防火墙策略的装置的结构示意图; 图5为本发明所述装置中的防火墙策略翻译模块结构示意图。
具体实施例方式
为了能够在减少网络管理员工作量的同时,保证设置使用同一防火墙策略的防火
5墙设备的防火墙策略的一致性,在对某一内部网络设置防火墙策略时,本发明采用了一种 通用语言对该防火墙策略进行描述,然后再将该防火墙策略翻译为防火墙设备能够识别的 命令。 下面结合附图和实施例对本发明进行详细的描述。
图1为本发明所述设置防火墙策略的方法的流程图,由图可知,本发明所述设置 防火墙策略的方法具体包括以下步骤
步骤101 :确定防火墙策略。
步骤102 :采用XML对该防火墙策略进行描述。 步骤103 :对由XML描述的防火墙策略进行翻译,得到防火墙设备能够识别的命 令。
步骤104 :防火墙设备按照翻译得到的命令执行防火墙策略。 在步骤102中采用XML对防火墙策略进行描述时,需要对防火墙策略包括的防火 墙对象和防火墙规则两部分要素分别使用XML的文档元素表示。防火墙对象是指防火墙规 则中使用的主机、地址、服务、端口等要素,防火墙规则是指对防火墙对象进行控制的规则。 在本发明中将使用XML分别对防火墙对象和防火墙规则进行定义,且定义时均包括"识别 标志"、"名称"、"备注"三个属性。其中,"识别标志"可以方便地实现对各对象的引用,"名 称"为一个易于被人理解和记忆的名字,"备注"用来记录任何与此元素相关的信息。而且 "识别标志"和"名称"在该防火墙策略中具有全局唯一性。 根据XML的上述定义,采用XML对防火墙策略进行描述,可以便于防火墙策略的存
储和解析,而且使防火墙策略具有了很强的灵活性和扩展性。例如当增加防火墙对象或防
火墙规则时,则只需要采用XML对其进行定义,然后将其加入到防火墙策略中即可,相应的
若删除防火墙对象或防火墙规则,则可直接将其从防火墙策略中删除。 图3所示为上述步骤103中对由XML描述的防火墙策略进行翻译的流程图,由图
可知,对由XML描述的防火墙策略进行翻译的具体步骤如下 步骤131 :从由XML描述的防火墙策略中获取下发给防火墙设备的防火墙规则。
步骤132 :根据获取的防火墙规则从由XML描述的防火墙策略中获取防火墙规则 控制的防火墙对象。 步骤133 :对获取的防火墙规则及防火墙对象进行翻译,得到防火墙设备能够识 别的命令。 步骤134 :与防火墙设备建立连接,并将翻译后得到的命令下发给防火墙设备;连 接时可以使用远程访问工具Telnet、 SSH(Secure Shell,安全外壳协议)等方式与防火墙 设备进行连接。 步骤135 :待防火墙设备按照翻译后的命令执行完防火墙策略后,断开与防火墙 设备的连接。 通过采用上述方法对防火墙进行设置,不再需要网络管理员熟悉防火墙设备的配 置界面和命令,人工的对上述防火墙设备进行设置,大大减少网络管理员的工作量,而且由 于是将防火墙策略直接翻译为防火墙设备能够识别的命令,避免了由于人工对防火墙设备 进行设置可能产生的错误,保证了防火墙设备的防火墙策略的一致性。 下面结合本发明所述方法的一个较佳实施例对本发明所述方法的具体实现过程予以进一步详细的阐述。
步骤201 :确定本实施例的防火墙策略。
步骤202 :采用XML对本实施例的防火墙策略进行描述; 本实施例是按照图3所示的XML文档对防火墙策略进行描述的,由图可知,本实施 例中的XML文档的根节点为全局数据库。此根节点内包含一个用户数据库子节点,该用户 数据库子节点又包括防火墙对象集合和防火墙规则集合两个子节点;其中防火墙对象集合 子节点用于存储防火墙规则引用的防火墙对象的数据,防火墙规则集合子节点用于存储不 同防火墙设备的防火墙规则的数据;上述防火墙对象集合子节点下面又包括若干个防火墙 对象组子节点,上述每一个防火墙对象组子节点中存储同一类别的防火墙对象的数据。上 述防火墙规则集合子节点下面又包括若干个防火墙规则组子节点,上述每个防火墙规则组 子节点中存储同一类别的防火墙规则的数据。 本实施例在采用XML对防火墙策略进行描述的时候,分别对各防火墙对象组、各 具体的防火墙对象、各防火墙规则组、各具体的防火墙规则进行了定义,且在对上述的防 火墙对象组、防火墙对象、防火墙规则组及防火墙规则进行定义时均包括"识别标志"、"名 称"、"注释"等内容,其中的"识别标志"与"名称"在上述本实施例的防火墙策略中具有全 局唯一性。 其中本实施例中的一个防火墙对象为IP(Internet Protocol,互联网络通讯协 议)地址为192. 168. 1. l和192. 168. 2. 1的主机,且控制此防火墙对象的防火墙规则为1) 允许此防火墙对象访问IP地址范围为192. 168. 3. 0 192. 168. 3. 255的子网,当且仅当在 防火墙对象与上述子网之间用于传递信息的数据包同时满足二层协议号为0800、三层协 议号为6、源端口为21或22、目的端口为所有、源和目的MAC地址均为所有上述5个条件时。 2)对满足上述条件的数据包不记录日志。采用XML对上述防火墙对象和防火墙规则描述的 具体文本如下所示 〈FW0b jectDatabase xmlns = 〃 http://company" version = 〃 x. x〃 ...> 〈Library id = 〃 sysid00 1〃 name = 〃用户数据库〃> 〈0bjectGroup id = 〃 sysid002〃 name二〃对象集合〃 ro = 〃 True" > 〈0bjectG丽p id = 〃 sysid003〃謹e二〃地址〃 ro = 〃 True" > 〈0bjectG丽p id = 〃 sysid004"謹e = 〃 IP对象〃 ro = 〃 True" > 〈IPv4 id =〃 id500001〃 name = 〃 ipl〃 address = 〃 192. 168. 1. 1 192. 168. 2. 1" netmask = 〃 /> 〈/ObjectGroup〉 〈0bjectGroup id = 〃 sysid005〃 name = 〃子网X寸象〃 ro = 〃 True" > 〈Network id = 〃 id500002〃 謹e = 〃 subnetl〃 comment
—〃 〃 address = 〃 192. 168. 3. 0〃 netmask = 〃 255. 255. 255. 0〃 . /> 〈/ObjectGroup〉 〈/ObjectGroup〉 〈/ObjectGroup〉
〈FWRule id=〃 sysid006" name二"规则集合"comment = 〃 〃 ...〉 〈PFPolicy id =〃 id500006〃 name ="规贝U组A"〉 〈PFPolicyRule id = 〃 id500011 " name =" pfrulel" disabled
="False" position =〃 0" action = 〃 accept 〃 comment = 〃 comment 〃 12protoco1 =〃 0800" 13protocol=〃 6" sport = 〃 21" sport—end = 〃 22 〃 dport = 〃 0 〃 dport一end = 〃 0 〃 smac =""
dmac = " "log = 〃 no"CreateName = 〃 〃 CreateTime = 〃 1224554757" ModifyName = 〃 〃 ModifyTime = " 1224554757" > 〈Src neg = " False" > 〈0bjectRefref =〃 id500001" /> 〈/Src> 〈Dst neg =〃 False" > 〈0bjectRef ref =〃 id500002" /〉 〈/Dst〉 〈Whenneg=〃 False" /〉 〈/PFPolicyRule〉 〈/PFPolicy〉 〈/FWRule〉 〈/library> 〈/FW0bjectDatabase〉 其中,该文本的各个属性字段的意义如下所示
Id :表示所述对象的识别标志,唯一表示一个对象; [OO93]name :表示所述对象的名称;
comment :表示注释; disabled :用于表示这个防火墙规则是否起作用,用这个可以临时地禁止一条规 则,而不用删除它,其中True表示禁止,False表示没有禁止; position :表示防火墙规则的位置,包过滤规则在防火墙中有前后顺序之分,排在 靠前位置的规则会先匹配。数值越小表示越靠前,最小值为0 ; action :定义符合条件的数据包将被如何处理,它包含三个内容,其中"acc印t表 示允许通过"、"deny表示拒绝"和"drop表示丢弃";
12protoco1 :表示二层协议号;
13protoco1 :表示三层协议号; sport :表示源端口号,0表示所有端口 ;当其与sport—end—起定义一个源端口范 围时,则表示起始源端口号。 sport—end:表示结束源端口号,需与sport—起定义表示一个源端口的范围。
dport :表示目的端口号,0表示所有端口 ;当其与dport—end—起定义一个目的端 口范围时,表示起始目的端口号。
dport—end:表示结束目的端口号。需与dport—起定义表示一个目的端口范围;
smac :表示源MAC (Media Access Control,介质访问控制子层协议)地址;
dmac :表示目的MAC地址; log :判断是否记录日志,其中用yes表示记录日志,用no表示不记录日志; CreateName :表示创建该防火墙规则的管理员名称; CreateTime :表示创建该防火墙规则的时间; ModifyName :表示最后一次修改该防火墙规则的管理员名称; ModifyTime :表示最后一次修改该防火墙规则的时间; Neg:表示相反; 语句〈IPv4id二〃 id500001〃 .../〉定义了本实施例中的一个防火墙对象;
语句〈Network id = 〃 id500002〃 . . . />定义本实施例的上述防火墙对象能够访 问的IP地址范围;语句〈PFPolicyRule id = 〃 id500011〃 . >〈/PFPolicyRule〉定义了本实施
例中控制上述防火墙对象的防火墙规则,其中, 该防火墙规则中采用如下的语句 〈Src neg = 〃 False" > 〈0bjectRef ref =〃 id500001〃 /> 〈/Src> 通过识别标志引用本实施例中的防火墙规则所控制的防火墙对象; 该防火墙规则中采用如下的语句 〈Dst neg =〃 False" >〈ObjectRef ref =〃 id500002〃 /> 〈/Dst> 通过识别标志弓I用本实施例中的允许上述防火墙对象访问的子网。 按照上述描写一个防火墙对象及对其控制的防火墙规则的方法,即可以完整的描
述出本实施例的防火墙策略。 步骤203 :对由XML描述本发明实施例的防火墙策略进行翻译,得到本发明实施例 的防火墙设备能够识别的命令。 对本实施例的防火墙策略进行翻译时的具体步骤为 步骤231 :从由XML描述的防火墙策略中获取下发到本实施例的防火墙设备的防 火墙规则。 步骤232 :根据获取的防火墙规则从上述由XML防火墙策略中获取防火墙规则控 制的防火墙对象。 步骤233 :对获取的防火墙规则和防火墙对象进行翻译,得到本实施例的防火墙
设备能够识别的命令。其中在对步骤202中采用XML描述防火墙对象及对其控制的防火墙
规则的XML文本针对某一公司生产的防火墙设备翻译生成的命令列表如下所示 define host add name ipl ipaddr' 192. 168. 1. 1 192. 168. 2. 1' define subnet add謹e subnetl ipaddr 192.168.3.0 mask 255.255.255.0 pf rule add 12protoco1 0800 13protoco1 TCP sip ipl dip subnetl sport21sport_end 22 action accept log no enable yes 步骤234 :与本实施例的防火墙设备建立连接,并将翻译后的命令下发给防火墙 设备。 步骤235 :待防火墙设备按照翻译后的命令执行完防火墙策略后,断开与本发明 实施例的防火墙设备的连接。 步骤204 :本实施例的防火墙设备按照翻译后得到的命令集合,执行防火墙策略。 相应于本发明上述方法,本发明进而提供了一种设置防火墙策略的装置,如图4
所示,本发明所述设置防火墙策略的装置包括防火墙策略确定模块l,防火墙策略描述模
块2,防火墙策略翻译模块3及防火墙策略执行模块4。其中, 防火墙策略确定模块l,用于确定防火墙策略。 防火墙策略描述模块2,用于采用XML对防火墙策略进行描述。 防火墙策略翻译模块3,用于对由XML描述的该防火墙策略进行翻译,得到被防火
墙设备能够识别的命令。 防火墙策略执行模块4,防火墙设备按照翻译得到的命令执行该防火墙策略。
其中,如图5所示,防火墙策略翻译模块3具体包括 获取防火墙规则子模块31,用于从由XML描述的防火墙策略中获取需要下发给防 火墙设备的防火墙规则; 获取防火墙对象子模块32,用于根据获取到的防火墙规则从由XML描述的防火墙 策略中获取防火墙规则所控制的防火墙对象; 翻译子模块33,用于将获取到的防火墙规则及防火墙对象翻译为防火墙设备能够 识别的命令; 连接子模块34,用于与防火墙设备建立连接,并将翻译后得到的命令下发给防火 墙设备;待防火墙设备按照翻译后得到的命令执行完该防火墙策略后,断开与防火墙设备 的连接。 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精 神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围 之内,则本发明也意图包含这些改动和变型在内。
权利要求
一种设置防火墙策略的方法,其特征在于包括如下步骤A、确定防火墙策略;B、采用可扩展标记语言对所述防火墙策略进行描述;C、对由可扩展标记语言描述的所述防火墙策略进行翻译,得到防火墙设备能够识别的命令;D、所述防火墙设备按照翻译后得到的命令执行所述防火墙策略。
2. 如权利要求1所述的方法,其特征在于采用可扩展标记语言对所述防火墙策略进 行描述时,分别对防火墙对象和防火墙规则进行定义。
3. 如权利要求2所述的方法,其特征在于在对所述防火墙对象和所述防火墙规则进 行定义时,均包括"识别标志"、"名称"和"备注"三个属性。
4. 如权利要求3所述的方法,其特征在于所述"识别标志"和所述"名称"在所述防火 墙策略中具有全局唯一性。
5. 如权利要求1所述的方法,其特征在于对由可扩展标记语言描述的所述防火墙策 略进行翻译的具体步骤包括Cl、从由可扩展标记语言描述的所述防火墙策略中获取需要下发给所述防火墙设备的 防火墙规则;C2、根据获取到的防火墙规则从由可扩展标记语言描述的所述防火墙策略中获取防火墙规则所控制的防火墙对象;C3、将获取到的防火墙规则及防火墙对象翻译为所述防火墙设备能够识别的命令; C4、与所述防火墙设备建立连接,并将翻译后得到的命令下发给所述防火墙设备; C5、待所述防火墙设备按照翻译后得到的命令执行完所述防火墙策略后,断开与所述防火墙设备的连接。
6. 如权利要求5所述的方法,其特征在于与所述防火墙设备建立连接采用远程访问工具或安全外壳协议的方式进行。
7. —种设置防火墙策略的装置,其特征在于包括 防火墙策略确定模块,用于确定所述防火墙策略;防火墙策略描述模块,用于采用可扩展标记语言对所述防火墙策略进行描述; 防火墙策略翻译模块,用于对由可扩展标记语言描述的所述防火墙策略进行翻译,得 到能够被所述防火墙设备识别的命令;防火墙策略执行模块,所述防火墙设备根据翻译后得到的命令执行所述防火墙策略。
8. 如权利要求7所述的装置,其特征在于所述防火墙策略翻译模块具体包括 获取防火墙规则子模块,用于从由可扩展标记语言描述的所述防火墙策略中获取需要下发给所述防火墙设备的防火墙规则;获取防火墙对象子模块,用于根据获取到的防火墙规则从由可扩展标记语言描述的所 述防火墙策略中获取防火墙规则所控制的防火墙对象;翻译子模块,用于将获取到的防火墙规则及防火墙对象翻译为所述防火墙设备能够识 别的命令;连接子模块,用于与所述防火墙设备建立连接,并将翻译后得到的命令下发给所述防 火墙设备;待所述防火墙设备按照翻译后得到的命令执行完所述防火墙策略后,断开与所述防火墙设备的连接c
全文摘要
本发明公开了一种设置防火墙策略的方法和装置,所述设置防火墙策略的方法具体包括步骤确定防火墙策略;采用可扩展标记语言对该防火墙策略进行描述;对由可扩展标记语言描述的防火墙策略进行翻译,得到防火墙设备能够识别的命令;防火墙设备根据翻译得到的命令执行防火墙策略。所述设置防火墙策略的装置包括防火墙策略确定模块,防火墙策略描述模块,防火墙策略翻译模块及防火墙策略执行模块。采用本发明能够大大减少网络管理员的工作量,而且保证了防火墙设备的防火墙策略的一致性。
文档编号G06F17/28GK101771669SQ200810241120
公开日2010年7月7日 申请日期2008年12月30日 优先权日2008年12月30日
发明者朱启坤 申请人:北京天融信网络安全技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1