04 防火墙常见的NAT技术
在网络安全的巨浪中,NAT(Network Address Translation,网络地址转换)技术如一道巧妙的幕后英雄,通过修改数据包的地址信息,为网络提供了额外的安全隐匿层。这种技术允许多个内部设备共享同一个公共IP地址,有效遏制了潜在威胁,同时为网络布局提供了更灵活的可能性。在防火墙的舞台上,NAT技术犹如一把神奇的变形剑,为网络安全策略增色添彩,实现了内外网络间的巧妙互动。
今天继续接着上一节的内容完成今天的内容,今天主要讲解防火墙上常见的NAT技术。

实验需求
- 配置NAPT实现PC1访问外网,NAPT的地址池为(155.1.121.11-155.1.121.20)
- 配置EASY-IP实现PC1访问外网
- 配置NAT-Server实现Client1访问Server1的HTTP与FTP服务,NAT Server映射地址为155.1.121.10
- 配置目的NAT实现PC1使用公网地址155.1.121.10访问DMZ服务器。
配置步骤
- 配置NAPT实现PC1访问外网。
bash
#创建NAPT地址池
nat address-group NAT_POOL 0
mode pat
section 0 155.1.121.11 155.1.121.20
#创建NAT策略
rule name NAPT
source-zone trust
destination-zone untrust
source-address 10.1.12.0 mask 255.255.255.0
action source-nat address-group NAT_POOL
# 放通安全策略
rule name trust->untrust
source-zone trust
destination-zone untrust
source-address 10.1.12.0 mask 255.255.255.0
action permit验证测试发现不同,如下图,其中155.1.1.1是R1路由器上的LoopBack0口

原因
原因是由于数据是从防火墙的Dialer送出去,回包的时候通过查看路由器的路由表项,发现回包是重GE0/0/0回包。 

通过在R1路由上添加一条静态路由来规避这个问题。
bash
ip route-static 155.1.121.0 27 Virtual-Template 1添加完路由后,在测试就通了。 
- 配置EASY-IP实现PC1访问外网
注意
- 先把之前在R1添加的静态路由干掉.
- 把原先的NAT策略名为NAPT的干掉
重新采用easy-ip模式,关键配置如下:
bash
rule name easy_nat
source-zone trust
destination-zone untrust
source-address 10.1.12.0 mask 255.255.255.0
action source-nat easy-ip通过在PC1测试,发现能正常访问外网。 
- 配置NAT-Server实现Client1访问Server1的HTTP与FTP服务
bash
nat server 0 protocol tcp global 155.1.121.10 www inside 10.0.0.10 www no-reverse unr-route
nat server 1 protocol tcp global 155.1.121.10 ftp inside 10.0.0.10 ftp no-reverse unr-route提示
- unr-route 表示用户防环路。

- no-reverse 表示单向。

还需要放通安全策略,关键配置如下:
bash
rule name untrust->dmz
source-zone untrust
destination-zone dmz
destination-address 10.0.0.10 mask 255.255.255.255
service protocol tcp destination-port 21
service protocol tcp destination-port 80
action permit测试发现web和FTP都访问不了,如下图: 

注意
这里存在两个坑:
- 路由隐藏问题,通过在R1查看路由表发现,去往155.1.121.10的路由,没有走到需接口上,如下图:

所以,解决这个问题,只需要在R1上加一条精细的路由,如下:
bash
ip route-static 155.1.121.10 32 Virtual-Template1这样再去测试web就能通了,如下图:

- 还有一个是在之前的实验中,我们全局undo 了ASPF功能。所以外网访问不了内网的DMZ区域的FTP。需要添加如下的配置:
bash
firewall interzone dmz untrust
detect ftp这样再去测试FTP就能访问了,如下图: 
- 配置目的NAT实现PC1使用公网地址155.1.121.10访问DMZ服务器。
这是目的NAT的一个应用场景,关键配置如下:
bash
rule name D_NAT
source-zone trust
source-address 10.1.12.0 mask 255.255.255.0
destination-address 155.1.121.10 mask 255.255.255.255
action destination-nat static address-to-address address 10.0.0.10trust->DMZ的安全策略在第二章时已经设置好了,详细请查看02 防火墙安全区域与安全策略。完成配置后,进行测试如下图:

通过在防火墙上查看会话表项,可以清晰的看到转换的记录,如下图:
