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

acl访问控制列表

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

问题描述:

 

 

核心交换机S7306X-G上配置了vlan 12 16 20 三个网段  需求是vlan16能访问vlan12 和vlan20   vlan12 和vlan20不能访问vlan16并且也不能互相访问

acl需要如何配置  

rule 0 permit ip source 192.168.16.0 0.0.0.255 destination 192.168.12.0 0.0.0.255

 rule 5 permit ip source 192.168.16.0 0.0.0.255 destination 192.168.20.0 0.0.0.255

 rule 6 permit tcp source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 established

 rule 7 permit tcp source 192.168.20.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 established

 rule 8 permit icmp source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 icmp-type echo-reply

 rule 9 permit icmp source 192.168.20.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 icmp-type echo-reply

 rule 10 deny ip source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255

 rule 15 deny ip source 192.168.12.0 0.0.0.255 destination 192.168.20.0 0.0.0.255

 rule 20 deny ip source 192.168.20.0 0.0.0.255 destination 192.168.12.0 0.0.0.255

 rule 25 deny ip source 192.168.20.0 0.0.0.255 destination 192.168.16.0 0.0.0.255

rule 30 permit ip

这个是我写的acl 但是只能回应tcp和icmp的报文其他协议的报文回应不了  望指导

 

 

4 个回答
粉丝:17人 关注:9人

在S7306X-G上,ACL需应用在VLAN接口的入方向(inbound),以控制源VLAN发起的流量。配置如下:
text
acl advanced 3000
rule 0 permit ip source 192.168.16.0 0.0.0.255 destination 192.168.12.0 0.0.0.255
rule 5 permit ip source 192.168.16.0 0.0.0.255 destination 192.168.20.0 0.0.0.255
rule 10 deny ip source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255
rule 15 deny ip source 192.168.12.0 0.0.0.255 destination 192.168.20.0 0.0.0.255
rule 20 deny ip source 192.168.20.0 0.0.0.255 destination 192.168.16.0 0.0.0.255
rule 25 deny ip source 192.168.20.0 0.0.0.255 destination 192.168.12.0 0.0.0.255
应用到接口:
text
interface Vlan-interface12
packet-filter 3000 inbound
interface Vlan-interface16
packet-filter 3000 inbound
interface Vlan-interface20
packet-filter 3000 inbound
注意:ACL默认隐含deny any,但显式写出deny规则更清晰。若VLAN间路由在同一交换机,入方向应用即可生效。

暂无评论

粉丝:109人 关注:1人

问题在于 established 只匹配 TCP,ICMP 只放行了 echo-reply,UDP(DNS、SNMP、syslog 等)和其他 ICMP 类型的回包都没有放行,最终被 deny 掉。ACL 是无状态的,没法识别"回包",只能靠枚举。

方案一:在 ACL 里补 UDP 等规则(简单,但有局限)

UDP 没有 established,只能按源端口放行回包,例如:

rule 11 permit udp source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 source-port eq 53

这样要逐个服务写,且 vlan16 访问 vlan12 的 UDP 端口是随机的,放行源端口等于放开该端口发起的任意流量,不严谨。

方案二(推荐):用 vlan12/vlan20 的入方向做精简,或在三层口上用 ACL 只限制"发起方向"

思路:不要在 12/20 的入方向拦截回包,而是只拦截 12/20 主动访问其他网段的流量。更实用的做法是把策略放在 vlan16 的出方向、12/20 的出方向,但无状态 ACL 本质上仍然区分不了回包。

方案三(根治):使用状态检测设备

核心交换机 ACL 无法做到"单向发起、回包自动放行",需要防火墙做 vlan12/16/20 的网关(或策略路由到防火墙),在防火墙上配置 16→12/20 允许,反向默认拒绝,会话表自动放行回包。

如果坚持在 S7306X-G 上做,较完整的写法:

