防火墙(ASA)高级配置之URL过滤、日志管理、透明模式

本文涉及的产品
云防火墙,500元 1000GB
日志服务 SLS,月写入数据量 50GB 1个月
简介:

    对于防火墙产品来说,最重要的一个功能就是对事件进行日志记录。本篇博客将介绍如何对ASA进行日志管理与分析、ASA透明模式的原理与配置、利用ASA防火墙的IOS特性实施URL过滤。


一、URL过滤

    利用ASA防火墙IOS的特性URL过滤可以对访问的网站域名进行控制,从而达到某种管理目的。

    实施URL过滤一般分为以下三个步骤:

(1)创建class-map(类映射),识别传输流量。

(2)创建policy-map(策略映射),关联class-map。

(3)应用policy-map到接口上。


案例:如下图所示,实现网段192.168.1.0/24中的主机禁止访问www.4399.com,但允许访问其他网站,如www.163.com

wKiom1nHdySS3QrsAADpyb-eAUQ007.png

配置步骤如下:

(1)配置接口IP,实现全网互通(略)

(2)创建class-map(类映射),识别传输流量。

1
2
3
4
5
6
7
8
9
10
11
12
13
asa(config) # access-list aaa permit tcp 192.168.1.0 255.255.255.0 any eq www   //创建ACL
asa(config) # class-map aaa1            //创建class-map
asa(config-cmap) # match access-list aaa          //在class-map中定义允许的流量
asa(config-cmap) # exit
 
asa(config) # regex urla "\.4399\.com"           //定义名称为urla的正则表达式,表示URL扩展名是"4399.com"
asa(config) # class-map type regex match-any urla1        //创建class-map,类型为regex,match-any表示匹配任何一个
asa(config-cmap) # match regex urla                   //定义URL
asa(config-cmap) # exit
 
asa(config) # class-map type inspect http urla2         //创建class-map,类型为inspect http(检查http流量)
asa(config-cmap) # match request header host regex class urla1    
// 在http请求报文头中的host域中的URL扩展名如果是 "4399.com" ,将被丢弃。regex class urla1表示调用名称为urla1的class-map

(3)创建policy-map(策略映射),关联class-map。

1
2
3
4
5
6
7
asa(config) # policy-map type inspect http policy1      //创建policy-map,类型为inspect http(检查http流量)
asa(config-pmap) # class urla2                  //调用之前创建的class-map
asa(config-pmap-c) # drop-connection log         //drop数据包且关闭连接,并发送系统日志
 
asa(config) # policy-map policy2                //创建policy-map,将应用到接口
asa(config-pmap) # class aaa1                //调用之前创建的class-map
asa(config-pmap-c) # inspect http policy1           //检查http流量

(4)应用policy-map到接口上。

1
asa(config) # service-policy policy2 interface inside

注意:一个接口只能应用一个policy-map。



二、日志管理

    对于任何防火墙产品来说,最重要的功能之一就是对事件进行日志记录,ASA使用同步日志(syslog)来记录在防火墙上发生的所有事件。

1.日志信息的安全级别

    日志信息的安全级别分为八个等级,如图所示:

wKioL1nHiK-SSY_IAACovh9MF7g504.png

    信息的紧急程度按照重要性从高到低排列,emergencies(非常紧急)的重要性最高,而debugging(调试)的重要性最低。


2.配置日志

    日志信息可以输出到Log Buffer(日志缓冲区)、ASDM和日志服务器。

    在配置日志前,一般需要先配置时区和时间,配置如下:

(1)配置时区,命令如下:

1
asa(config) # clock timezone peking 8

    其中peking用来指明所在时区的名字,8是指相对于国际标准时间的偏移量,这个值的取值范围为-23…23。

(2)配置时间,命令如下:

1
asa(config) # clock set 19:30:00 24 Sep 2017

然后可以分别配置Log Buffer、ASDM和日志服务器。

(3)配置Log Buffer,命令如下:

1
2
asa(config) # logging enable
asa(config) # logging buffered informational  //配置日志的级别,也可以写6,表示6以上的级别(0-6级别)

注:Log Buffer(日志缓冲区) 的默认大小是4KB。

1
2
asa(config) # show logging           //查看Log Buffer
asa(config) # clear logging buffer       //清除Log Buffer

(4)配置ASDM日志,命令如下:

1
2
3
asa(config) # logging enable
asa(config) # logging asdm informational         //表示6以上的级别 ,informational可用6表示 
asa(config) # clear logging  asdm              //清除ASDM


