ASA防火墙设置URL过滤

实施URL过滤一般分为以下三个步骤:
1.创建class-map(类映射),识别传输流量;
2.创建policy-map(策略映射),关联class-map;
3.应用policy-map到接口上。
创建class-map,识别传输流量

ASA(config)# access-list 100 permit tcp 192.168.1.0 255.255.255.0 any eq www
ASA(config)# class-map 100
#创建类映射
ASA(config-cmap)# match access-list 100
#在class-map中定义允许的流量
ASA(config)# regex url1 "\.kkgame\.com"
#定义名称为url1的正则表达式,表示URL扩展名是“.kkgame.com”
ASA(config)# class-map type regex match-any url_class1
#创建名称为url_class1的class-map,类型为regex
ASA(config-cmap)# match regex url1
#关键字match-any表示匹配任何一个
ASA(config)# class-map type inspect http http_url_class1
#创建名称为http_url_class1的class-map,类型为inspect http(检查http流量)
ASA(config-cmap)# match request header host regex class url_class1
#匹配http请求报文中的host域中的URL扩展名“kkgame.com”,
url_class1表示调用名称为url_class1的class-map

创建policy-map,关联class-map

ASA(config)# policy-map type inspect http http_url_policy1
#创建名称为http_url_policy1的policy-map,类型inspect http(检查http流量)
ASA(config-pmap)# class http_url_class1
#调用之前创建的class-map
ASA(config-pmap-c)# drop-connection log
#drop数据包并关闭连接,并发送系统日志

ASA(config)# policy-map inside_http_url_policy
#创建名称为inside_http_url_policy的policy-map,它将应用到接口上
ASA(config-pmap)# class 100
#调用之前创建的class-map
ASA(config-pmap-c)# inspect http http_url_policy1
#检查http流量

应用policy-map到接口上

ASA(config)# service-policy inside_http_url_policy interface inside
#应用policy-map到inside区域

这个配置有点麻烦,所以整理了一个文档

access-list tcp_filter1 permit tcp 192.168.1.0 255.255.255.0 any eq www
class-map tcp_filter_class1
match access-list tcp_filter1  
exit
regex url1 "\.kkgame\.com"
class-map type regex match-any url_class1 
match regex url1
exit
class-map type inspect http http_url_class1
match request header host regex class url_class1 
exit
policy-map type inspect http http_url_policy1 
class http_url_class1
drop-connection log 
exit
policy-map inside_http_url_policy 
class tcp_filter_class1 
inspect http http_url_policy1 
exit
service-policy inside_http_url_policy interface inside 

大致能看懂就好,稍微修改一下就可以满足自己的基本需求了

猜你喜欢

转载自blog.51cto.com/14157628/2402942