一种防火墙配置方法及装置与流程

文档序号:18072678发布日期:2019-07-03 03:58阅读:141来源:国知局
一种防火墙配置方法及装置与流程

本说明书实施例涉及网络通信技术领域,尤其涉及一种防火墙配置方法及装置。



背景技术:

openstack是当前主流的开源云计算管理平台项目,通过所包含的多个组件,提供计算、网络、存储等核心服务,及fwaas(firewallasaservice,防火墙即服务)等扩展服务。

openstack服务端与防火墙硬件设备对接时,可以实现fwaas对防火墙设备的配置。现有技术中,fwaas只能够针对一台防火墙设备进行资源下发等配置,而无法同时配置多台防火墙设备。因此不能够满足大规模组网云环境下部署多台防火墙设备的需求。



技术实现要素:

有鉴于此,本说明书实施例提供一种防火墙配置方法及装置,应用于openstack服务端,技术方案如下:

一种防火墙配置方法,其特征在于,所述方法应用于openstack服务端,包括:

接收数据下发请求;

确定所述数据下发请求中是否指定目标防火墙设备,所述目标防火墙设备为预先匹配的若干防火墙设备中的任一设备;

在所述数据下发请求中指定目标防火墙设备的情况下,根据所述目标防火墙设备的设备信息,发送所述数据下发请求中指定的配置数据;

在所述数据下发请求中未指定目标防火墙设备的情况下,获得预先匹配的若干防火墙设备的设备信息;

根据所获得的设备信息确定目标防火墙设备,并向所确定的目标防火墙设备发送所述数据下发请求中指定的配置数据。

一种防火墙配置装置,其特征在于,所述装置应用于openstack服务端,包括:

请求接收模块,用于接收数据下发请求;

指定确定模块,用于确定所述数据下发请求中是否指定目标防火墙设备,所述目标防火墙设备为预先匹配的若干防火墙设备中的任一设备;

数据发送模块,用于在所述数据下发请求中指定目标防火墙设备的情况下,根据所述目标防火墙设备的设备信息,发送所述数据下发请求中指定的配置数据;

信息获得模块,用于在所述数据下发请求中未指定目标防火墙设备的情况下,获得预先匹配的若干防火墙设备的设备信息;

设备确定模块,用于根据所获得的设备信息确定目标防火墙设备;

所述数据发送模块,还用于向所确定的目标防火墙设备发送所述数据下发请求中指定的配置数据。

本说明书实施例所提供的技术方案,可以预先匹配若干防火墙设备的设备信息,从而可以在数据下发时,向所指定或确定的某一防火墙设备下发配置数据,从而实现一个fwaas能够针对多台防火墙设备进行资源下发等配置,同时配置多台防火墙设备,满足大规模组网云环境下部署多台防火墙设备的需求。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。

此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。

附图说明

为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。

图1是本说明书实施例防火墙配置方法的流程示意图;

图2是本说明书实施例防火墙配置装置的结构示意图;

图3是本说明书实施例数据发送模块的结构示意图;

图4是本说明书实施例设备确定模块的结构示意图;

图5是用于配置本说明书实施例装置的一种设备的结构示意图。

具体实施方式

为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。

针对现有技术存在的问题,本说明书提供一种防火墙配置方法,应用于openstack服务端,参见图1所示,该方法可以包括以下步骤:

s101,接收数据下发请求;

本说明书实施例并不限定数据下发请求的触发机制。

在一个例子中,可以由用户在配置界面中手动出发,如通过可对openstack服务端进行配置的web配置界面、或命令行界面,向openstack服务端发出数据下发请求;

在另一个例子中,也可以根据预先设置的时间或其他条件进行自动出发,如可以周期性进行数据下发;等等。

本领域技术人员可以根据实际需求进行设置。

s102,确定所述数据下发请求中是否指定目标防火墙设备,所述目标防火墙设备为预先匹配的若干防火墙设备中的任一设备;

本说明书实施例中,具体可以通过多种方式预先配置若干防火墙设备,本说明实施例对此不做限定,本领域技术人员可以根据实际情况灵活地配置。

在本说明书实施例的一种具体实施方式中,首先可以由开发人员将待匹配的防火墙设备的信息写入匹配文件中,例如,创建fwaas_driver.ini文件并以配置组[fw_device_1]表示1台防火墙,从而可以在匹配文件中添加多台防火墙设备。

