[首页]
[文章]
[教程]
首页
Web开发
Windows开发
编程语言
数据库技术
移动平台
系统服务
微信
设计
布布扣
其他
数据分析
首页
>
其他
> 详细
关于Ensp中路由器启动防火墙的一点小问题
时间:
2018-05-25 13:11:27
阅读:
452
评论:
0
收藏:
0
[点我收藏+]
原来的一个实验环境,可以让学生理解网络基础中各网络协议的重要性。具体实验环境是Ensp软件中,添加工程,包含一个路由器两个PC机,如下图所示,路由器连接192.168.0.0和192.168.1.0这两个网段,PC也都设置了相应的网关,它们也就能互相ping通。我希望在路由器上配置防火墙功能,使PC1能ping通PC2,而PC2不能ping通PC1。
我们先进行理论分析,如果上图中PC1 ping PC2,ping命令调用ICMP协议,那么PC1 发送echo-request消息,PC2向PC1发送echo-reply消息。要想实现PC1能ping通PC2,而PC2不能ping通PC1这一目地,就需要在路由器AR2的GE0/0/0接口允许echo-request消息,而禁止echo-reply消息。
但是我就掉坑里了,一言难尽。我把过程写下了,供同学们参考。
首先华为路由器配置防火墙功能和老版本的华为路由器不太一样了,也和华三的设备不太一样,和华为硬件防火墙的配置类似,但又不完全一样。都是先建立区域,把接口加入区域,配置访问控制列表,建立区域间策略,最后测试。
1、建立区域
[AR3]interface g0/0/0
[AR3-GigabitEthernet0/0/0]ip add 192.168.0.1 24
[AR3-GigabitEthernet0/0/0]q
[AR3]interface g0/0/1
[AR3-GigabitEthernet0/0/1]ip add 192.168.1.1 24
[AR3-GigabitEthernet0/0/1]q
[AR3]firewall zone company
[AR3-zone-company]priority 10
[AR3-zone-company]q
[AR3]firewall zone outside
[AR3-zone-outside]priority 5
[AR3-zone-outside]q
路由器的防火墙区域安全优先级为1-15之间,15优先级最高。硬件防火墙优先级为1-100,100优先级最高。
2、把接口加入区域:
把接口G0/0/0加入区域company,G0/0/1加入区域outside。
[AR3]interface g0/0/0
[AR3-GigabitEthernet0/0/0]zone company
[AR3-GigabitEthernet0/0/0]q
[AR3]interface g0/0/1
[AR3-GigabitEthernet0/0/1]zone outside
[AR3-GigabitEthernet0/0/1]q
3、建立高级访问控制列表
高级访问控制列表中允许任何源到任何目的的echo-reply;
[AR3]acl 3000
[AR3-acl-adv-3000]rule permit icmp icmp-type echo-reply
[AR3-acl-adv-3000]q
4、建立区域间安全策略
建立区域company和outside之间的安全策略,启动防火墙功能,把acl3000应用到入方向。
[AR3]firewall interzone company outside
[AR3-interzone-company-outside]firewall enable
[AR3-interzone-company-outside]packet-filter 3000 inbound
[AR3-interzone-company-outside]display this
[V200R003C00]
#
firewall interzone company outside
firewall enable
packet-filter 3000 inbound
#
[AR3-interzone-company-outside]q
[AR3]
配置完成后,按照预想现在应该是PC1能ping通PC2,而PC2不能ping通PC1。结果是对的,完美,马上任务完成。
接着我就想咱应该再用一条命令,使用了这条命令,PC2就能ping通PC1了,那效果就杠杠滴。说干就干,在acl中添加命令允许icmp协议的echo-request。
[AR3-acl-adv-3000]rule permit icmp icmp-type echo-request
结果应该是PC1和PC2之间都通的,马上就应该喝着茶庆祝了,结果PC1能ping通PC2,而PC2还是不能ping通PC1。
分析原理不应该呀!
5、现在开始排错
先查看acl3000的内容是否正确:
[AR3-acl-adv-3000]display this
[V200R003C00]
#
acl number 3000
rule 5 permit icmp icmp-type echo
rule 10 permit icmp icmp-type echo-reply
#
return
[AR3-acl-adv-3000]
没有毛病,继续查看防火墙区域配置是否正确:
[AR3]display firewall zone
zone outside
priority is 5
interface of the zone is (total number 1):
GigabitEthernet0/0/1
zone company
priority is 10
interface of the zone is (total number 1):
GigabitEthernet0/0/0
zone Local
priority is 15
interface of the zone is (total number 0):
total number is : 3
没有毛病,继续查看防火墙区域之间策略:
[AR3]display firewall interzone
interzone company outside
firewall enable
packet-filter default deny inbound
packet-filter default permit outbound
packet-filter 3000 inbound
total number is : 1
[AR3]
防火墙区域之间策略也么有问题,默认的策略内部区域company允许访问外部区域outside,而外部区域outside不允许访问内部区域company。配置的包过滤入方向允许了acl3000。按说现在外部能ping通内部,内部能无障碍访问外部区域。但现在内部访问外部可以,而外部区域ping内部区域不通,不合理啊!
继续测试:
建立acl3001,允许整个icmp协议。
[AR3]acl 3001
[AR3-acl-adv-3001]rule
[AR3-acl-adv-3001]rule permit icmp
[AR3-acl-adv-3001]
然后在防火墙之间策略上应用。
[AR3]firewall interzone company outside
[AR3-interzone-company-outside]firewall enable
[AR3-interzone-company-outside]undo packet-filter 3000 inbound
[AR3-interzone-company-outside]packet-filter 3001 inbound
[AR3-interzone-company-outside]display this
[V200R003C00]
#
firewall interzone company outside
firewall enable
packet-filter 3001 inbound
#
[AR3-interzone-company-outside]q
[AR3]
现在测试PC1和PC2之间都能ping通了。按说应该结束了,但这不是我想要的结果,不能这么完。接着用wireshark抓包分析一下。两种包,分别如下:
图1 echo-request
图2 echo-reply
数据包还是icmp的echo-request和echo-request这两种类型。那么问题来了为什么acl3000允许这两种包PC2到PC1不能通过;而acl3001允许icmp协议,这两种包就能通过呢?
我就陷入了凝思苦想啊,揪掉了无数根头发之后,我猜了一下,是不是Ensp这个模拟器的防火墙功能不支持检查ICMP等协议的类型?
我继续用tcp协议测试,确实是不行(为了缩短篇幅,此处就不再演示过程)。
所以我就可以确定Ensp这个模拟器功能有bug,或者说是功能不完备!
那我辛辛苦苦想的这个流程,咋办,讲课时没有真实设备啊。
那咱就费点劲换华三的模拟器HCL v2.1,拓扑图如下图,其中MSR36-20_1作为路由器,MSR36-20_5和MSR36-20_6模拟PC机。
MSR36-20_1的配置信息如下
<H3C>display current-configuration
#
version 7.1.075, Alpha 7571
#
sysname H3C
#
interface GigabitEthernet0/0
port link-mode route
combo enable copper
ip address 192.168.0.1 255.255.255.0
packet-filter 3000 inbound
#
interface GigabitEthernet0/1
port link-mode route
combo enable copper
ip address 192.168.1.1 255.255.255.0
上面加粗字体部分表示是应用了访问控制列表ACL3000。
[H3C]display acl 3000
Advanced IPv4 ACL 3000, 2 rules,
ACL‘s step is 5
rule 0 permit icmp icmp-type echo
rule 5 deny icmp icmp-type echo-reply
ACL3000的具体命令为允许echo,拒绝echo-reply。
实验结果MSR36-20_6能ping通MSR36-20_5,MSR36-20_5不能ping通MSR36-20_6,与预想的结果相同。
实验就告一段落,给个教训就是,深入了理解网络协议,不要完全信任模拟器软件,能有真实环境尽量在真实环境中测试。
关于Ensp中路由器启动防火墙的一点小问题
原文:http://blog.51cto.com/25167/2120188
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年09月23日 (328)
2021年09月24日 (313)
2021年09月17日 (191)
2021年09月15日 (369)
2021年09月16日 (411)
2021年09月13日 (439)
2021年09月11日 (398)
2021年09月12日 (393)
2021年09月10日 (160)
2021年09月08日 (222)
最新文章
更多>
2021/09/28 scripts
2022-05-27
vue自定义全局指令v-emoji限制input输入表情和特殊字符
2022-05-27
9.26学习总结
2022-05-27
vim操作
2022-05-27
深入理解计算机基础 第三章
2022-05-27
C++ string 作为形参与引用传递(转)
2022-05-27
python 加解密
2022-05-27
JavaScript-对象数组里根据id获取name,对象可能有children属性
2022-05-27
SQL语句——保持现有内容在后面增加内容
2022-05-27
virsh命令文档
2022-05-27
教程昨日排行
更多>
1.
list.reverse()
2.
Django Admin 管理工具
3.
AppML 案例模型
4.
HTML 标签列表(功能排序)
5.
HTML 颜色名
6.
HTML 语言代码
7.
jQuery 事件
8.
jEasyUI 创建分割按钮
9.
jEasyUI 创建复杂布局
10.
jEasyUI 创建简单窗口
友情链接
汇智网
PHP教程
插件网
关于我们
-
联系我们
-
留言反馈
- 联系我们:wmxa8@hotmail.com
© 2014
bubuko.com
版权所有
打开技术之扣,分享程序人生!