• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

f1000-ai-15,禁用高危端口无法上网问题

3天前提问
  • 0关注
  • 0收藏,95浏览
粉丝:0人 关注:0人

问题描述:

之前acl规则是这样写的

acl number 3445 

rule 1 deny tcp destination-port eq 135

 rule 2 deny udp destination-port eq 135

 rule 3 deny tcp destination-port eq 137

 rule 4 deny udp destination-port eq 137

 中间还禁用了好多IP

rule 83 deny ip destination 192.253.231.139 0

 rule 84 deny ip destination 101.32.44.104 0

 rule 85 deny ip destination 103.68.63.191 0

 rule 86 deny ip destination 103.68.63.82 0

 rule 87 deny ip destination 103.45.65.115 0

后面因不需要禁用这些IP了,一条一条删除很麻烦,就在WEB直接把这个ACL删除了,重新建了一个3000,然后就应用到出口

interface Ten-GigabitEthernet1/0/30

  packet-filter 3000 inbound

就无法访问网页了, QQ之类没问题,后面重新写了下,

rule 0 permit tcp destination-port eq 80

 rule 1 permit tcp destination-port eq 443

 rule 2 permit tcp destination-port eq 53

 rule 3 permit udp destination-port eq 53

 rule 6 deny tcp destination-port eq 135

 rule 7 deny udp destination-port eq 135

 rule 100 permit ip

这样还是不行,不知那里出问题了,之前规则都没有写80 443  rule 100 permit ip之类都可以正常访问网页

5 个回答
已采纳
粉丝:15人 关注:2人

你现在的问题是:ACL 应用方向错了 + 只放了目的端口、没考虑返回流量 + 最后一条 permit ip 位置不对。
下面一步步讲清楚,顺便给你可以直接复制的正确配置。
一、为什么旧 ACL(3445)能上网,新 ACL(3000)不能?
旧 ACL 3445:
只有一堆 deny 135/137 和某些 IP
没有写任何 permit,也没有 rule permit ip
但你是把它用在 防火墙接口 inbound
关键点:
H3C 防火墙接口 packet-filter 默认:未匹配到规则的流量 = 允许通过(不是 Cisco 的默认拒绝)
所以旧 ACL 等于:只拦高危端口 / 黑名单 IP,其余全放 → 正常上网
你删掉 3445,新建 ACL 3000:
plaintext
rule 0 permit tcp dport 80
rule 1 permit tcp dport 443
rule 2 permit tcp dport 53
rule 3 permit udp dport 53
rule 6 deny tcp dport 135
rule 7 deny udp dport 135
rule 100 permit ip
然后在出口:
plaintext
interface Ten-GigabitEthernet1/0/30
packet-filter 3000 inbound
问题就来了:
1)inbound 是 “外网→内网” 方向,你放的是 “内网→外网” 的目的端口
内网上网:源端口是随机的(1024 以上),目的端口是 80/443
但你把 ACL 挂在 出口 inbound → 过滤的是 外网进来的包(回包)
回包是:源端口 80/443,目的端口 随机
你的 ACL 只允许目的端口 = 80/443 → 回包全部被拒绝 → 网页打不开
QQ 能上:
QQ 用的是 UDP 高端口 + TCP 443/8080 等,很多不走 80/443
且 QQ 对丢包 / 策略不敏感,所以能连通
2)rule 100 permit ip 虽然在最后,但匹配顺序是按编号从小到大
回包:源端口 80/443、目的随机
依次匹配:
rule0:目的端口 = 80?不匹配
rule1:目的端口 = 443?不匹配
rule2/3:53?不匹配
rule6/7:135?不匹配
到 rule100 才 permit,但网页回包已经在前面没匹配上,被默认丢弃了(因为你前面都是 “只放特定目的端口”)
二、正确做法(两种方案,推荐方案 B)
方案 A:把 ACL 应用到 outbound(内网→外网)
plaintext
interface Ten-GigabitEthernet1/0/30
undo packet-filter 3000 inbound
packet-filter 3000 outbound
ACL 3000 保持你现在的写法即可。
方案 B(更规范,推荐):黑名单 ACL,只 deny 高危端口,其余全放
plaintext
acl advanced 3000
description 只禁用高危端口,允许所有上网流量
rule deny tcp destination-port eq 135
rule deny udp destination-port eq 135
rule deny tcp destination-port eq 137
rule deny udp destination-port eq 137
rule deny tcp destination-port eq 139
rule deny udp destination-port eq 139
rule deny tcp destination-port eq 445
rule deny udp destination-port eq 445
rule permit ip
quit
应用到出口 outbound:
plaintext
interface Ten-GigabitEthernet1/0/30
packet-filter 3000 outbound
三、你现在必须改的 2 件事
把 packet-filter 从 inbound 改成 outbound
(你是要管控 “内网上网”,不是 “外网进来”)
ACL 不要只放 80/443,改成只 deny 高危端口,最后 permit ip
(和你最初 3445 的逻辑一致,只是去掉了那些 IP 黑名单)
四、直接给你可复制的完整配置
plaintext
system-view

# 1. 建 ACL(黑名单模式)
acl advanced 3000
description 禁用高危端口,允许正常上网
rule deny tcp destination-port eq 135
rule deny udp destination-port eq 135
rule deny tcp destination-port eq 137
rule deny udp destination-port eq 137
rule deny tcp destination-port eq 139
rule deny udp destination-port eq 139
rule deny tcp destination-port eq 445
rule deny udp destination-port eq 445
rule permit ip
quit

