Cisco ASA 分为软件防火墙和硬件防火墙。
其中,硬件防火墙比软件防火墙更有优势:
1)、硬件防火墙功能强大,且明确是为抵御威胁而设计的。
2)、硬件防火墙比软件防火墙的漏洞少。
Cisco 硬件防火墙技术应用于以下三个领域:
1)、PIX 500 系列安全设备
2)、ASA 5500 系列自适应安全设备
3)、Catalyst 6500 系列交换机和 Cisco 7600 系列路由器的防火墙服务模块
Cisco ASA 5500 系列自适应安全提供了整合防火墙、***保护系统(IPS)、高级自适应威胁防御服务,其中包括应用安全和简化网络安全解决方案的V P N服务。
目前Cisco ASA 5500 系列有六种型号 如下图示:
Cisco ASA(防火墙)基本配置
ASA首先是一个状态化防火墙,用于维护一个关于用户信息的连接表,称之为conn表:
Cisco ASA(防火墙)基本配置
conn表中含有如下信息:
1)、源IP地址
2)、目的IP地址
3)、IP协议(如TCP 和 UDP)
4)、IP协议信息(如 tcp/udp端口号、TCP序列号、TCP控制位)
默认情况下,ASA对TCP和UDP协议提供的是状态化连接,但ICMP协议是非状态化的。
下图为状态化防火墙进行状态化处理的过程:
Cisco ASA(防火墙)基本配置
1)、PC发起一个HTTP请求给web服务器
2)、HTTP请求到达防火墙,防火墙将连接信息(如源IP地址和目的IP地址、使用的TCP协议、源IP地址和目的IP地址的TCP端口号)添加到conn表
3)、防火墙将HTTP请求转发给web服务器
流量返回时,状态化防火墙的处理过程为:
1)、web服务器响应HTTP请求,返回相应的数据流量
2)、防火墙拦截该流量,检查其连接信息
注意:

  • 如果在conn表中查找到匹配的连接信息,则流量被允许
  • 如果在conn表中找不到匹配的连接信息,则流量被丢弃
    ASA使用安全算法执行以下三种基本操作:
    1)、访问控制列表:基于特定的网络、主机和服务(TCP/UDP端口号)控制网络访问
    2)、连接表:维护每个连接的状态信息。安全算法使用此信息在已建立的连接中有效转发流量。
    3)、检测引擎:执行状态检测和应用层检测。检测规则集是预先定义的,来验证应用是否遵从每个RFC和其他标准
    数据报文穿越ASA的过程:
    Cisco ASA(防火墙)基本配置
    1)、一个新来的TCP SYN报文到达ASA,试图建立一个新的连接
    2)、ASA检查访问控制列表,确定是否允许连接
    3)、ASA执行路由查询,如果路由正确,ASA使用必要的会话信息在连接表(XLATE和CONN)中创建一个新条目
    4)、ASA在检测引擎中检查预定义的一套规则,如果是已知应用,则进一步执行应用层检测
    5)、ASA根据检测引擎确定是否转发或丢弃报文,如果允许转发,则将报文转发到目的主机
    6)、目的主机相响应该报文
    7)、ASA接收返回报文并进行检测,在连接数据库中查询连接,确定会话信息与现有连接是否匹配
    8)、ASA转发属于已建立的现有会话的报文
    ASA的应用层检测通过检查报文的IP包头和有效载荷的内容,对应用层协议流量执行深层检测,检查应用层协议是否遵守RFC标准,从而检查出应用层数据中的恶意行为。
    ASA的一个接口通常有两种名称:
    1)、物理名称:与路由器接口的名称类似,如Ethernet0/0可以简写成E0/0,通常用来配置接口的速率、双工和IP地址等。
    2)、逻辑名称:用于大多数的配置命令,如配置ACL、路由器等使用的命令中都用到逻辑名称。逻辑名称用来描述安全区域,如通常用inside表示ASA连接的内部区域(安全级别高),用outside表示ASA连接的外部区域(安全级别低)。
    接口的安全级别:
    每个接口都有一个安全级别,范围是0~100,数值越大,安全级别越高。一般配置接口为inside(内网接口)时,将其安全级别设置为100,为outside(外网接口)时,将其安全级别设置为0,为DMZ(隔离区)时,安全级别介于inside和outside之间即可。
    不同安全级别的接口之间相互访问时,遵从以下默认规则:
    允许出站连接:就是允许从高安全级别接口到低安全级别的流量通过。比如说从inside访问outside是允许的。
    禁止入站连接:就是禁止从低安全级别接口到高安全级别接口的流量通过。比如说从outside访问inside是禁止的。
    禁止相同安全级别的接口之间通信。
    配置接口:
    asa(config)#int e 0/0
    asa(config-if)#nameif name 定义接口的名称
    asa(config-if)#nameif inside
    asa(config-if)#security-level number 配置接口的安全级别
    number的范围是(0~100)
    asa# show conn datail 查看conn表
    在ASA上配置ACL有两个作用,一是允许入站连接,二是控制出站连接的流量。
    ASA的默认规则是禁止入站连接,如果要入站连接,就需要配置ACL
    例如:
    asa(config)# access-list qwe permit ip host 192.168.1.1 host 10.0.0.1
    asa(config)#access-group qwe in int outside
    上述第一条命令就是使主机192.168.1.1能够访问主机10.0.0.1 ACL名称为qwe ,第二条命令为将qwe这个ACL应用到outside接口上
    控制出站连接配置:
    asa(config)#access-list qwe deny ip 10.0.0.0 255.255.255.0 any
    asa(config)#access-list qwe permit ip any any
    asa(config)#access-group qwe in int inside
    第一条命令为拒绝10.0.0.0网段访问其他所有网段
    第二条命令为允许其他所有网段之间可以进行访问
    第三条命令为将qwe这个ACL应用到inside接口上
    ASA防火墙也是具有路由功能的,在其上也一样可以配置路由
    静态路由配置如下:
    asa(config)#router 接口名称 目标网段 子网掩码 下一跳地址
    asa(config)#router outside 192.168.1.0 255.255.255.0 10.0.0.2
    asa(config)#show router 查看路由表
    默认情况下,ASA是禁止ICMP协议在其上穿越的。所以需要在ASA上配置ACL:
    asa(config)#access-list 111 permit icmp any any 允许所有网段可以ping通
    asa(config)#access-group 111 in int outside ACL应用接口
    以下两条命令可以保存running configuration 配置到 startup configuration中
    asa# write memory
    asa#copy running-config startup-config
    清除running configuration 的所有配置:
    asa(config)#clear configure all
    删除 startup-config 配置文件
    asa#write erase
    清除所有的 access-list 命令的配置:
    asa(config)#clear configure access-list
    DMZ称为隔离区,也称为非军事化区,是位于企业内部网络和外部网络之间的一个网络区域。在这个网络区域中可以存放一些必须公开的服务器,如web、ftp和论坛等
    Cisco ASA(防火墙)基本配置
    DMZ中放置一些不含机密信息的共用服务器,这样来自外网的访问者也可以访问DMZ中的服务,但不能访问内网的公司机密信息。即使DMZ中的服务器收到攻 击,也不会对内网的机密信息造成影响,所以,可以通过DMZ区域有效的保护内部网络。
    当存在DMZ区域时,默认的访问规则如下:
    Cisco ASA(防火墙)基本配置
    1)、inside可以访问DMZ和outside;
    2)、DMZ可以访问outside但不允许访问inside;
    3)、outside不能访问DMZ和inside,不过通常会配置ACL,让outside可以访问DMZ,若不然,DMZ就没有存在的意义了。