ASA 试验(一) 
制作者: 陈 健 
原著作者:陈 健 
CCIE#16811(R&S、Security)
 1  
一、Firewall Overview ..........................................................................................................................  3  
二、防火墙对流量的控制 ......................................................................................................................  3  
三、Basic Initialization..........................................................................................................................  4  
3.1  防火墙功能和许可证.....................................................................................................................  4  
3.2  初始设置(Initial Setup).............................................................................................................  5  
3.3  配置接口参数................................................................................................................................  5  
四、IP Routing......................................................................................................................................  7  
4.1  静态和缺省路由............................................................................................................................  7  
4.2  路由图——routemap...................................................................................................................  8  
4.3  动态路由协议——RIP 和 OSPF....................................................................................................  8  
4.4  实验练习.......................................................................................................................................  9  
五、  ACL ...........................................................................................................................................  12  
5.1  配置 ACL ..................................................................................................................................  12  
5.2    Object Group..............................................................................................................................  12  
5.2  实验练习.....................................................................................................................................  14  
六、NAT .............................................................................................................................................  14  
6.1    OVERVIEW................................................................................................................................  14  
6.2    NATControl................................................................................................................................  16  
6.3    NAT Bypass ...............................................................................................................................  16  
6.4  策略 NAT ..................................................................................................................................  16  
6.5    DNS 和 NAT ...............................................................................................................................  18  
6.5  动态 NAT 和 PAT ........................................................................................................................  19  
6.6  实验练习.....................................................................................................................................  21  
七、AAA.............................................................................................................................................  29  
7.1    AAA OVERVIEW........................................................................................................................  29  
7.2    RADIUS .....................................................................................................................................  29  
7.3    TACACS+...................................................................................................................................  30  
7.4    ASA 上 AAA 的实现....................................................................................................................  31  
7.5  配置 AAA....................................................................................................................................  31  
7.6  配置可下载 ACL .........................................................................................................................  35  
7.7  使用 MAC 地址免除流量的认证和授权........................................................................................  38  
7.8  实验练习.....................................................................................................................................  39 
 2  
一、Firewall Overview 
防火墙技术分为三种:包过滤防火墙、代理服务器和状态包过滤防火墙; 
包过滤防火墙,使用 ACL 控制进入或离开网络的流量,ACL 可以根据匹配包的类型或其他参数(如:源 IP 
地址、目的 IP 地址、端口号等)来制定; 
该类防火墙有以下不足,ACL 制定的维护比较困难;可以使用 IP 欺骗很容易的绕过 ACL; 
代理防火墙,也叫做代理服务器。它在 OSI 的高层检查数据包,然后和制定的规则相比较,如果数据包的内 
容符合规则并且被允许,那么代理服务器就代替源主机向目的地址发送请求,从外部主机收到请求后,再转发给 
被保护的源请求主机。 
代理防火墙的主要缺点就是性能问题,由于代理防火墙会对每个经过它的包都会深度检查,即使这个包以前 
检查过,所以说对系统和网络的性能都有很大的影响。 
状态包过滤防火墙,Cisco ASA 就是使用状态包过滤的防火墙,该防火墙会维护每个会话的状态信息,这些 
状态信息写在状态表里,状态表的条目有:源地址、目的地址、端口号、TCP 序列号信息以及每个 TCP 或 UDP 
的额外的标签信息。所有进入或外出的流量都会和状态表中的连接状态进行比较,只有状态表中的条目匹配的时 
候才允许流量通过。 
防火墙收到一个流量后,首先查看是否已经存在于连接表中,如果没有存在,则看这个连接是否符合安全策 
略,如果符合,则处理后将该连接写入状态表;如果不符合安全策略,那么就将包丢弃。 
状态表,也叫 Fast Path,防火墙只处理第一个包,后续的属于该连接的包都会直接按照 Fast Path 转发,因此 
性能就有很高的提升。 
二、防火墙对流量的控制 
首先我们看一下 TCP 的三次握手中间插入防火墙后的情况: 
l  源主机发送一个含有 SYN 标记的初始数据包,ASA 收到后,先查路由表,看是否能够到达目的地。然 
后根据转换规则将源地址转换为 outside 的地址_192.168.1.10。如果转换完成,那么 ASA 就会为该连接 
创建一个转换槽。 
l  所有的会话信息都会被写入状态表中,并且 ASA 会随机产生一个 TCP 序列号,此时该连接的状态显示 
的是初始(halfopen)状态。 
l  在防火墙将该连接和安全策略匹配后,决定是否进一步处理。如果符合安全策略,则  ASA  就使用转换
 3  
