Cisci ASA上的URL過濾
一 URL過濾
利用ASA防火牆IOS的特性實施URL過濾可以對通路的網站域名進行控制
·實施URL過濾一般分為三個步驟
1建立class-map(類映射),識别傳輸流量
2建立policy-map(政策映射),關聯class-map
3應用policy-map到接口上
·實施URL過濾的模拟實驗
實驗要求:
1要求PC1不能通路www.baidu.com
2要求PC2不能通路www.sina.com.cn
2過了一段時間,公司要求内網所有主機都不能通路www.qq.com
實驗環境:如圖所示
GNS3模拟環境中PC1和PC2使用雲裝置分别連接配接兩台虛拟機,且在hosts檔案中分别添加三條要求中的主機記錄;Web伺服器使用路由器模拟,開啟http服務即可

實驗步驟
1 ASA上的基本配置

配置動态PAT,讓内網主機可以通路網際網路(ISP)

2配置ISP
用路由器模拟ISP,這裡隻需配置好接口位址即可(不用配置路由條目)


3配置web伺服器
用路由器模拟web伺服器,進行以下配置(配置好ip)

4配置PC機,并測試通路
分别配置兩台虛拟機的ip和網關,并在hosts檔案中添加三條解析條目

分别在兩台pc機上測試通路

開始配置URL過濾(ASA)
要求1 :PC1不能通路www.baidu.com
步驟1:建立class-map,識别傳輸流
1定義要控制的網段(ACL),并建立第一個class-map
建立一個名為tcp_filter1的ACL
asa(config)# access-list tcp_filter1 permit tcp 192.168.1.0 255.255.255.0 any eq www
再建立一個名為tcp_filter1_class1的class-map,并将ACL添加到這個class-map

3設定要控制的url位址,并建立第二個且類型為regex的class-map
建立一個url,再建立一個名為url_class1的class-map,并将url添加到這個class-map

4建立第三個且類型為inspect http的class-map
建立一個名為http_url_class1的class-map,并調用第二個clas-map,即表示在http請求封包頭中的url字尾是baidu.com的将被丢棄

其中regex class表示調用class-map
步驟2:建立policy-map,關聯class-map
1建立第一個類型為inspect http的policy-map
建立一個名為http_url_policy1的policy-map,并調用第三個class-map;設定的規則為drop資料包并關閉連接配接,發送系統日志

2建立第二個policy-map
建立一個名為inside_http_url_policy的policy-map(用來應用在接口);并調用第一個class-map。設定檢查http流量

步驟3:應用policy-map到接口上
隻能應用在inside接口上,且一個接口隻能應用一個policy-map

最後進行測試,發現pc1不能通路www.baidu.com
要求二:PC2不能通路
重複前面的步驟即可,但是要注意一下幾點
重新建立一個ACL,即名稱不能和第一個相同(PC2屬于2網段)
asa(config)# access-list tcp_filter2 permit tcp 192.168.2.0 255.255.255.0 any eq www
重新建立第一個class-map、第二個class-map、第三個class-map和第一個policy-map;然後将這個policy-map應用到第二個policy-map中(因為一個接口隻能應用一個policy-map,是以這裡不需要再建立第二個policy-map)
要求3:公司要求内網所有主機都不能通路www.qq.com
當還需要禁止其他url時,隻需進行以下操作即可
建立url2,應用到url_class1

再将url2應用到url_class2上即可滿足要求