华为防火墙nat(easy-ip)实验
实验目的是通过防火墙或路由器的NAT技术,实现内网和外网之间的通信,以及节省公网IP地址。实验环境是使用eNSP软件和VMware软件,搭建一个包含三层交换机、防火墙或路由器、内网PC和外网PC的拓扑图。实验步骤是配置三层交换机的接口、VLAN和路由,配置防火墙或路由器的接口、安全区域、安全策略和路由,配置NAT转换条目,使用easy-ip方式将内网地址转换为出接口地址,并指定ACL策略。实验结果
实验拓扑图
实验目的和需求
目的:
掌握在防火墙上配置源NAT的方法,使内网用户可以通过NAT技术访问外网资源,节省公网IP地址,增强网络安全性。
需求:
- 办公网内网(trust)可以访问生产服务器(dmz)和外网client2(untrust)。
- client2可以访问生产服务器,但不可以访问办公网。
- 生产服务器不能访问外网和办公网。
- 12.1.1.10ip给服务器用。
实验步骤
- 按照实验拓扑图,搭建实验环境,连接路由器、PC机、服务器、防火墙、交换机等设备。在防火墙上配置DHCP服务,配置防火墙和路由器的接口地址和路由。
- 在防火墙上划分安全区域,将办公网(内网)接口加入trust区域,将外网接口加入untrust区域,将生产服务器接口(DMZ接口)加入dmz区域。
- 在防火墙上设置安全策略,允许或禁止不同区域之间的流量访问
允许trust区域到untrust区域的访问
允许trust区域到dmz区域的访问
允许untrust区域到dmz区域的访问
其他流量默认拒绝 - 在防火墙上配置NAT策略,将内网用户的源地址转换为外网接口的地址,使内网用户可以通过NAT技术访问外网资源。
- 在防火墙上配置NAT服务映射,将外网用户访问某个公网地址和端口时,映射到内网服务器的私网地址,使外网用户可以访问内网服务器的服务。
- 验证实验结果,通过ping命令或者浏览器,测试不同区域的用户是否可以按照预期访问不同区域的资源或服务,观察防火墙上的NAT会话表和统计信息。
1.按照实验拓扑图,搭建实验环境,连接路由器、PC机、服务器、防火墙、交换机等设备。 在交换机上配置DHCP服务,配置防火墙和路由器的接口地址和路由。
client2的配置如下:
服务器的配置如下:
R1的接口配置如下:
[r1]
interface GigabitEthernet0/0/0
ip address 12.1.1.1 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 13.1.1.254 255.255.255.0
防火墙的接口配置,dhcp服务配置和默认路由配置如下:
[USG6000V1]
#
interface GigabitEthernet0/0/0
ip address 192.168.3.254 255.255.255.0
service-manage ping permit //使pc能ping通这个地址
#
interface GigabitEthernet1/0/0
ip address 12.1.1.254 255.255.255.0
#
interface GigabitEthernet1/0/1
ip address 192.168.4.254 255.255.255.0
#
ip route-static 0.0.0.0 0.0.0.0 12.1.1.1 //写一条默认路由
#
dhcp enable //开启dhcp服务
interface GigabitEthernet0/0/0
dhcp select interface
2.在防火墙上划分安全区域,将办公网(内网)接口加入trust区域,将外网接口加入untrust区域,将生产服务器接口(DMZ接口)加入dmz区域。
具体配置如下:
[USG6000V1]
firewall zone trust
add interface GigabitEthernet0/0/0
#
firewall zone untrust
add interface GigabitEthernet1/0/0
#
firewall zone dmz
add interface GigabitEthernet1/0/1
3.在防火墙上设置安全策略,允许或禁止不同区域之间的流量访问,
允许trust区域到untrust区域的访问
允许trust区域到dmz区域的访问
允许untrust区域到dmz区域的访问
[USG6000V1]
security-policy
rule name ttoun
source-zone trust
destination-zone untrust
action permit //允许trust区域到untrust区域的访问
#
rule name ttodmz
source-zone trust
destination-zone dmz
action permit //允许trust区域到dmz区域的访问
#
rule name untodmz
source-zone untrust
destination-zone dmz
action permit //允许untrust区域到dmz区域的访问
//其他流量默认拒绝
4.在防火墙上配置NAT策略,将内网用户的源地址转换为外网接口的地址,使内网用户可以通过NAT技术访问外网资源。
[USG6000V1]
nat-policy
rule name nat2
source-zone trust
source-address 192.168.3.0 mask 255.255.255.0
action source-nat easy-ip
5.在防火墙上配置NAT服务映射,将外网用户访问某个公网地址和端口时,映射到内网服务器的私网地址,使外网用户可以访问内网服务器的服务。
[USG6000V1]
nat server 1 global 12.1.1.10 inside 192.168.4.1 no-reverse
6.验证实验结果,通过ping命令或者浏览器,测试不同区域的用户是否可以按照预期访问不同区域的资源或服务,观察防火墙上的NAT会话表和统计信息。
pc:
ping 外网client2和生产服务器,通。
查看防火墙的会话表:
client2:
ping生产服务器,通。
查看防火墙的会话表和服务器地址表:
ping 内网网关,不通。
查看会话表:
生产服务器:
ping内网网关,不通。
查看会话表:
ping外网client2,不通。
查看会话表:
思考
1.为什么不用在接口下应用nat?
因为使用了出接口地址(Easy-IP)作为转换后的地址,这种方式是根据路由表动态确定的,不需要额外的配置。只需要指定源安全区域和源地址作为匹配条件,就可以实现内网用户访问外网时,将源地址转换为出接口地址。
详细讲就是:
- 在防火墙上配置NAT策略时,可以指定源安全区域和目的安全区域作为匹配条件,这样就可以根据流量的方向和区域进行NAT转换,不需要在接口下应用。
- 在防火墙上配置NAT策略时,如果使用出接口地址(Easy-IP)作为转换后的地址,那么就不需要在接口下应用,因为出接口地址是根据路由表动态确定的,不需要额外的配置。根据路由表动态确定的意思是,防火墙在收到内网用户发往外网的报文时,会根据路由表查找最佳的出口接口,然后将该接口的IP地址作为转换后的源地址,这样就可以实现多个出口接口共用一个NAT策略。
- 在防火墙上配置NAT策略时,如果使用地址池中的地址作为转换后的地址,那么也不需要在接口下应用,因为地址池中的地址是预先定义好的,不需要和接口绑定。
2.能不能通信跟会话表有什么关系?
- 会话表是防火墙用来记录TCP、UDP、ICMP等协议 连接状态 的表项,是防火墙转发报文的重要依据。
- 防火墙基于“状态”转发报文,只对 首包或者少量报文 进行检测然后确认一个连接状态,然后创建会话表项;后续大量的报文根据连接状态进行控制,匹配会话表即可转发。
- 如果报文没有匹配到会话表,那么防火墙会进入首包处理流程,根据安全策略、NAT策略、Server-map等进行匹配和转换,如果允许通过,则创建新的会话表项;如果不允许通过,则丢弃报文。
- 对于一个已经建立的会话表表项,只有当它不断被报文匹配才有存在的必要。如果长时间没有报文匹配,则说明可能通信双方已经断开了连接,不再需要该条会话表项了。为了节约系统资源,系统会在一条表项连续未被匹配一段时间后,将其删除,即会话表项已经老化。
因此,能不能通信跟会话表有很大的关系,如果没有匹配到会话表或者会话表已经老化,那么通信就可能失败。
3.服务器地址表是啥?
- 服务器地址表是一种记录服务器的IP地址和其他信息的表格,可以用于查询或管理服务器的状态。
- 服务器地址表也可以是一种映射关系,用于解决一些特殊协议不能正确匹配会话表的问题,例如FTP协议的port方式传输文件时,需要服务器端主动向客户端发起服务器数据连接,这时防火墙会根据控制数据协商出来的数据连接关系,生成Server-map表,使得外部网络能透过设备主动访问内部网络。
总结
- 实验目的是通过防火墙或路由器的NAT技术,实现内网和外网之间的通信,以及节省公网IP地址。
- 实验环境是使用eNSP软件和VMware软件,搭建一个包含三层交换机、防火墙或路由器、内网PC和外网PC的拓扑图。
- 实验步骤是配置三层交换机的接口、VLAN和路由,配置防火墙或路由器的接口、安全区域、安全策略和路由,配置NAT转换条目,使用easy-ip方式将内网地址转换为出接口地址,并指定ACL策略。
- 实验结果是通过抓包工具观察到内网地址和端口被转换为出接口地址和端口,实现了内外网之间的通信。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)