思科ASA 5505防火墙是通过创建vlan,将端口加入vlan,对vlan的安全等级进行设置的方式创建安全区域,通过ACL对vlan之间的流量进行控制; 0x01 ,搭建实验拓扑如下:实验要求及目的:配置安全区域,安全规则,实现trust区域中的CLIENT可以ping通untrust区域中的SERVER,SERVER也可以ping通CLIENT ;
0x02 步骤,命令首先对asa5505进行配置清空,减少实验干扰:主要用到两条命令:write erase ,reload ciscoasa#write eraseErase configuration in flash memory? [confirm][OK]ciscoasa#reloadProceed with reload? [confirm]。。。。然后就是重新加载过程,直到:INFO: MIGRATION - Saving the startup errors to file 'flash:upgrade_startup_errors_201310031651.log'Pre-configure Firewall now through interactive prompts [yes]:n # 输入N,表示不进行交互操作Type help or '?' for a list of available commands.ciscoasa>查看vlan与端口配置情况:show switch vlan 或者 sh sw vl ciscoasa#show switch vlanVLAN Name Status Ports---- -------------------------------- --------- -------------------------------1 inside up Et0/1, Et0/2, Et0/3, Et0/4 Et0/5, Et0/6, Et0/72 outside down Et0/0可以看到,vlan1默认开启,并且逻辑名称为inside(安全区域的名字,在思科中,一般 inside 表示 trust区域,outside 表示 untrust区域)包含大部分接口,vlan2为 outside,只加入了e0/0口;
接下来,需要将e0/1 和 e0/2接口分别加入两个安全区域,即创建两个vlan,一个vlan 属于trust,另一个属于 untrust,并且通过设置安全级别来区分安全区域:
配置vlan 1 为 inside, 即为trust区域: ciscoasa#conf t //进入全局配置模式ciscoasa(config)#int vlan 1 // 对vlan 1进行配置ciscoasa(config-if)#ip address 1.1.1.254 255.255.255.0 // 设置vlan 1 虚接口的 ip 地址,相当于设置 e0/1 口的 ip 地址ciscoasa(config-if)#security-level 100 // 设置安全区域的安全等级为 100, 安全等级越高,受信任程度越高,即将vlan 1 设置为 trust区域ciscoasa(config-if)#no shutdown // 激活端口ciscoasa(config-if)#配置vlan 2 为 outside, 即为untrust区域: ciscoasa#conf tciscoasa(config)#int vlan 2ciscoasa(config-if)#ip add 2.2.2.254 255.255.255.0 // 设置vlan 1 虚接口的 ip 地址,相当于设置 e0/2 口的 ip 地址ciscoasa(config-if)#security-level 0 // 设置安全区域的安全等级为 0即将vlan 2 设置为 untrust区域ciscoasa(config-if)#no sh // 激活端口ciscoasa(config-if)#将 e0/2 接口加入 vlan 2(相当于将端口加入安全区域): ciscoasa(config)#int vlan 2ciscoasa(config-if)#int e0/2ciscoasa(config-if)#switchport access vlan 2查看vlan,端口情况 以及 查看 vlan , ip对应情况: ciscoasa(config-if)#show switch vlan VLAN Name Status Ports---- -------------------------------- --------- -------------------------------1 inside up Et0/1, Et0/3, Et0/4, Et0/5 Et0/6, Et0/72 outside up Et0/0, Et0/2#######################################################################################ciscoasa(config-if)#show int ip briefInterface IP-Address OK? Method Status Protocol Ethernet0/0 unassigned YES NVRAM down down Ethernet0/1 unassigned YES NVRAM up up Ethernet0/2 unassigned YES NVRAM up up Ethernet0/3 unassigned YES NVRAM down down Ethernet0/4 unassigned YES NVRAM down down Ethernet0/5 unassigned YES NVRAM down down Ethernet0/6 unassigned YES NVRAM down down Ethernet0/7 unassigned YES NVRAM down down Vlan1 1.1.1.254 YES manual up up Vlan2 2.2.2.254 YES manual up up- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
此时,可以在 CLIENT 上ping 1.1.1.254 ,显示可以ping通,则防火墙上的vlan ip 配置生效了,但是ping 2.2.2.2[SERVER]显示目标主机不可达, 因为在防火墙上没有配置安全规则放行流量,[SERVER端也一样]:
理解一些概念:
在思科防火墙中,不同安全级别的接口之间访问时,遵从:允许出站(outbound)连接 [即从高安全等级100到低安全等级0,我可以给你发消息],禁止入站(inbound)连接 [即低安全等级0到高安全等级100,你不能回我消息],并且,禁止相同安全级别的接口之间通信 [如果你的安全等级为100,我也为100,咱俩不能相互发消息]
配置安全策略,放行从untrust 到 trust 区域的icmp响应报文: ciscoasa#conf t //进入全局配置模式ciscoasa(config)#access-list icmp permit icmp host 2.2.2.2 host 1.1.1.1 echo-reply // access-list [创建ACL] icmp[ACL条目名称] permit [执行的动作,允许或拒绝] icmp[协议类型] host[表示指定源主机ip] 2.2.2.2 host[表示指定目的主机ip1.1.1.1] echo-reply[报文类型:icmp响应报文]ciscoasa(config)#access-group icmp in int outside //access-group [将指定ACL应用到接口] icmp[要应用的ACL的名称] in [流量方向:inbound] int outside [应用到outside接口]######################################################################查看ACLciscoasa(config)#show access-listaccess-list cached ACL log flows: total 0, denied 0 (deny-flow-max 4096) alert-interval 300access-list icmp; 1 elements; name hash: 0xd95cd98daccess-list icmp line 1 extended permit icmp host 2.2.2.2 host 1.1.1.1 echo-reply(hitcnt=3) 0xe655907e此时,在CLIENT上ping 2.2.2.2,可以ping通:
从设置SERVER ping通 CLIENT 配置方法同上,注意应用接口,流量方向,源地址,目的地址,协议,即可;
|