(5)配置日志服务器

    目前,有很多日志服务器软件。Firewall Analyzer是一款基于Web的防火墙日志分析软件,利用该软件能够监控网络周边安全设备、收集和归档日志,并生成报表。Firewall Analyzer能够帮助网络安全管理员有效监控带宽和防火墙安全事件,全面了解网络的安全状况;监控使用/未使用的防火墙策略并优化策略;通过趋势分析规划网络容量等。Firewall Analyzer支持多种设备/厂商,支持Windows和Linux平台。

案例:如下图所示,在win 2008上安装Firewall Analyzer 6

wKioL1nHklKQ9QBUAACq2MJE1jw628.png

①在ASA防火墙的配置如下:

1
2
3
4
asa(config) # logging enable
asa(config) # logging timestamp         //启用时间戳
asa(config) # logging trap informational
asa(config) # logging host inside 192.168.0.1    //定义日志服务器的IP地址以及ASA的接口

    ASA与日志服务器的通信默认使用UDP协议514端口。


②Firewall Analyzer 6安装后,默认会启用两个SyslogServer,分别监听UDP的514端口和1514端口。首先使用Firewall Analyzer 启动服务程序,然后使用“Firewall Analyzer Web Client”进入用户端界面,输入初始用户名和密码。


③在主机Windows7上运行命令ping  192.168.0.1  -l  10000  -t 模拟攻击,然后在Firewall  Analyzer的Web界面上就可以查看到相应的事件。

wKioL1nHmDLTsoL-AAKyFxLgJxE194.png

    在“安全统计”下单击“查看Syslogs”可以查看详细的日志信息。


④可以通过Firewall Analyzer的事件概要报表、安全报表生成报告。

wKiom1nHmRrxqwe4AALfcavmdxU592.png



三、透明模式

    ASA安全设备可以工作在两种模式下,即路由模式和透明模式,默认情况下ASA处于路由模式。

wKiom1nHm1rAeAFxAACkDlNKUu4399.png

1.透明模式

    ASA从7.0版本开始支持透明模式。

    在路由默认下,ASA充当一个三层设备,基于目的Ip地址转发数据包;在透明模式下,ASA充当一个二层设备,基于目的MAC地址转发数据桢(没有配置NAT时)。

    在8.0之前的版本中,透明模式下不支持NAT,8.0及其后续版本支持NAT配置。如果配置了NAT,ASA转发数据包仍然使用路由查找。

    处于透明模式下的ASA虽然是一个二层设备,但与交换机处理数据桢存在着不同。

对于目的MAC地址未知的单播数据桢,ASA不会泛洪而是直接丢弃。

ASA不参与STP(生成树协议)。

    透明模式下默认允许穿越的目的MAC地址如下:

广播MAC地址:FFFF.FFFF.FFFF

Ipv4组播MAC地址从0100.5E00.0000到0100.5EFE.FFFF。

Ipv6组播MAC地址从3333.0000.0000到3333.FFFF.FFFF。

BPDU组播MAC地址:0100.0CCC.CCCD (Cisco私有)。

AppleTalk组播MAC地址从0900.0700.0000到0900.07FF.FFFF。

    透明模式下默认允许的三层流量如下:

允许Ipv4流量自动从高级别接口到低级别接口,而不必配置ACL。

允许ARP流量双向穿越,而不必配置ACL。

    ASA在透明模式下运行时,继续使用应用层智能执行状态检测和各项常规防火墙功能,但只支持两个区域。

    透明模式下不需要再接口上配置Ip地址,这样就不用重新设计现有的Ip网络,方便部署。


2.透明模式的配置

(1)切换到透明模式,命令如下:

1
2
asa(config)# firewall transparent
ciscoasa(config)#

    需要注意的是:切换时会清除当前的配置。

    查看当前的工作模式的命令如下:

1
ciscoasa(config) # show firewall

    如果要重新切换到路由模式,需要使用命令:no firewall  transparent


(2)管理IP地址

    需要为ASA分配一个IP地址用于管理目的,管理Ip地址必须处于同一个连接子网。ASA将管理IP地址用作源于ASA的分组的源IP地址,如系统消息、AAA或SYSLOG服务器。

    管理IP地址的配置命令如下

1
ciscoasa(config) #ip address ip [mask]

(3)MAC地址表及学习

