ASA 试验(一)
制作者: 陈 健
原著作者:陈 健
CCIE#16811(R&S、Security)
1
更多资源请关注鸿鹄论坛:http://bbs.hh010.com
一、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
更多资源请关注鸿鹄论坛:http://bbs.hh010.com
一、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
更多资源请关注鸿鹄论坛:http://bbs.hh010.com
后的地址和新的随即序列号改写数据包,然后转发。
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
更多资源请关注鸿鹄论坛:http://bbs.hh010.com
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
更多资源请关注鸿鹄论坛:http://bbs.hh010.com
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
更多资源请关注鸿鹄论坛:http://bbs.hh010.com
模式下,也可以考虑使用静态路由,例如:
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
更多资源请关注鸿鹄论坛:http://bbs.hh010.com