后的地址和新的随即序列号改写数据包,然后转发。 
l  目的地收到 SYN 连接请求后,就发送一个 SYN ACK 作为响应。 
l  ASA 验证 SYN ACK 包,将 ACK 号和随机产生的序列号做比较,同时也会验证连接槽中的连接信息, 
然后将目的地址转换为原来的地址,将序列号转换为原来的序列号,并加 1,然后发送出去。 
l  任何没有严格匹配的数据包都会被丢弃 
l  源收到响应后,通过发送一个 ACK 来完成连接的建立。(注意,ACK 号不会在穿过防火墙的时候做随 
机修改),然后防火墙的状态表标识连接为 activeestablished。 
然而,ASA 处理 UDP 连接和处理 TCP 连接却截然不一样: 
1.  源初始化一个 UDP 连接,ASA 收到后根据路由表做相应的转换后,在状态表中生成状态信息,然 
后转发出去。 
2.  返回的流量会和连接信息进行比较,匹配的话就允许返回流量进入,然后重置超时计时器。在计时 
器超时之前,符合该连接的流量都可以被转发。 
3.  任何从低安全级别到高安全级别的流量都必须匹配一个安全策略,否则连接将被丢弃。 
最后注意,ASA 的所有安全策略都是应用到状态连接中,因此要首先生成一个连接表,然后才会比较安全策 
略等内容。 
三、Basic Initialization 
3.1  防火墙功能和许可证 
防火墙出厂的时候自带有一些基本的功能,如果需要增加一些额外的功能,那么就需要购买许可证(license) 
激活 key。可以使用 show vsersion 命令查看目前防火墙所拥有的功能的列表: 
Firewall# show version 
…… 
License Features for this Platform: 
Maximum Physical Interfaces : 10 
Maximum VLANs               : 100 
Inside Hosts                : Unlimited 
Failover                    : Active/Active 
VPN-DES                     : Enabled 
VPN-3DES-AES                : Enabled 
Cut-through Proxy           : Enabled 
Guards                      : Enabled 
URL-filtering               : Enabled 
Security Contexts           : 5 
GTP/GPRS                    : Enabled 
VPN Peers                   : Unlimited 
This machine has an Unrestricted (UR) license. 
…… 
从上图中可以看出,该防火墙运行的许可证类型为无限制版。 
防火墙的许可证类型有: 
  Unrestricted  (UR)——无限制的许可证使得该防火墙所能支持的所有特性全部打开,比如:无限制的 
活动连接数、打开防火墙支持的所有的接口、支持 Failover 等; 
  Restricted  (R)——限制版,限制防火墙开启的特性,比如限制活动连接数、使防火墙不支持 Failover、 
限制防火墙支持的最大接口数等;
 4  
  Failover  (FO)——该版本使得防火墙可以作为 Secondary 设备参与 Failover; 
  FailoverActive/Active  (FOAA)——该版本使得防火墙可以作为  Secondary  设备参与  active/active 
