美文网首页
安全HCIE防火墙精品实验之源NAT基础篇(三)

安全HCIE防火墙精品实验之源NAT基础篇(三)

作者: 誉天education | 来源:发表于2020-09-09 16:58 被阅读0次

NAT Server主要用于公网用户访问私网内部服务器, 可以提供一对一的地址转换,通过将公网IP与私网服务器IP一对一映射,也可以提供端口转换。

一、实验拓扑

图-1

实验拓扑图-1要求实现Untrust HTTP Client访问Trust区域HTTP Server,在FW1部署NAT Server实现。

1.1 基本配置

表1是拓扑中接口、IP地址、安全区域规划:

1.2 实验步骤

步骤1、在FW1上将各接口划入相应安全区域

system-view //进入system-view

Enter system view, return user view with Ctrl+Z.

[FW1]firewall zone trust

[FW1-zone-trust]add interface GigabitEthernet 1/0/1//将FW1的内网接口G1/0/1划入Trust区域

[FW1-zone-trust]quit

[FW1]firewall zone untrust  

[FW1-zone-untrust]add interface GigabitEthernet 1/0/2 //将FW1的外网接口G1/0/2划入Utrust区域

[FW1-zone-untrust]quit

步骤2、在FW1上定义NAT Server

[FW1]nat server protocol tcp global  202.100.1.1 8080  inside 172.16.1.1 80   

 //将内网HTTP Server的私网IP映射到公网IP、将HTTP知名端口80映射成8080端口

步骤3、在FW1配置安全策略

[FW1]security-policy

[FW1-policy-security]rule name A

[FW1-policy-security-rule-A]source-address 100.1.1.1 32

[FW1-policy-security-rule-A]destination -address 172.16.1.1 32  //匹配NAT Server转换后的私网IP地址,外网Client访问内网Server的报文流首先会被Server-map表处理,下文看实验分析

[FW1-policy-security-rule-A]source-zone untrust

[FW1-policy-security-rule-A]destination-zone trust

[FW1-policy-security-rule-A]service http//允许HTTP业务通过

[FW1-policy-security-rule-A]action permit

步骤4、在FW1、R1与R2上配置路由

[FW1]ip route-static 0.0.0.0 0.0.0.0 202.100.1.2  //在FW1配置默认路由指向公网下一跳

[R1]ip route-static 0.0.0.0 0.0.0.0 10.1.11.2 //在R1配置默认路由指向FW1边界

[FW1]ip route-static 172.16.1.0 255.255.255.0 10.1.11.1   //在FW1配置去往私网主机的路由

二、实验分析

A、NAT Server会生成Server-map表项,这个表项记录着公网IP、端口与私网HTTP Server私网IP、端口的映射: 

图-2

B、公网HTTP Client访问私网HTTP Server,注意访问的是NAT Server映射的公网IP、端口:

图-2-2

我们去分析一下转发流程,HTTP Client 源IP 100.1.1.1去往HTTP Server 目的IP 202.100.1.1:8080的TCP报文流抵达FW1,第一步FW1首先查询NAT Server生成的Server-map表项,基于正向条目ANY -> 202.100.1.1:8080 [172.16.1.1:80]将公网目的IP、端口映射成私网HTTP Server的IP 172.16.1.1、端口80,其实NAT Server就是把私网服务器的IP、端口以公网IP、端口方式放在外网,外网主机只要访问这个公网IP、端口,相当于就是访问内网服务器。第二步需要通过安全策略检查,基于源IP 100.1.1.1查路由表判断源zone是Untrsut,基于目的IP 172.16.1.1查询路由表判断目的zone是Trust,安全策略检查之后,FW1创建会话:

图-3

后续私网HTTP Server的响应报文源IP 172.16.1.1:80 -> 100.1.1.1命中FW1会话表项将172.16.1.1:80映射回202.100.1.1:8080转发。了解NAT Server正向条目之后,我们发现还有一条反向条目172.16.1.1[202.100.1.1] -> ANY,它的作用用于私网HTTP Server主动公网主机,当HTTP Server源IP 172.16.1.1访问公网主机,源IP会通过反向条目转换为公网IP 202.100.1.1,无需在FW1配置源NAT,只要安全策略放通即可。注意NAT Server生成的Server-map表项是没有老化时间的,当NAT Server配置被删掉,Server-map表也就老化了。

三、NAT Server场景的环路

图-1

图1和上文NAT Server没什么太大区别,只是FW1 NAT Server定义的Global地址是202.100.1.100与G1/0/2公网接口不在一个网段,配置与上文一样,做以下修改:

[FW1]nat server protocol tcp global  202.100.1.100 8080  inside 172.16.1.1 80   

 //将内网HTTP Server的私网IP映射到公网IP、将HTTP知名端口80映射成8080端口

图-2

[R2]ip route-static 202.100.1.100 32 202.100.1.2

//在R2配置到达FW1上NAT Server中Global公网IP的路由

图2通过NAT Server生成的Server-map表项是为TCP协议生成的,只有符合特征的TCP报文流命中此表项才会执行转换。HTTP Client访问202.100.1.100:8080的TCP流量到达FW1,命中Server-map表项中的正向条目将目的IP转换成内网HTPP Server的IP 172.16.1.1、目的端口转换成80,好像没环路问题啊。考虑在R2直接ping 202.100.1.100呢?分析R2是有去往202.100.1.100的路由的,所以R2产生的ICMP报文源IP 202.100.1.2 ->

目的IP 202.100.1.100被会FW1接收到,FW1收到这个ICMP报文,无法命中Server-map表项,所以只能查路由表转发,命中默认路由转发回R2(FW1从G1/0/2接口收到这个ICMP报文又从这个接口送出,因为G1/0/2接口划入Untrust区域,所以这个ICMP报文始终在Untrust区域流动,如果报文在同一个安全区域内流动默认不受安全策略控制),最终这个ICMP报文会FW1、R2之间互相踢来踢去,环路就产生了:

图-3

这个ICMP报文IP TTL减为1环路才会消失,大量的ICMP报文再R2、FW1之间流动,这可不是什么好事。NAT Server给我们提供了解决方法,可以通过配置NAT Server Global地址的Unr路由解决:nat server protocol tcp global  202.100.1.100 8080  inside 172.16.1.1 80 unr-route:

图-4

追加unr-route参数,FW1会为NAT Server Global地址自动生成一条防环的Unr主机路由存入路由表。这样的话FW1接收到去往200.100.1.100的ICMP报文匹配最精确的Unr主机路由,FW1就不会转发回R2,从而规避掉环路。

下期继续讨论NAT Server!!验证NAT Server所生成的反向条目,以及公网环境下通过NAT Server Telnet内网设备、防火墙。

相关文章

网友评论

      本文标题:安全HCIE防火墙精品实验之源NAT基础篇(三)

      本文链接:https://www.haomeiwen.com/subject/rfzeektx.html