acl number 3000 rule 0 permit ip source 192.168.16.0 0.0.0.255 destination 192.168.12.0 0.0.0.255 rule 5 permit ip source 192.168.16.0 0.0.0.255 destination 192.168.20.0 0.0.0.255 rule 6 permit tcp source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 established rule 7 permit tcp source 192.168.20.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 established rule 8 permit icmp source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 icmp-type echo-reply rule 9 permit icmp source 192.168.20.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 icmp-type echo-reply rule 10 permit icmp source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 icmp-type ttl-exceeded rule 11 permit icmp source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 icmp-type port-unreachable rule 12 permit udp source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 source-port eq 53 (按需添加 snmp 161、ntp 123 等,vlan20 同理) rule 20 deny ip source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 ...

另外几点:

  1. 应用方向:建议用 traffic-filter inbound 应用在 vlan12、vlan20 的 VLANIF 口上(流量进入网关时过滤),vlan16 的 VLANIF 不应用,这样 16 访问 12/20 的去程不受影响,只过滤 12/20 发出的流量。
  2. rule 30 permit ip 放在最后会放行 12/20 访问其他网段(如互联网、其他内网)的流量,确认这是你想要的。
  3. 你原来的 rule 0、5 已经是 vlan16 的去程,如果 ACL 只应用在 vlan12/20 的 inbound 方向,这两条其实用不上。

结论:纯 ACL 能满足 TCP/ICMP/DNS 等常见业务,但无法完美实现"单向访问"。如果要求严格,或 16 网段会用到各类 UDP/私有协议,建议上防火墙。

暂无评论

粉丝:48人 关注:2人

established 是 TCP 专属关键字,UDP、DNS、SCTP、其他 IP 协议没有这个标志位,ACL 静态规则没法自动放行回包,这就是你现在:TCP 正常、ICMP echo-reply 你手动写了可以通、但是 UDP(DNS、NTP 等)回包直接被 deny 的根源H3C。

静态 ACL 是无状态的!S7306X-G 如果想要【由 VLAN16 主动发起访问 12/20,自动放行所有回程报文;禁止 12、20 主动发起访问 16,同时 12 和 20 互相隔离】,正确方案是 ASPF 状态防火墙,而不是手写一大堆 established。

需求再对齐:

  1. ✅ VLAN16(192.168.16.0/24)→ VLAN12、VLAN20:双向通(16 发起,请求 + 回包都放行)
  2. ❌ VLAN12、VLAN20 → VLAN16:禁止主动发起访问,但是 16 主动访问产生的回程包允许回来
  3. ❌ VLAN12 ↔ VLAN20:完全不能互访

你原来的思路缺陷:只能手工枚举 TCP established、icmp echo-reply;UDP、DNS、NTP、其他协议无法覆盖,业务缺回程。

方案一:推荐(ASPF 状态检测,S7306X-G 支持,完美解决 UDP 等所有协议回程)

ASPF 是状态化,会建立会话表:只有 16 主动发起的流,回程报文自动放行;12/20 主动发起去往 16 的新建连接直接拒绝H3C。

应用位置:在 Vlan-interface12、Vlan-interface20 的inbound 方向做 ASPF 检测 + ACL 拒绝主动访问。

# 1、创建ASPF策略,开启TCP、UDP、ICMP状态检测 aspf-policy 1 inspect tcp inspect udp inspect icmp quit # 2、创建高级ACL,用来阻断【12、20主动访问16】的新建流量,同时阻断12和20互访 acl advanced 3000 rule 0 deny ip source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 rule 5 deny ip source 192.168.20.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 rule 10 deny ip source 192.168.12.0 0.0.0.255 destination 192.168.20.0 0.0.0.255 rule 15 deny ip source 192.168.20.0 0.0.0.255 destination 192.168.12.0 0.0.0.255 rule 100 permit ip # 其余流量放行,交给ASPF做状态控制 quit # 3、在Vlanif12、Vlanif20入方向绑定:先报文过滤ACL,再开启ASPF interface Vlan-interface12 packet-filter 3000 inbound aspf apply 1 inbound quit interface Vlan-interface20 packet-filter 3000 inbound aspf apply 1 inbound quit