1
2
3
4
ciscoasa # show mac-address-table        //查看MAC地址表
ciscoasa(config) # mac-address-table aging-time minutes      //设置动态MAC条目的过期时间(默认5分钟)
ciscoasa(config) # mac-address-table static logical_if_name mac_address      //设置静态MAC条目
ciscoasa(config) # mac-learn logical_if_name disable       //禁止特定接口的MAC地址学习

案例1:如图所示,公司为了网络安全,新增了一台防火墙,为了方便部署,将ASA配置为透明模式,管理IP地址配置为192.168.1.253

wKioL1nHn0eB0rV0AACO60iG6Rw288.png

ASA的配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
ciscoasa(config)# firewall transparent
ciscoasa(config)# hostname asa
asa(config)#  int  e0/0
asa(config- if )# no sh
asa(config- if )# nameif outside
asa(config- if )# security-level 0
asa(config)#  int  e0/1
asa(config- if )# no sh
asa(config- if )# nameif inside
asa(config- if )# security-level 100
asa(config- if )#  exit
asa(config)# ip add 192.168.1.253 255.255.255.0        //配置管理IP地址


案例2:如下图所示,为了增强托管服务器的安全,增加了一台ASA并配置为透明模式,管理IP地址为209.165.201.1/28

wKiom1nHpc_yUUhqAACPSTnUjks008.png

ASA的配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
ciscoasa(config) # firewall transparent
ciscoasa(config) # hostname asa
asa(config) # int e0/0
asa(config- if ) # no shut
asa(config- if ) # int e0/0.10
asa(config- if ) # vlan 10
asa(config- if ) # nameif inside
asa(config- if ) # int e0/0.20
asa(config- if ) # vlan 20
asa(config- if ) # nameif outside
asa(config) # ip add 209.165.201.1 255.255.255.240
asa(config) # access-list ysf permit icmp any any 
asa(config) # access-list ysf permit tcp any any eq 80
asa(config) # access-list ysf permit tcp any any eq 21
asa(config) # access-list ysf permit tcp any any eq 25
asa(config) # access-list ysf deny ip any any
asa(config) # access-group ysf in interface outside









本文转自 杨书凡 51CTO博客,原文链接:http://blog.51cto.com/yangshufan/1968241,如需转载请自行联系原作者
目录
相关文章
|
3月前
|
监控 安全 Linux
启用Linux防火墙日志记录和分析功能
为iptables启用日志记录对于监控进出流量至关重要
|
3月前
|
SQL
南大通用GBase 8a配置gcware日志等级,减少日志输出,节省磁盘IO
南大通用GBase 8a配置gcware日志等级,减少日志输出,节省磁盘IO
|
3月前
|
存储 Prometheus 监控
Docker容器内进行应用调试与故障排除的方法与技巧,包括使用日志、进入容器检查、利用监控工具及检查配置等,旨在帮助用户有效应对应用部署中的挑战,确保应用稳定运行
本文深入探讨了在Docker容器内进行应用调试与故障排除的方法与技巧,包括使用日志、进入容器检查、利用监控工具及检查配置等,旨在帮助用户有效应对应用部署中的挑战,确保应用稳定运行。
120 5
|
4月前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
1195 31
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
5月前
|
网络协议 Linux Windows
Rsyslog配置不同端口收集不同设备日志
Rsyslog配置不同端口收集不同设备日志
|
5月前
|
开发工具 git
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
70 1
|
5月前
|
数据采集 监控 Java
SpringBoot日志全方位超详细手把手教程,零基础可学习 日志如何配置及SLF4J的使用......
本文是关于SpringBoot日志的详细教程,涵盖日志的定义、用途、SLF4J框架的使用、日志级别、持久化、文件分割及格式配置等内容。
343 0
SpringBoot日志全方位超详细手把手教程,零基础可学习 日志如何配置及SLF4J的使用......
|
7月前
|
Java 应用服务中间件 HSF
Java应用结构规范问题之配置Logback以仅记录错误级别的日志到一个滚动文件中的问题如何解决
Java应用结构规范问题之配置Logback以仅记录错误级别的日志到一个滚动文件中的问题如何解决
|
7月前
|
Java 应用服务中间件 HSF
Java应用结构规范问题之配置Logback以在控制台输出日志的问题如何解决
Java应用结构规范问题之配置Logback以在控制台输出日志的问题如何解决
|
7月前
|
存储 容器
【Azure 事件中心】为应用程序网关(Application Gateway with WAF) 配置诊断日志,发送到事件中心
【Azure 事件中心】为应用程序网关(Application Gateway with WAF) 配置诊断日志,发送到事件中心
105 0

热门文章

最新文章