思科防火墙ASA配置案例
拓扑图
要求:通过思科防火墙ASA使用内网用户可以访问外网与DMZ中的服务器,DMZ中的服务器可以发布到网络中,供外网用户访问
一.思科模拟防火墙的使用
因为我们没有真实的设备,所以我们使用一个使用linux内核的虚拟系统来模拟思科的防火墙,模拟防火墙可以自己下载,在使用时我们还要使用一个软件来连接这个模拟防火墙:nptp.ext。
首先,我们打开ASA防火墙虚拟机,再安装nptp.exe软件
打开nptp,点击”Edit”新建一个连接,参数可如下
使用连接工具进行连接
连接成功
二.IP地址配置
外网IP配置
ciscoasa> enable
Password:
ciscoasa# conf t
ciscoasa(config)# int eth0/0
ciscoasa(config-if)# ip add 192.168.101.150 255.255.255.0 //外网ip
ciscoasa(config-if)# no shut
ciscoasa(config-if)# nameif outside //外网名,一定要配置
内网IP配置
ciscoasa(config-if)# int eth0/1
ciscoasa(config-if)# ip add 192.168.1.1 255.255.255.0
ciscoasa(config-if)# no shut
ciscoasa(config-if)# nameif inside
DMZ IP配置
ciscoasa(config-if)# int eth0/2
ciscoasa(config-if)# ip add 192.168.2.1 255.255.255.0
ciscoasa(config-if)# no shut
ciscoasa(config-if)# nameif dmz
查看路由
ciscoasa(config-if)# show route
C 192.168.1.0 255.255.255.0 is directly connected, inside
C 192.168.2.0 255.255.255.0 is directly connected, dmz
C 192.168.101.0 255.255.255.0 is directly connected, outside
注:在ASA防火墙中一定要配置nameif名字,如果不配置的话,这个端口就不能启动,在配置名字的时候,不同的名字可以有不同的优先级,内网inside是一个系统自带的值,只可配置在内网的端口上,并且它的优先级是100,属于最高的级别,而另外的一些优先级都是0,在优先级高的区域访问优先级低的区域的时候,可以直接做snat就可以通信,而优先级低的访问优先级低的区域的时候,做dnat的同时,还要做访问控制列表。
三.内网访问外网
ciscoasa(config-if)# exit
ciscoasa(config)# global (outside) 1 interface //指定snat使用的外网接口为nameif为outside的端口
ciscoasa(config)# nat (inside) 1 192.168.1.0 255.255.255.0 /指定内网的网段
测试
我们使用的192.168.101.0做为外网的网段,但是在测试的时候,不能使用ping命令测试,因为在默认情况下防火墙是把ping作为一种***手段给拒绝掉的。我现在在192.168.101.105上做了一个RDP服务器,可以进行测试
可以测试成功
四.内网访问DMZ服务器
基于前面的设置,我们只需要再做一条指令指明dmz区域即可
ciscoasa(config)# global (dmz) 1 interface
测试一下访问DMZ中的www服务器
五.DMZ中服务器发布
RDP服务器发布
ciscoasa(config)# int eth0/2
ciscoasa(config-if)# security-level 50 //修改DMZ区域的优先级大于outside区域
ciscoasa(config)# static (dmz,outside) tcp interface 3389 192.168.2.2 3389 //创建dmz与outside的dnat RDP服务
ciscoasa(config)# access-list 100 permit tcp any host 192.168.101.150 eq 3389 //创建访问控制列表,允许外网访问outside端口
ciscoasa(config)# access-group 100 in interface outside //在outside端口上应用访问控制列表
测试
www服务器发布
ciscoasa(config)# static (dmz,outside) tcp interface www 192.168.2.2 www
ciscoasa(config)# access-list 100 permit tcp any host 192.168.101.150 eq 80
ciscoasa(config)# access-group 100 in interface outside
测试