Failover,同时,还要求另一个防火墙使用 UR 版; 
3.2  初始设置(Initial Setup) 
当防火墙没有任何配置启动的时候,会提供一个配置菜单,通过初始配置菜单可以让你配置一些基本的防火 
墙参数: 
Pre-configure Firewall now through interactive prompts [yes]? Yes——输入 NO 直接进入 ASA; 
Firewall Mode [Routed]:  //直接回车 
Enable password [
流量也可以通过 ACL 来控制; 
安全级别控制着以下的行为: 
  审查引擎——一些审查引擎依赖于安全级别。对于相同安全级别的接口,审查引擎作用在两个方向上的 
流量上; 
  Filter——Filter  HTTP(S)和 Filter  FTP 只应用在外出的连接上,即从高优先级接口到低优先级接口; 
对于相同安全级别的接口,可以在双向上 filter 流量; 
  NAT Control——当你启用 NAT control 时, 高安全级别的主机访问低安全级别的主机时, 必须执行 NAT; 
2,默认情况下,相同安全级别接口之间不允许通信,可以使用命令: 
hostname(config)#samesecuritytraffic permit interinterface 
允许相同安全级别接口之间互相通信; 
3,对于防火墙的任何接口,都必须配置以下内容: 
  Name 
 
  Security Level 
IP address 
如果将一个接口的 Name 指定为 inside,那么系统自动为该接口指定一个 100 的安全级别;所有接口的默认 
安全级别都是 0,可以通过 securitylevel 改变接口的安全级别。 
接口 IP 地址的获得有两种方式,手工指定和 DHCP; 
hostname (configif) #ip address dhcp [setroute] 
关键字 setroute 用于指示 ASA 使用 DHCP 服务器分配的默认网关作为默认路由。 
4,管理接口(management interface) 
ASA 有一个内置的 Management0/0 接口, 该接口只接收和管理相关的流量, 管理接口丢弃所有穿过它的流量, 
只接收目的地址是 ASA 的流量。另外,任何一个普通接口都可以通过命令 managementonly 配置为专用的管理接 
口. 
5,子接口 
你可以将一个物理接口划分成多个逻辑接口,每个逻辑接口上都分配不同的  VLAN  标签,子接口之间根据 
VLAN ID 区分流量,此时物理接口就是一个 trunk 链路,它具有以下属性: 
l  ASA 的 trunk 链路只支持 802.1Q 的帧封装方法; 
l  802.1Q 支持一个本地 VLAN,所有没有标签的流量都传输到本地 VLAN 中; 
l  防火墙不会使用 DTP 来协商 trunk 的封装或其他参数;trunk 要某是 on,要某是 off; 
配置子接口: 
hostname(config)#interface physical_interface.subinterface 
hotname(configif)#vlan vlan_id 
eg:hostname(config)#interface e0.1 
hostname(configif)#vlan 20 
最后注意,要想使逻辑接口转发流量,必须要 no shut 物理接口。 
6,DHCP 服务 
ASA 的 DHCP 服务是基于接口的,也就是说,ASA 可以在一个接口上将其设置为 DHCP  Server,同时还可 
以在另外一个接口上将其设置为 DHCP Client;ASA 将接口设置为 Server 时,每个接口都有自己的地址池,但是 
其它的 DHCP 设置,比如 DNS、域名、ping timeout 等参数要在全局下配置,并且会应用到所有启用 DHCP Server 
的接口上。使用 dhcpd 命令来启用 DHCP 的各项功能: 
PIX(config)# dhcpd ? 
configure mode commands/options: 
address       Configure the IP pool address range after this keyword 
auto_config   Enable auto configuration from client 
dns           Configure the IP addresses of the DNS servers after this keyword 
domain        Configure DNS domain name after this keyword
 6  
enable        Enable the DHCP server 
lease         Configure the DHCPD lease length after this keyword 
option        Configure options to pass to DHCP clients after this keyword 
ping_timeout  Configure ping timeout value after this keyword 
wins          Configure the IP addresses of the NETBIOS servers after this keyword 
配置 DHCP 服务: 
1.启用 DHCP 服务器 
Pix(config)#dhcpd enable interface 
eg:Pix(config)#dhcpd enable inside 
2.定义 DHCP 地址池 
Pix(config)#dhcpd address start addressend address interface 
eg:pix(config)#dhcpd address 192.168.10.100192.168.10.200 inside 
3.设置 WINS,DNS 和 domainname 选项 
eg:pix(config)#dhcpd dns 192.168.10.50 192.168.10.51 
pix(config)#dhcpd wins 192.168.10.51 192.168.10.50 
pix(config)#dhcpd domain cisco.com 
4.指定 DHCP 的超时值(可选) 
在 DHCP 服务器分配一个地址之前,会先 ping 这个地址,默认情况下等待 50 微秒,如果在 50 微秒内收到 
了响应,那么服务器就认为该地址已经分配出去了;如果没有收到响应,那么就认为该地址可以分配出去。Ping 
的等待超时值可以通过命令改变: 
eg:Pix(config)#dhcpd ping_timeout 20 
5.配置 DHCP autoconfiguration  (可选) 
ASA 可以同时做客户端和服务器。比如一个接口配置为客户端,一个接口配置为 Server;ASA 可以从 DHCP 
服务器端收到分配的参数的同时,也将一些参数转发给它的 Client,比如 WINS,DNS 以及域名等信息: 
eg:pix(config)#dhcpd auto_config outside 
6.定义一个缺省网关 
为 Client 定义一个缺省网关,输入下面的命令: 
Hostname(config)#dhcpd option 3 ip gateway_ip 
对于透明模式的防火墙,如果不使用 DHCP option 3  来定义一个缺省网关的话,那么 DHCP 客户端使用管理 
接口的地址作为缺省网关,而管理接口不会转发流量;使用该命令,让 DHCP Client 使用该命令定义的网关; 
四、IP Routing 
4.1  静态和缺省路由 
多虚拟防火墙不支持动态路由协议,因此就必须配置静态或缺省路由到达非直连的网络,另外,在单防火墙
 7  
模式下,也可以考虑使用静态路由,例如: 
1.  由于 ASA 只支持 RIP 和 OSPF,因此如果你网络运行的是其他的路由协议,那么就要使用静态路由 
2.  使用静态路由可以节省 CPU 的负载 
ASA 在相同的接口上,最多支持 3 条等价静态/缺省路由实现负载均衡。 
配置静态路由: 
hostname(config)#route if_name dest_ip mask gateway_ip [distance] 
eg:hostname(config)#route inside 10.1.1.0 255.255.255.0 10.1.2.45 1 
当  Gateway  不可用的时候,静态路由不会自动从路由表中移除,需要手工移除;但是当和网关相连的  ASA 
的接口 down 的时候,静态路由自动从路由表中移除,当接口 UP 的时候,又会自动的加入到路由表中; 
配置缺省路由 
当设备在路由表中找不到去往目的网段的路由的时候,那么就会将这些流量发送给配置的缺省路由。 
你也可以使用 Tunneled 关键字为隧道流量配置单独的缺省路由,所有到达防火墙的加密流量, 如果在路由表 
中找不到下一跳的时候,那么就使用该缺省路由;如果流量没有被加密,那么使用正常的缺省路由,隧道缺省路 
由只能定义一条。 
hostname(config)#route if_name 0.0.0.0 0.0.0.0 gateway_ip [distance | tunneled] 
0.0.0.0 0.0.0.0 可以简写为 0 0 
eg:hostname(config)#route inside 0 0 10.1.1.1 
4.2  路由图——routemap 
当重分发路由到 OSPF 或 RIP 进程的时候,routemap 用于指定哪些路由可以被重分发到目标路由进程,路 
由图的执行是按照顺序执行的。 
4.3  动态路由协议——RIP 和 OSPF 
在 ASA 上配置 RIP 和 OSPF 与在路由器上配置方法相同,并且对最佳路径的选择也是先掩码,再管理距离, 
最后是度量值;你可以使用 show route 查看路由表。
 8