03-URL过滤配置
本章节下载: 03-URL过滤配置 (276.67 KB)
URL过滤功能是指对用户访问的URL进行控制,即允许或禁止用户访问的Web资源,达到规范用户上网行为的目的。
目前,仅支持对基于HTTP协议的URL进行过滤。
URL(Uniform Resource Locator,统一资源定位符)是互联网上标准资源的地址。URL用来完整、精确的描述互联网上的网页或者其他共享资源的地址,URL格式为:“protocol://host[:port]/path/[;parameters][?query]#fragment”,格式示意如图1-1所示:
图1-1 URL格式示意图
URL各字段含义如表1-1所示:
表1-1 URL各字段含义表
字段 |
描述 |
protocol |
表示使用的传输协议,例如HTTP |
host |
表示存放资源的服务器的主机名或IP地址 |
[:port] |
(可选)传输协议的端口号,各种传输协议都有默认的端口号 |
/path/ |
是路径,由零或多个“/”符号隔开的字符串,一般用来表示主机上的一个目录或文件地址 |
[parameters] |
(可选)用于指定特殊参数 |
[?query] |
(可选)表示查询用于给动态网页传递参数,可有多个参数,用“&”符号隔开,每个参数的名和值用“=”符号隔开 |
URI |
URI(Uniform Resource Identifier,统一资源标识符)是一个用于标示某一互联网资源名称的字符 |
URL过滤功能实现的前提条件是对URL的识别。可通过使用URL过滤规则匹配URL中主机名字段和URI字段的方法来识别URL。
URL过滤规则是指对用户HTTP报文中的URL进行匹配的原则,且其分为两种规则:
· 预定义规则:根据设备中的URL过滤特征库自动生成,包括百万级的主机名或URI。预定义规则能满足多数情况下的URL过滤需求。
· 自定义规则:由管理员手动配置生成,可以通过使用正则表达式或者文本的方式配置规则中主机名或URI的内容。
URL过滤规则支持两种匹配方式:
· 文本匹配:使用指定的字符串对主机名和URI字段进行精确匹配。
¡ 匹配主机名字段时,URL中的主机名字段与规则中指定的主机名字符串必须完全一致,才能匹配成功。例如,规则中配置主机名字符串为abc.com.cn,则主机名为abc.com.cn的URL会匹配成功,而主机名为dfabc.com.cn的URL将与该规则匹配失败。
¡ 匹配URI字段时,从URL中URI字段的首字符开始,只要URI字段中连续若干个字符与规则中指定的URI字符串完全一致,就算匹配成功。例如,规则中配置URI字符串为/sina/news,则URI为/sina/news、/sina/news/sports或/sina/news_sports的URL会匹配成功,而URI为/sina的URL将与该规则匹配失败。
· 正则表达式匹配:使用正则表达式对主机名和URI字段进行模糊匹配。例如,规则中配置主机名的正则表达式为sina.*cn,则主机名为news.sina.com.cn的URL会匹配成功。
为便于管理员对数目众多的URL过滤规则进行统一部署,URL过滤模块提供了URL过滤分类功能,以便对具有相似特征的URL过滤规则进行归纳以及为匹配这些规则的URL统一指定处理动作。每个URL过滤分类具有一个严重级别属性,该属性值表示对属于此过滤分类URL的处理优先级。
URL过滤分类包括两种类型:
· 预定义分类:根据设备中的URL过滤特征库自动生成,其名称、内容和严重级别不可被修改。名称以Pre-开头。设备为预定义URL过滤分类保留的严重级别为最低,取值范围为1~999。URL过滤支持两级分类,包含父分类和子分类。仅支持预定义父分类,且父分类下仅包含预定义子分类。
· 自定义分类:由管理员手动配置,可修改其严重级别,可添加URL过滤规则。自定义分类严重级别的取值范围为1000~65535。
一个URL过滤策略中可以配置URL过滤分类和处理动作的绑定关系,以及缺省动作(即对未匹配上任何URL过滤规则的报文采取的动作)。URL过滤支持的处理动作包括:丢弃、允许、重置、重定向和生成日志。
可通过URL过滤黑/白名单规则快速筛选出不需要进行URL过滤的报文。如果用户HTTP报文中的URL与URL过滤策略中的黑名单规则匹配成功,则丢弃此报文;如果与白名单规则匹配成功,则允许此报文通过。
当用户通过设备使用HTTP访问某个网络资源时,设备将对此HTTP报文进行URL过滤。URL过滤处理流程如图1-2所示:
图1-2 URL过滤实现流程图
URL过滤功能是通过在DPI应用profile中引用URL过滤策略实现的,URL过滤实现流程如下:
(1) 设备将提取报文的URL字段,并与URL过滤规则进行匹配。
(2) 设备将报文与URL过滤策略中的过滤规则进行匹配,如果匹配成功,则进行下一步处理;如果匹配失败,则进入步骤(5)的处理。
(3) 首先判断此URL过滤规则是否属于URL过滤的黑/白名单规则,如果属于URL过滤白名单规则则直接允许此报文通过,如果属于URL过滤的黑名单规则则直接将此报文阻断。
(4) 如果此URL过滤规则既不属于URL过滤白名单规则也不属于URL过滤黑名单规则,则设备将进一步判断该规则是否同时属于多个URL过滤分类。
¡ 如果此URL过滤规则同时属于多个URL过滤分类,则根据严重级别最高的URL过滤分类的动作对此报文进行处理。
¡ 如果此URL过滤规则只属于一个URL过滤分类,则根据该规则所属的URL过滤分类的动作对此报文进行处理。
(5) 如果设备上配置了URL过滤的缺省动作,则根据配置的缺省动作对此报文进行处理;否则直接允许报文通过。
URL过滤特征库是用来对经过设备的用户访问Web请求中的URL进行识别的资源库。随着互联网业务的不断变化和发展,需要及时升级设备中的URL过滤特征库,同时设备也支持URL过滤特征库回滚功能。
URL过滤特征库的升级包括如下几种方式:
· 定期自动在线升级:设备根据管理员设置的时间定期自动更新本地的URL过滤特征库。
· 立即自动在线升级:管理员手工触发设备立即更新本地的URL过滤特征库。
· 手动离线升级:当设备无法自动获取URL过滤特征库时,需要管理员先手动获取最新的URL过滤特征库,再更新本地的URL过滤特征库。
如果管理员发现设备当前URL过滤特征库对用户访问Web的URL过滤的误报率较高或出现异常情况,则可以将其回滚到出厂版本和上一版本。
URL过滤配置任务如下:
(1) 配置URL过滤分类
(2) 配置URL过滤策略
(3) (可选)复制URL过滤策略或分类
(5) 激活URL过滤的策略和规则配置
(6) 配置URL过滤特征库升级和回滚
(7) (可选)开启应用层检测引擎日志信息功能
(8) (可选)配置URL过滤日志信息筛选功能
当URL过滤特征库中预定义的URL过滤分类和URL过滤规则不能满足对URL的控制需求时,可以配置URL过滤分类,并在分类中创建URL过滤规则。
不同URL过滤分类的严重级别不能相同,数值越大表示严重级别越高。
(1) 进入系统视图。
system-view
(2) 创建URL过滤分类,并进入URL过滤分类视图。
url-filter category category-name [ severity severity-level ]
缺省情况下,只存在预定义的URL过滤分类,且分类名称以字符串Pre-开头。
自定义的URL过滤分类不能以字符串Pre-开头。
(3) (可选)配置URL过滤分类的描述信息。
description text
(4) 配置URL过滤规则,请至少选择其中一项进行配置。
¡ 配置自定义URL过滤规则。
rule rule-id host { regex regex | text string } [ uri { regex regex | text string } ]
¡ 添加预定义URL过滤分类中的规则。
include pre-defined category-name
缺省情况下,URL过滤分类中未添加预定义URL过滤分类中的规则。
(5) (可选)重命名URL过滤分类,并进入新的URL过滤分类视图。
rename new-name
URL过滤策略中包含如下配置:
· URL过滤分类动作
· URL过滤分类缺省动作
· 白名单/黑名单规则
在开启DRS功能后,即配置wlan drs enable命令的情况下,URL过滤策略的名称不能为drs,否则设备重启后会出现配置变更等问题。有关DRS功能的详细介绍请参见“WLAN安全配置指导”中的“WLAN DRS”。
(1) 进入系统视图。
system-view
(2) 创建URL过滤策略,并进入URL过滤策略视图。
url-filter policy policy-name
(3) 配置URL过滤分类动作。
category category-name action { drop | permit | redirect parameter-profile parameter-name | reset } [ logging [ parameter-profile parameter-name ] ]
缺省情况下,未配置URL过滤分类动作。
若报文成功匹配的URL过滤规则同属于多个URL过滤分类,则根据严重级别最高的URL过滤分类中指定的动作对此报文进行处理。
(4) (可选)配置URL过滤策略的缺省动作。
default-action { drop | permit | redirect parameter-profile parameter-name | reset } [ logging [ parameter-profile parameter-name ] ]
(5) (可选)向URL过滤策略中添加黑/白名单规则。
add { blacklist | whitelist } [ id ] host { regex host-regex | text host-name } [ uri { regex uri-regex | text uri-name } ]
(6) (可选)重命名URL过滤策略,并进入新的URL过滤策略视图。
rename new-name
此功能用来复制已存在的URL过滤策略,可以方便用户快速创建URL过滤策略。
(1) 进入系统视图
system-view
(2) 复制URL过滤策略
url-filter copy policy old-name new-name
此功能用来复制已存在的URL过滤分类,可以方便用户快速创建URL过滤分类。
在复制URL过滤分类时,如果指定优先级与已经存在的分类优先级相同,则复制失败。
(1) 进入系统视图。
system-view
(2) 复制URL过滤分类。
url-filter copy category old-name new-name severity severity-level
DPI应用profile是一个安全业务的配置模板,为实现URL过滤功能,必须在DPI应用porfile中引用指定的URL过滤策略。
一个DPI应用profile中只能引用一个URL过滤策略,如果重复配置,则后配置的覆盖已有的。
(1) 进入系统视图。
system-view
(2) 进入DPI应用profile视图。
app-profile app-profile-name
关于该命令的详细介绍请参见“DPI深度安全命令参考”中的“应用层检测引擎”。
(3) 在DPI应用profile中引用URL过滤策略。
url-filter apply policy policy-name
缺省情况下,DPI应用profile中未引用URL过滤策略。
当URL过滤策略和规则被创建、修改和删除后,需要配置此功能使其策略和规则配置生效。
配置此功能会暂时中断所有DPI业务的处理,为避免重复配置此功能对DPI业务造成影响,请完成部署DPI各业务模块的策略和规则后统一配置此功能。
有关此功能的详细介绍请参见“DPI深度安全配置指导”中的“应用层检测引擎”。
(1) 进入系统视图。
system-view
(2) 激活URL过滤策略和规则配置。
inspect activate
缺省情况下,URL过滤策略和规则被创建、修改和删除时不生效。
· 请勿删除设备存储介质根目录下的/dpi/文件夹,否则设备升级或回滚特征库会失败。
· 当系统内存使用状态处于告警门限状态时,请勿进行特征库升级或回滚,否则易造成设备特征库升级或回滚失败,进而影响URL过滤业务的正常运行。有关内存告警门限状态的详细介绍请参见“设备管理配置指导”中的“设备管理”。
· 自动在线升级(包括定期自动在线升级和立即自动在线升级)URL过滤特征库时,需要确保设备能通过静态或动态域名解析方式获得官方网站的IP地址,并与之路由可达,否则设备升级URL过滤特征库会失败。有关域名解析功能的配置请参见“网络互通配置指导”中的“域名解析”。
如果设备可以访问官方网站上的特征库服务专区,可以采用定期自动在线升级方式来对设备上的URL过滤特征库进行升级。
(1) 进入系统视图。
system-view
(2) 开启定期自动在线升级URL过滤特征库功能,并进入自动在线升级配置视图。
url-filter signature auto-update
缺省情况下,定期自动在线升级URL过滤特征库功能处于关闭状态。
(3) 配置定期自动在线升级URL过滤特征库的时间。
update schedule { daily | weekly { fri | mon | sat | sun | thu | tue | wed } } start-time time tingle minutes
缺省情况下,设备在每天01:00:00至03:00:00之间自动升级URL过滤特征库。
当管理员发现官方网站上的特征库服务专区中的URL过滤特征库有更新时,可以选择立即自动在线升级方式来及时升级URL过滤特征库版本。
(1) 进入系统视图。
system-view
(2) 立即自动在线升级URL过滤特征库。
url-filter signature auto-update-now
如果设备不能访问官方网站上的特征库服务专区,管理员可以采用如下几种方式手动离线升级URL过滤特征库版本。
· 本地升级:使用本地保存的特征库文件升级系统上的URL过滤特征库版本。
· FTP/TFTP升级:通过FTP或TFTP方式下载远程服务器上保存的特征库文件,并升级系统上的URL过滤特征库版本。
使用本地升级方式离线升级特征库版本时,特征库文件只能存储在当前主用设备上,否则设备升级特征库会失败。
(1) 进入系统视图。
system-view
(2) 手动离线升级URL过滤特征库。
url-filter signature update file-path
URL过滤特征库版本每次回滚前,设备都会备份当前版本。多次回滚上一版本的操作将会在当前版本和上一版本之间反复切换。例如当前URL过滤特征库版本是V2,上一版本是V1,第一次执行回滚到上一版本的操作后,特征库替换成V1版本,再执行回滚上一版本的操作则特征库重新变为V2版本。
(1) 进入系统视图。
system-view
(2) 回滚URL过滤特征库。
url-filter signature rollback { factory | last }
应用层检测引擎日志是为了满足管理员审计需求。设备生成应用层检测引擎日志信息会交给信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。关于信息中心的详细描述请参见“设备管理配置指导”中的“信息中心”。
(1) 进入系统视图。
system-view
(2) 开启应用层检测引擎日志信息功能。
url-filter log enable
缺省情况下,生成应用层检测引擎日志信息功能处于关闭状态。
开启URL过滤日志功能后(即执行category action logging或default-action logging命令)会产生大量的日志信息,不利于查看和分析。管理员可从以下方式中任选其一,对需要进行日志记录的资源进行筛选:
· 仅对网站根目录下资源的访问进行日志记录
· 对指定类型的网页资源的访问不进行日志记录
(1) 进入系统视图。
system-view
(2) 配置URL过滤仅对网站根目录下资源的访问进行日志记录。
url-filter log directory root
缺省情况下,URL过滤对网站所有路径下资源的访问均进行日志记录。
(1) 进入系统视图。
system-view
(2) 配置URL过滤不进行日志记录访问的网页资源类型。
¡ 配置URL过滤对指定预定义类型网页资源的访问不进行日志记录。
url-filter log except pre-defined { css | gif | ico | jpg | js | png | swf | xml }
¡ 配置URL过滤对指定自定义类型网页资源的访问不进行日志记录。
url-filter log except user-defined text
缺省情况下,URL过滤仅对预定义类型(即css、gif、ico、jpg、js、png、swf和xml类型)网页资源的访问不进行日志记录。
完成上述配置后,在任意视图下执行display命令可以显示URL过滤的配置信息和分类信息等。
在用户视图下执行reset命令可以清除URL过滤的统计信息。
表1-2 URL过滤显示和维护
操作 |
命令 |
显示URL过滤分类信息 |
display url-filter category [ verbose ] |
显示URL过滤特征库信息 |
display url-filter signature information |
查看URL过滤的统计信息 |
display url-filter statistics |
清除URL过滤的统计信息 |
reset url-filter statistics |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!