思科ASA对象组NAT
ACL对象组NAT配置
ciscoasa#conf t
ciscoasa(config)#hostname ASA
ASA(config)#domain-name asa.com
ASA(config)#enable password class
ASA(config)#int vlan 1
ASA(config-if)#nameif inside
ASA(config-if)#security-level 100
ASA(config-if)#ip add 192.168.1.1 255.255.255.0
ASA(config-if)#exit
ASA(config)#int vlan 2
ASA(config-if)#nameif outside
ASA(config-if)#security-level 0
ASA(config-if)#no ip address dhcp //删除默认 DHCP 设置
ASA(config-if)#ip add 200.200.200.2 255.255.255.248
ASA(config-if)#exit
ASA(config)#int vlan 3
ASA(config-if)#ip address 172.16.1.1 255.255.255.0
ASA(config-if)#no forward interface vlan 1 //由于服务器不需要发起与内部用户的通信,因此禁用向接口 VLAN 1 执行的转发。
ASA(config-if)#nameif dmz
ASA(config-if)#security-level 50
ASA(config-if)#exit
ASA(config)#int e0/1
ASA(config-if)#switchport access vlan 1
ASA(config-if)#int e0/0
ASA(config-if)#swi acc vlan 2
ASA(config-if)#int e0/2
ASA(config-if)#swi acc vlan 3
ASA(config-if)#exit
ASA(config)#route outside 0.0.0.0 0.0.0.0 200.200.200.1
ASA(config)#object network in-net //配置地址转换使用 PAT 和网络对象in-net
ASA(config-network-object)#subnet 192.168.1.0 255.255.255.0
ASA(config-network-object)#nat (inside,outside) dynamic interface
ASA(config-network-object)#end
ASA#sh run // ASA 将配置拆分为定义要转换的网络的对象部分和实际的 nat 命令参数。它们出现在运行配置中的两个不同位置
object network in-net
subnet 192.168.1.0 255.255.255.0
!
route outside 0.0.0.0 0.0.0.0 200.200.200.1 1
!
!
object network in-net
nat (inside,outside) dynamic interface
pc0 ping 200.200.200.1 不通,是因为防火墙不允许低安全区域传向高安全区域的流量。
修改 ASA 上的思科模块化策略框架 (MPF):
ASA(config)#class-map inspection_default //创建名为inspection_default的类映射,抓取默认检查流量
ASA(config-cmap)#match ?
mode commands/options:
access-list Access List name
any Match any packets
default-inspection-traffic Match default inspection traffic:
ctiqbe----tcp--2748 dns-------udp--53
ftp-------tcp--21 gtp-------udp--2123,3386
h323-h225-tcp--1720 h323-ras--udp--1718-1719
http------tcp--80 icmp------icmp
ils-------tcp--389 ip-options-----rsvp
mgcp------udp--2427,2727 netbios---udp--137-138
radius-acct----udp--1646 rpc-------udp--111
rsh-------tcp--514 rtsp------tcp--554
sip-------tcp--5060 sip-------udp--5060
skinny----tcp--2000 smtp------tcp--25
sqlnet----tcp--1521 tftp------udp--69
waas------tcp--1-65535 xdmcp-----udp--177
ASA(config-cmap)#match default-inspection-traffic
ASA(config-cmap)#exit
ASA(config)#policy-map global_policy //创建策略映射global_policy
ASA(config-pmap)#class inspection_default //使用类映射
ASA(config-pmap-c)#inspect icmp //检查icmp(即允许内部ping出去的数据包的返回包)
ASA(config-pmap-c)#exit
ASA(config)#service-policy global_policy global //服务策略,在全部端口应用策略映射。
pc0 ping 200.200.200.1 通
ASA(config)#show xlate //显示nat
ASA(config)#object network dmz-server //使用网络对象配置 DMZ 服务器的静态 NAT
ASA(config-network-object)#host 172.16.1.100
ASA(config-network-object)#nat (dmz,outside) static 200.200.200.3
ASA(config-network-object)#exit
配置一个命名访问列表 OUTSIDE-DMZ,以允许端口 80 上任何外部主机到 DMZ 服务器内部 IP 地址的 IP 协议。将访问列表应用于 “IN”(入站)方向的 ASA 外部接口。
ASA#conf t
ASA(config)#access-list OUTSIDE-DMZ permit icmp any host 172.16.1.100
ASA(config)#access-list OUTSIDE-DMZ permit tcp any host 172.16.1.100 eq 80
ASA(config)#access-group OUTSIDE-DMZ in interface outside