eNSP之防火墙简单实验(一)

eNSP之防火墙简单实验(一)

实验拓扑

eNSP之防火墙简单实验(一)_第1张图片
图中,FW与ISP连接的网段仅仅是互联的作用,所以用私有地址段,而内部流量经过防火墙的G1/0/2访问外部流量时使用向运营商申请的公有地址段200.8.8.0/29。最后会针对这部分做一个扩展。

实验步骤

1、基础信息配置

将基础的IP地址配置

2、划分防火墙区域

1)代码配置方法

[FW]firewall zone trust
[FW-zone-trust]add int g1/0/1
[FW]firewall zone dmz
[FW-zone-dmz]add int g1/0/3
[FW]firewall zone untrust
[FW-zone-untrust]add int g1/0/2

2)WEB配置方法

使用web登录后选择网络,如何web登录防火墙请参考我前面的文章:

如何web登录eNSP防火墙USG6000v:https://mr-sss.blog.csdn.net/article/details/109572168eNSP之防火墙简单实验(一)_第2张图片
选择相应接口,接入相应的区域。
eNSP之防火墙简单实验(一)_第3张图片
eNSP之防火墙简单实验(一)_第4张图片

3、配置路由

[FW]ip route-static 0.0.0.0 0 192.168.200.2		//防火墙指向ISP
[ISP]ip route-static 200.8.8.0 29 192.168.200.1	//ISP上去往200.8.8.0/29的路由指向防火墙出口

4、配置防火墙安全策略

1)代码配置方法

//配置trust到untrust的安全策略,用于内部Trust区域访问外部UnTrust区域。
[FW]security-policy 
[FW-policy-security]rule name OUT	//策略名称
[FW-policy-security-rule-OUT]source-zone trust	//流量的源区域
[FW-policy-security-rule-OUT]destination-zone untrust	//流量的目的区域
[FW-policy-security-rule-OUT]action permit	//动作为允许
[FW-policy-security-rule-OUT]quit

//配置untrust到DMZ区域的安全策略,用于外部UnTrust区域访问内部DMZ区域。
[FW-policy-security]rule name DMZ
[FW-policy-security-rule-DMZ]source-zone untrust
[FW-policy-security-rule-DMZ]destination-zone dmz
[FW-policy-security-rule-DMZ]action permit
[FW-policy-security-rule-DMZ]quit

2)WEB配置方法

eNSP之防火墙简单实验(一)_第5张图片
eNSP之防火墙简单实验(一)_第6张图片
注意:防火墙版本不一样,可能界面内容会不一样,但大致配置一样

5、配置防火墙NAT策略

1)代码配置方法:

//配置PAT中的PNAT,用于Trust区域的流量去往Untrust。
[FW]nat address-group 1		//创建nat地址池
[FW-address-group-1]mode pat
[FW-address-group-1]section 0 200.8.8.2 200.8.8.2   //使用PNAT的方式
[FW-address-group-1]quit

[FW]nat-policy 
[FW-policy-nat]rule name t-ut	//策略名称
[FW-policy-nat-rule-t-ut]source-zone trust
[FW-policy-nat-rule-t-ut]destination-zone untrust
[FW-policy-nat-rule-t-ut]action source-nat address-group 1	//引用nat地址池
[FW-policy-nat-rule-t-ut]quit

//配置NAT服务映射,用于外部流量访问内部DMZ区域的Server1
[FW]nat server ut-dmz zone untrust protocol icmp global 200.8.8.1 inside 192.168.3.100 no-reverse
//其中,ut-dmz为服务名称,这里区域选的是流量发起的区域,所以是Untrust。
//访问协议为icmp,公有地址为200.8.8.1,内部地址为192.168.3.100。
//no-reverse表示单向映射。

2)WEB界面设置方法

eNSP之防火墙简单实验(一)_第7张图片

eNSP之防火墙简单实验(一)_第8张图片
配置服务器映射
eNSP之防火墙简单实验(一)_第9张图片
eNSP之防火墙简单实验(一)_第10张图片