# 2. 在出口出方向应用
interface Ten-GigabitEthernet1/0/30
undo packet-filter 3000 inbound
packet-filter 3000 outbound
quit

save

看了原备份配置,这f1000-ai-15,接口只有inbound,没有outbound acl advanced 3445 rule deny tcp destination-port eq 135 rule deny udp destination-port eq 135 rule deny tcp destination-port eq 137 rule deny udp destination-port eq 137 rule deny tcp destination-port eq 139 rule deny udp destination-port eq 139 rule deny tcp destination-port eq 445 rule deny udp destination-port eq 445 加好多禁用目的IP 应用入方向 interface Ten-GigabitEthernet1/0/30 packet-filter 3455 inbound quit 原备份是这样写的,竟然能正常上网

zhiliao_04I7Kq 发表时间:3天前 更多>>

看了原备份配置,这f1000-ai-15,接口只有inbound,没有outbound acl advanced 3445 rule deny tcp destination-port eq 135 rule deny udp destination-port eq 135 rule deny tcp destination-port eq 137 rule deny udp destination-port eq 137 rule deny tcp destination-port eq 139 rule deny udp destination-port eq 139 rule deny tcp destination-port eq 445 rule deny udp destination-port eq 445 加好多禁用目的IP 应用入方向 interface Ten-GigabitEthernet1/0/30 packet-filter 3455 inbound quit 原备份是这样写的,竟然能正常上网

zhiliao_04I7Kq 发表时间:3天前
粉丝:131人 关注:11人

你把web和dns的端口都给禁了,肯定有问题。


 80和443、53去掉

 

粉丝:10人 关注:9人

 

粉丝:21人 关注:1人

针对您在 H3C F1000-AI-15 防火墙上修改 ACL 后导致无法访问网页的问题,根本原因在于ACL 的默认隐式拒绝机制以及防火墙安全域策略的交互
以下是深度原因分析及正确的解决步骤:

一、 为什么之前的规则能上网,新建的却不行?

  1. 隐式拒绝(Deny Any Any):任何 ACL 在创建时,系统都会在最后自动添加一条隐含规则 deny ip any any。当您直接在 Web 界面删除旧的 ACL 3445 并新建 ACL 3000 时,如果新 ACL 没有明确放行 HTTP/HTTPS 流量,或者应用方向有误,就会导致正常流量被拦截。
  2. Web 界面的操作陷阱:在 Web 界面直接删除并重建 ACL,极易出现“旧接口未解绑”或“新接口绑定错误”的情况。此外,部分版本固件中,ACL 可以独立于安全策略生效,若存在冲突会导致报文被丢弃。
  3. 安全域策略缺失:防火墙不仅有 ACL,还有安全域(Zone)策略。如果您将 ACL 应用在了出口接口的入方向(inbound),且没有配置从 Trust 到 Untrust 域的允许策略,流量同样会被阻断。

二、 正确配置与排查步骤

要恢复网络并继续限制高危端口,建议按照以下标准流程重新配置:

第一步:检查并清理接口绑定

首先确认当前接口上是否还残留有错误的 ACL 绑定:
display packet-filter interface Ten-GigabitEthernet1/0/30
如果有残留,请先进入接口视图将其解绑:
interface Ten-GigabitEthernet1/0/30 undo packet-filter inbound

第二步:重写正确的 ACL

您后来补充了 80、443 和 permit ip 的规则,思路是正确的。但为了安全和规范,建议精简为如下形式(假设 ACL 编号为 3000):
acl advanced 3000 rule 0 deny tcp destination-port eq 135 rule 1 deny udp destination-port eq 135 rule 2 deny tcp destination-port eq 137 rule 3 deny udp destination-port eq 137 rule 99 permit ip # 仅放行其余所有合法流量即可,无需单独写80/443 quit

第三步:正确应用 ACL

对于出口接口,通常建议在出站方向(outbound)进行过滤,这样更符合数据流向逻辑:
interface Ten-GigabitEthernet1/0/30 packet-filter 3000 outbound
(注:如果您坚持使用 inbound,请确保该接口的入方向是内网侧)

第四步:检查安全域策略(关键)

进入安全策略视图,确保存在允许内网访问外网的策略:
security-policy rule name Permit_LAN_to_WAN source-zone trust destination-zone untrust action permit

三、 终极排查命令

如果按上述步骤配置后依然无法上网,请使用以下命令查看具体是哪条规则阻断了流量:
  1. 查看命中计数:执行 display acl 3000,观察每条规则后面的 (matched xxx times) 数值。如果是 rule 99 permit ip 匹配数为 0,说明流量根本没走到这里;如果是某条 deny 规则匹配数激增,则说明被误拦。
  2. 查看会话表:执行 display session table verbose,查看是否有 TCP 三次握手失败的记录。
  3. 查看系统日志:执行 display logbuffer,搜索关键字 packet-filter 或 deny,防火墙通常会记录下因 ACL 被丢弃的数据包详情。

粉丝:6人 关注:1人

53是dns的端口号,你给53禁了就无法域名解析了啊

编辑答案

你正在编辑答案

如果你要对问题或其他回答进行点评或询问,请使用评论功能。

分享扩散:

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作

举报

×

侵犯我的权益 >
对根叔社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明