现在呢,有很多管理上网行为的软件,那么ASA作为状态化防火墙,它也可以进行管理上网行为,我们可以利亚撒用防火墙iOS的特性实施URL过滤可以对访问的网站域名进行控制,从而达到某种管理目的。
实施URL过滤一般分成以下三个步骤:
1,创建class-map(类映射),识别传输流量。
2,创建策略图(策略映射),关联class-map。
3,应用策略图到接口上。
<>强配置实例:强>
使用下面简单的网络拓扑图,在内网主机上编辑主机文件,添加如下记录(若是生产环境,DNS服务器等齐全,则可省略这步):
-
<李> 172.16.1.1:www.kkgame.com。李>
<李>
172.16.1.1: www.163.com。
实现内网网段192.168.1.0/24中的主机禁止访问网站www.kkgame.com但允许访问其他网站(如www.163.com)。
配置步骤如下(接口等基本配置省略):
(1),创建class-map,识别传输流量:
<代码> ciscoasa(配置)#访问列表tcp_filter1允许tcp 192.168.1.0 255.255.255.0任何情商www ciscoasa(配置)# class-map tcp_filter_class1 ciscoasa (config-cmap) #匹配访问列表tcp_filter1 #在class-map中定义允许的流量。 ciscoasa (config-cmap) #退出 ciscoasa(配置)# regex url1 " \ .kkgame \ com”#定义名称为所需的正则表达式, 表示URL扩展名是“.kkgame.com” ciscoasa(配置)# class-map类型正则表达式匹配任何url_class1 #创建名称为 url_class1的clas-map,类型为正则表达式。关键字匹配任何表示匹配任何一个。 ciscoasa (config-cmap) #匹配regex url1 ciscoasa(配置)# class-map类型检查http http_url_class1 #创建 名为http-url-class1的class-map,类型为检查http(检查http流量) ciscoasa (config-cmap) #匹配请求头主机regex类url_class1 #匹配http请求 报文头中域的主机中的URL扩展名“.kkgame.com”, url_class1表示调用名称为url_class1的class-map。 ciscoasa (config-cmap) #退出代码>
(2),创建策略图,关联class-map。
<代码> ciscoasa(配置)#检查http http_url_policy1策略图类型 #创建名称为http_url_policy1的策略图,类型为检查http(检查http流量) ciscoasa (config-pmap) #类http_url_class1 #调用之前创建的class-map ciscoasa (config-pmap-c) # drop-connection日志#下降数据包并关闭连接,并发送系统日志。 ciscoasa (config-pmap-c) #退出 ciscoasa (config-pmap) #退出 ciscoasa(配置)#策略图inside_http_url_policy #创建名称为inside_http_url_policy的策略图, 它将被应用到接口上。 ciscoasa (config-pmap) #类tcp_filter_class1 #调用之前创建的class-map ciscoasa (config-pmap-c) #检查http http_url_policy1 #检查http流量 ciscoasa (config-pmap-c) #退出 ciscoasa (config-pmap) #退出代码>
(3),应用策略图到接口上:
<代码> ciscoasa(配置)#服务策略inside_http_url_policy接口在代码>
<强>至此,已经实现了需求,需要注意的是,一个接口只能应用一个策略图。强>