6、需求测试

1)Client1能够访问web的HTTP服务

访问前可以通过防火墙抓包查看地址转换情况:

eNSP之防火墙简单实验(一)_第11张图片
eNSP之防火墙简单实验(一)_第12张图片
在防火墙出接口上抓包。
eNSP之防火墙简单实验(一)_第13张图片
开始抓包。
eNSP之防火墙简单实验(一)_第14张图片
eNSP之防火墙简单实验(一)_第15张图片
使用Client1访问web服务器。
eNSP之防火墙简单实验(一)_第16张图片
抓包结果:
eNSP之防火墙简单实验(一)_第17张图片

2)Client2能够ping通Server1

eNSP之防火墙简单实验(一)_第18张图片
抓包结果。
在这里插入图片描述
通过以上的配置,已经可以实现不同安全区域的流量访问。

扩展——黑洞路由

路由环路问题

在上述的配置中,我在ISP上配置了去往200.8.8.0/29的静态路由,并指向了防火墙出接口,而防火墙上配置了一条默认路由指向了ISP。

现在外网用户可以通过公网地址访问防火墙内部的Server1,若外部用户通过内部服务器的公网地址段推测出该网段其他的可用公网地址,并且这些地址可能对应到了相应的NAT服务上,在没有配置相应安全防护时,此时会发生路由环路,造成网络不稳定,甚至发生大量占用防火墙内存而导致防火墙宕机的情况。

例如,外部用户ping不是Server1的地址200.8.8.1,而是200.8.8.2,由于在ISP上配置了去往200.8.8.0/29网段的路由是指向FW的,所以ISP会将来自CLient2并且是去往200.8.8.2的数据包发给FW,而FW上并没有去往200.8.8.0/29网段的路由,于是FW又将该数据包按默认路由发给ISP,于是造成了路由环路。

我们可以抓包看看结果。
eNSP之防火墙简单实验(一)_第19张图片
使用CLient2 ping 200.8.8.2.
eNSP之防火墙简单实验(一)_第20张图片
eNSP之防火墙简单实验(一)_第21张图片
eNSP之防火墙简单实验(一)_第22张图片
可以看见,只进行了3此ping测试,却抓到了762个ICMP数据包,这是因为IP数据包生存时间TTL的关系,当一个数据包的TTL从初始值递减为0时,会将该数据包丢弃。(每经过一个路由器TTL值减1)

查看第一个ICMP数据包的TTL:
eNSP之防火墙简单实验(一)_第23张图片
查看第254个数据包:
eNSP之防火墙简单实验(一)_第24张图片
此时TTL的值已经为1,下一个便为0,但为0时,该数据包将会被丢弃,不做转发。这也意味着1~254这些数据包代表第一次ping测试结束,如果后续还有ping测试的话,第255个数据包将会重新开始,即,第二次ping测试开始,以此类推,所以,3次ping测试会产生254*3=762个数据包。

查看第255个数据包:
eNSP之防火墙简单实验(一)_第25张图片
查看第762个数据包TTL值:
在这里插入图片描述
可见,ping了3次后防火墙并没有发生任何异常,但是如果别人是恶意的一直ping,那结果就不一样了。
因此我们可以配置黑洞路由

配置路由黑洞

使用更精确的路由条目去匹配,将数据包引入黑洞。
生活中,因为公司连接外网的地址都是向运营商买的,地址数量很少,所以可以手工配置。

[FW]ip route-static 200.8.8.2 32 null0	//下一跳为空接口
[FW]ip route-static 200.8.8.3 32 null0
[FW]ip route-static 200.8.8.4 32 null0
[FW]ip route-static 200.8.8.5 32 null0
[FW]ip route-static 200.8.8.6 32 null0
再次ping测试,并抓取数据包

eNSP之防火墙简单实验(一)_第26张图片
可以看到,环路问题已经被解决,三次ping只出现3个数据包,每个数据包代表一次ping测试。

感谢阅读!

你可能感兴趣的:(华为eNSP实验,华为,网络)