此外,还可以在匹配文件中写入防火墙设备的若干信息,例如,可以写入防火墙设备的ip、用户名、密码以及描述等设备本身的信息,以及每台防火墙设备需配置的对接vlan、对接ip信息及对接rt设备等对接信息等。

对应地,openstack服务端可以首先获得防火墙设备匹配文件,并且解析所述匹配文件,得到该文件中包括的若干组设备信息;其中,任一组设备信息用于描述对应待匹配防火墙设备;然后将所获得的若干组防火墙设备信息,存入本端预先创建的防火墙设备信息表中,以便本端在向所匹配防火墙设备下发匹配数据时获取。该表中可以包括主键id、router_id、fw_ip、username、password、status以及priority等字段。

此外,如果防火墙设备需与路由器对接,则还可以扩展预先建立的路由器数据表,为其添加防火墙设备列,用于标识各路由器对接的防火墙设备。

在本说明书实施例的另一种具体实施方式中,还可以对上述防火墙设备信息表进行更新。首先可以接收防火墙设备信息表更新请求,例如,可以由用户通过配置界面触发,或者设置定时自动触发机制,等等。在接收到更新请求后,获得所述更新请求对应的防火墙设备匹配文件,并解析所述匹配文件,得到该文件中包括的若干组设备信息;比较所解析得到的设备信息与本端防火墙设备信息表中存储的设备信息是否一致,并在不一致的情况下,使用所解析得到的设备信息对本端防火墙设备信息表中存储的设备信息进行更新。

例如,openstack服务端在启动fwaas服务时,可以遍历配置文件fwaas_driver.ini中的配置组[fw_device_n],并将本端防火墙设备信息表中不存在的配置组信息写入该表中,以及删除该表中存在但配置文件中不存在的配置组信息。

此外,openstack服务端在启动fwaas服务时,还可以根据配置组中的对接vlan和对接ip信息,创建对应的vlan-if接口;并创建默认路由,出接口为该vlan-if口,下一跳为rt设备直连口vlan的ip。

在本说明书实施例的又一种具体实施方式中,上述设备信息中可以包括防火墙设备的运行状态情况。openstack服务端在将所获得的若干组防火墙设备信息,存入本端预先创建的防火墙设备信息表后,还可以根据表中存储的每组防火墙设备信息:对该组防火墙设备信息对应的防火墙设备进行状态检测;在检测结果为运行状态的情况下,将该检测结果存入该组防火墙设备信息;在检测结果为未运行状态的情况下,将该检测结果存入该组防火墙设备信息,并进行设备未运行警告。

例如,如果防火墙设备可正常通信,则其为运行状态(如标记为active),否则为未运行状态(如标记为down),并可以在web配置界面中提示需检查网络故障。

s103,在所述数据下发请求中指定目标防火墙设备的情况下,根据所述目标防火墙设备的设备信息,发送所述数据下发请求中指定的配置数据;

用户可以指定openstack服务端数据下发的防火墙设备,例如,可以在web配置界面(如dashboard界面)中该选择,又如,可以通过命令行指定“--device”属性,等等。从而,所述数据下发请求中可能存在指定的目标防火墙设备。

具体地,openstack服务端可以首先获得所述防火墙设备信息表中存储的所述目标防火墙设备的设备信息,并确定所述设备信息中的状态检测结果,根据所述状态检测结果,确定所述目标防火墙设备是否为运行状态。

若是,则根据所述目标防火墙设备的设备信息,向所述目标防火墙设备发送所述数据下发请求中指定的配置数据;若否,则进行所述目标防火墙设备未运行警告。

s104,在所述数据下发请求中未指定目标防火墙设备的情况下,获得预先匹配的若干防火墙设备的设备信息;

s105,根据所获得的设备信息确定目标防火墙设备,并向所确定的目标防火墙设备发送所述数据下发请求中指定的配置数据。

为便于描述,将s104与s105结合进行说明。

而如果数据下发请求中未指定目标防火墙设备,则可以由openstack服务端根据防火墙设备的设备信息确定目标防火墙设备并发送配置数据。

具体地,可以首先获得预设的若干指标,并针对所获得的任一组防火墙设备信息:确定该组设备信息中,所述若干指标的值,使用所确定的指标值,计算该组设备信息对应防火墙设备的负载能力值,根据所计算的各负载能力值,将负载能力值符合预设筛选规则的设备,确定为目标防火墙设备。

例如,若干指标可以包括:防火墙设备的内存空间、存储空间、最大并发剩余数、和/或新建会话数目、等等。

