ASA防火墙配置 URL 过滤
作者:互联网
ASA防火墙配置 URL 过滤
一、实验拓扑图
二、准备工作
1.配置内网 DNS 服务
挂光盘,并配置yum源
[root@localhost ~]# hostnamectl set-hostname dns
[root@localhost ~]# bash
[root@dns ~]# yum -y install bind
[root@dns ~]# vim /etc/named.conf
往下滑
配置DNS区域配置文件
[root@dns ~]# cd /var/named/
[root@dns named]# cp -p named.localhost baidu
[root@dns named]# cp -p named.localhost youxi
[root@dns named]# vim baidu
[root@dns named]# vim youxi
[root@dns named]# systemctl start named #开启DNS服务
注意事项:
- DNS 服务器要将 DNS 指向自己
- Win7 客户机需要将 DNS 指向 DNS 服务器
使用客户机验证是否能够解析刚才域名
2.配置外网 Web 主机
挂光盘,并配置yum源
baidu上配置:
[root@localhost ~]# hostnamectl set-hostname baidu
[root@localhost ~]# bash
[root@baidu ~]# yum -y install httpd
[root@baidu ~]# echo "This is baidu.com" > /var/www/html/index.html
[root@baidu ~]# echo "ServerName www.baidu.com" >> /etc/httpd/conf/httpd.conf
[root@baidu ~]# systemctl start httpd
youxi上配置:
[root@localhost ~]# hostnamectl set-hostname youxi
[root@localhost ~]# bash
[root@youxi ~]# yum -y install httpd
[root@youxi ~]# echo "This is youxi.com" > /var/www/html/index.html
[root@youxi ~]# echo "ServerName www.youxi.com" >> /etc/httpd/conf/httpd.conf
[root@youxi ~]# systemctl start httpd
3.配置 ASA 防火墙
ciscoasa> en
ciscoasa# conf t
ciscoasa(config)# hostname ASA #配置主机名
E0/0
ASA(config)# int e0/0
ASA(config-if)# nameif inside
INFO: Security level for "inside" set to 100 by default.
ASA(config-if)# security-level 100
ASA(config-if)# ip add 192.168.1.254 255.255.255.0
ASA(config-if)# no sh
Ctrl+C
ASA# ping 192.168.1.5 #测试和内网主机连通性
ASA# ping 192.168.1.1
E0/1
ASA# conf t
ASA(config)# int e0/1
ASA(config-if)# nameif outside
INFO: Security level for "outside" set to 0 by default.
ASA(config-if)# security-level 0
ASA(config-if)# ip add 192.168.100.254 255.255.255.0
ASA(config-if)# no sh
Ctrl+C
ASA# ping 192.168.100.1 #测试和外网主机连通性
ASA# ping 192.168.100.2
4.使用客户机访问验证
可以看到现在两个域名都可以访问,但是我们只想让内网访问 www.baidu.com,这个时候我们就可以通过配置 URL 过滤来实现;
三、ASA 防火墙配置 URL 过滤
1.创建 Class-map ,识别传输流量
- 创建一条名字是 aaa 的ACL;允许 192.168.1.0 网段访问所有外网的 www 服务
ASA# conf t
ASA(config)# ASA(config)# access-list aaa permit tcp 192.168.1.0 255.255.255.0 any eq www
- 创建一个名字叫"zhangsan"的类映射,随之进入子模式
ASA(config)# class-map zhangsan
- 在类映射中带入刚刚创建 ACL 中的允许的流量
ASA(config-cmap)# match access-list aaa
ASA(config-cmap)# exit #第一个映射创建完,退出到全局模式
- 创建了一个名称叫"URL1"的正则表达式,识别的扩展名是".youxi.com"
ASA(config)# regex URL1 "\.youxi\.com"
- 创建了一个名称"bbb"的 ,类型是"识别任何一个流量的"类映射
ASA(config)# class-map type regex match-any bbb
- 把刚刚创建的正则表达式"URL1"带入当前这个类映射
ASA(config-cmap)# match regex URL1
ASA(config-cmap)# exit #第二个类映射完成,该类映射是用来识别扩展名
- 创建一个名称是"ccc",类型是识别"http"这种流量的 类映射
ASA(config)# class-map type inspect http ccc'
- 将 http 请求报文头部中 url 扩展名是".youxi.com"这种类型的映射带入到当前的映射
ASA(config-cmap)# match request header host regex class bbb
ASA(config-cmap)# exit #第三个类映射结束
2.创建策略映射,关联类映射
- 创建了一个名称是 p-aaa,类型是识别"http"流量的 策略映射
ASA(config)# policy-map type inspect http p-aaa
- 将刚刚创建的 ccc 这个类映射调用到当前的策略映射
ASA(config-pmap)# class ccc
- 对刚刚识别的流量做关闭连接并记录在日志中
ASA(config-pmap-c)# drop-connection log
ASA(config-pmap-c)# exit
ASA(config-pmap)# exit #退出,第一个策略映射完成
- 创建名称是"p-bbb"的策略映射
ASA(config)# policy-map p-bbb
- 调用之前创建的"zhangsan"这个类映射,识别传输流量
ASA(config-pmap)# class zhangsan
- 检查 http 流量,把第一个策略映射带入当前这个策略映射
ASA(config-pmap-c)# inspect http p-aaa
ASA(config-pmap-c)# exit
ASA(config-pmap)# exit #退出,第二个策略映射结束
3.将最终的策略映射 p-bbb 用在ASA的 inside 接口上
ASA(config)# service-policy p-bbb interface inside
注意:一个接口只能用一个 policy-map
4.使用客户机访问测试
可以看到 baidu 可以正常访问,而 youxi 却访问不了,因为我们刚才做了 URL 过滤,把 youxi 过滤掉了
标签:baidu,映射,URL,config,防火墙,ASA,youxi,root 来源: https://blog.csdn.net/weixin_46902396/article/details/110392781