源nat是将私网地址转换为公网地址,实现内部网络访问外网。目的dnat是将对公网访问Ip转换为内网ip,实现外部网络访问内网资源。目的nat的实现有多种方式,一对一转换,带端口和不带端口的转换,最常用的就是使用带端口的一对多转换,即我们常说的端口映射。在华为的设备中,作为端口映射的配置被称为nat-sever.

    有时候,网络中需要内网ip能够访问对应的公网ip,实现特定业务。这种访问需求被称为nat的访问回流,路由器可以设定路由策略实现源进源出或者直接支持,防火墙上有所谓的双向nat也可以支持。

    在华为的防火墙上,可以多配置一条源nat策略来实现。

一、模拟拓扑及思路

访问需求和模拟拓扑图下所示:


路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第1张图片

说明:

1、使用ensp模拟器模拟简单网络环境

2、防火墙作为安全网关,实现策略控制,源snat和目的nat转换

3、utrust区模拟外部网络客户端

4、防火墙将内部网络地址转换为1.1.1.2公网地址,实现端口映射1.1.1.2:8000-->192.168.2.1:80

5、trust区模拟内网客户端

6、dmz模拟服务器


二、防火墙基本功能配置

网络接口和区域配置如下,记得在接口里面把ping打开

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第2张图片

华为防火墙默认策略是允许所有,需要修改禁止

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第3张图片


配置nat池如下所示:


路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第4张图片

配置地址对象,只需要配置server的地址即可

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第5张图片

按照如下方式配置源nat策略

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第6张图片

配置域间安全策略

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第7张图片

需要配置到外网的域间策略,如下所示

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第8张图片

测试trust访问dmz,说明域间安全策生效

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第9张图片

测试trust访问utrust,说明源nat生效,同时也可以看到地址被转换了

image.png


三、目的nat-server

配置nat-server,如下所示;

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第10张图片

然后配置untrust->dmz的域间策略,对象指定我们选择的dmz_server

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第11张图片

模拟测试。访问http://1.1.1.1:8000/default.html,可以看到访问正常,说明端口映射正常

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第12张图片

检查防火墙会话表,验证dnat正确,访问1.1.1.2:800被转换为192.168.2.1:80

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第13张图片


四、内网访问公网地址

此时内网的ip是无法访问公网的地址的端口映射的。查询和测试过资料,在防火墙中,貌似只能支持同一个安全域内的内网访问公网。

所以trust区域是无法直接访问dmz区域的公网地址,所以只好修改测试方法,在同一个安全区域内dmz实现

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第14张图片


我们在源nat里面增加一条,dmz到dmz源地址转换策略,详细配置如下

路由交换-华为usg6000防火墙上配置内网外网通过公网ip访问http服务_第15张图片

此时进行测试,可以发现内网地址能够正常访问公网地址业务