逻辑解释:

  • 从 VLAN12、VLAN20 进来的报文:
    • 如果是主动发起去往 16:ACL 直接 deny;
    • 如果是16 主动访问 12/20 产生的回程报文:匹配 ASPF 会话表,直接放行;
    • 12 和 20 互相访问:ACL 直接 deny;
  • VLAN16 侧不加任何阻断,16 发起访问 12、20 全部正常,TCP/UDP/ICMP/DNS/NTP 全都能正常回包。

方案二:如果你坚持只用纯静态 ACL(不使用 ASPF,不推荐,有局限)

只能把所有回程流量全部放开,但是会带来风险:12、20 的设备可以主动监听端口,被动接收流量,安全弱,只适合简单场景。 思路:允许目的是 16 网段的所有回程报文,只禁止【源是 12/20,目的 16,SYN 新建请求】。

静态 ACL 做不到区分 “主动发起” 和 “回程”,只能妥协放行所有去往 16 的回包。

acl advanced 3000 # 16主动去12、20放行 rule 0 permit ip source 192.168.16.0 0.0.0.255 destination 192.168.12.0 0.0.0.255 rule 5 permit ip source 192.168.16.0 0.0.0.255 destination 192.168.20.0 0.0.0.255 # 放行12、20发给16的所有回程报文(代价:只要包到16就放行,无法区分是不是回包) rule 10 permit ip source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 rule 15 permit ip source 192.168.20.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 # 禁止12<->20互访 rule 20 deny ip source 192.168.12.0 0.0.0.255 destination 192.168.20.0 0.0.0.255 rule 25 deny ip source 192.168.20.0 0.0.0.255 destination 192.168.12.0 0.0.0.255 rule 100 permit ip

缺点:12 里面的主机可以主动给 16 发 UDP 报文(比如直接发 UDP 包到 16 网段端口),ACL 拦不住,安全不符合你原始需求,不建议现场用。

你原来这份 ACL 的问题汇总

rule 6 permit tcp source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 established rule 7 permit tcp source 192.168.20.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 established rule 8 permit icmp source 192.168.12.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 icmp-type echo-reply rule 9 permit icmp source 192.168.20.0 0.0.0.255 destination 192.168.16.0 0.0.0.255 icmp-type echo-reply
  1. established仅限 TCP,UDP、DNS、NTP、TFTP、其他协议没有这个标记,没有规则放行回包;
  2. 只写了 echo-reply,其他 ICMP 类型(目的不可达、TTL 超时等)回包也会丢,部分业务异常;
  3. 维护成本极高,新增协议就要新增一条 rule,很容易遗漏。

验证命令(ASPF 方案部署后)

display aspf session display aspf statistics display packet-filter interface Vlan-interface12 inbound display packet-filter interface Vlan-interface20 inbound

看会话表:只有 VLAN16 主动发起的流,才会生成双向会话。

部署注意点(S7300X 系列)

  1. ASPF 占用会话资源,正常办公规模完全没问题;
  2. packet-filter 和 aspf 都绑定在 Vlanif 的 inbound 方向;
  3. 不要同时在多个接口重复叠加 ACL,避免规则冲突;
  4. 如果后续还要上连互联网,互联网的流量不要走这套 ASPF 策略。


暂无评论

粉丝:6人 关注:1人

acl做不了单向限制,如果非要实现最简单办法就是把交换机换成防火墙

暂无评论

编辑答案

你正在编辑答案

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

✖

分享扩散:

➤

提出建议

✖

    +
✖

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

确定
✖

亲~检测到您登陆的账号未在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. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔社区有害的内容

×

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

不规范转载

×

举报说明