可以由fwaasagent周期性地(如以5s为周期)收集所匹配防火墙设备的各项指标值,并且预设各项指标的权重,计算各项指标值的加权结果作为负载能力值,从而将负载能力值最大的防火墙设备确定为目标防火墙设备。

在本说明书实施例的一种具体实施方式中,还可以以2台防火墙设备为一个防火墙组,2台设备分别为主、从防火墙设备,从而避免在一台防火墙设备出现故障时,影响整个系统的防火墙功能实现。每个防火墙组中,可以由一个配置下发口ip(通常为管理ip)地址,该ip地址对应该防火墙组中的2台防火墙设备。

在openstack服务端向防火墙设备发送配置数据时,在数据下发请求中所指定的防火墙设备可以为一个防火墙组,openstack服务端在该防火墙组中的主防火墙设备为运行状态的情况下,向该主防火墙设备发送配置数据,而在该防火墙组中的主防火墙设备不为运行状态的情况下,向该防火墙组中的从防火墙设备发送配置数据;同理地,如果数据下发请求中并未指定防火墙设备,则openstack服务端可以根据主防火墙设备的指标值计算负载能力值,或者根据主、从防火墙设备的指标值计算该防火墙组的负载能力值,从而选择符合预设筛选规则的防火墙设备发送配置数据。

相应于上述方法实施例,本说明书实施例还提供一种防火墙配置装置,应用于openstack服务端,参见图2所示,该装置可以包括:

请求接收模块110,用于接收数据下发请求;

指定确定模块120,用于确定所述数据下发请求中是否指定目标防火墙设备,所述目标防火墙设备为预先匹配的若干防火墙设备中的任一设备;

数据发送模块130,用于在所述数据下发请求中指定目标防火墙设备的情况下,根据所述目标防火墙设备的设备信息,发送所述数据下发请求中指定的配置数据;

信息获得模块140,用于在所述数据下发请求中未指定目标防火墙设备的情况下,获得预先匹配的若干防火墙设备的设备信息;

设备确定模块150,用于根据所获得的设备信息确定目标防火墙设备;

所述数据发送模块130,还用于向所确定的目标防火墙设备发送所述数据下发请求中指定的配置数据。

在本说明书实施例的一种具体实施方式中,参见图3所示,所述数据发送模块130,可以包括:

信息获得单元131,用于获得所述防火墙设备信息表中存储的所述目标防火墙设备的设备信息,并确定所述设备信息中的状态检测结果;

状态确定单元132,用于根据所述状态检测结果,确定所述目标防火墙设备是否为运行状态;

数据发送单元133,用于在所述目标防火墙设备为运行状态的情况下,根据所述目标防火墙设备的设备信息,向所述目标防火墙设备发送所述数据下发请求中指定的配置数据;

警告单元134,用于在所述目标防火墙设备为未运行状态的情况下,进行所述目标防火墙设备未运行警告。

在本说明书实施例的一种具体实施方式中,参见图4所示,所述设备确定模块150,可以包括:

指标获得单元151,用于获得预设的若干指标;

设备筛选单元152,用于针对所获得的任一组防火墙设备信息:确定该组设备信息中,所述若干指标的值;使用所确定的指标值,计算该组设备信息对应防火墙设备的负载能力值;根据所计算的各负载能力值,将负载能力值符合预设筛选规则的设备,确定为目标防火墙设备。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

本说明书实施例还提供一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现前述的防火墙配置方法。该方法至少包括:

一种防火墙配置方法,其特征在于,所述方法应用于openstack服务端,包括:

接收数据下发请求;

确定所述数据下发请求中是否指定目标防火墙设备,所述目标防火墙设备为预先匹配的若干防火墙设备中的任一设备;

在所述数据下发请求中指定目标防火墙设备的情况下,根据所述目标防火墙设备的设备信息,发送所述数据下发请求中指定的配置数据;

在所述数据下发请求中未指定目标防火墙设备的情况下,获得预先匹配的若干防火墙设备的设备信息;

根据所获得的设备信息确定目标防火墙设备,并向所确定的目标防火墙设备发送所述数据下发请求中指定的配置数据。

图5示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。

处理器1010可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。

存储器1020可以采用rom(readonlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。

输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。

通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。

总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。

需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。

虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。

类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。

由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。

以上所述仅为本说明书实施例的较佳实施例而已,并不用以限制本说明书实施例,凡在本说明书实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书实施例保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1