华为——使用ACL限制内网主机访问外网网站示例

组网图形

图1 使用ACL限制内网主机访问外网网站示例

  • ACL简介
  • 配置注意事项
  • 组网需求
  • 配置思路
  • 操作步骤
  • 配置文件
ACL简介

访问控制列表ACL(Access Control List)是由一条或多条规则组成的集合。所谓规则,是指描述报文匹配条件的判断语句,这些条件可以是报文的源地址、目的地址、端口号等。

ACL本质上是一种报文过滤器,规则是过滤器的滤芯。设备基于这些规则进行报文匹配,可以过滤出特定的报文,并根据应用ACL的业务模块的处理策略来允许或阻止该报文通过。

基于ACL规则定义方式,可以将ACL分为基本ACL、高级ACL、二层ACL等种类。基本ACL根据源IP地址、分片信息和生效时间段等信息来定义规则,对IPv4报文进行过滤。如果只需要根据源IP地址对报文进行过滤,可以配置基本ACL。

本例,就是将基本ACL应用在流策略模块,使设备可以对内网主机访问外网的报文进行过滤,达到限制内网特定主机上网的目的。

配置注意事项

本举例适用于S系列交换机所有产品的所有版本。

以下涉及的命令行及回显信息以V200R007C00版本的S7712交换机为例。

组网需求

如图1所示,某公司通过Switch实现各部门之间的互连。现要求Switch能够禁止研发部和市场部的部分主机访问外网,防止公司机密泄露。

配置思路

采用如下的思路在Switch上进行配置:

  1. 配置基本ACL和基于ACL的流分类,使设备可以对研发部与市场部的指定主机的报文进行过滤。
  2. 配置流行为,拒绝匹配上ACL的报文通过。
  3. 配置并应用流策略,使ACL和流行为生效。
操作步骤
  1. 配置接口所属的VLAN以及接口的IP地址

    创建VLAN10和VLAN20。

    javascript 复制代码
    <HUAWEI> system-view
    [HUAWEI] sysname Switch
    [Switch] vlan batch 10 20

    配置Switch的接口GE1/0/1、GE1/0/2为trunk类型接口,并分别加入VLAN10和VLAN20;配置Switch的接口GE2/0/1为trunk类型接口,加入VLAN10和VLAN20。

    javascript 复制代码
    [Switch] interface gigabitethernet 1/0/1
    [Switch-GigabitEthernet1/0/1] port link-type trunk
    [Switch-GigabitEthernet1/0/1] port trunk allow-pass vlan 10
    [Switch-GigabitEthernet1/0/1] quit
    [Switch] interface gigabitethernet 1/0/2
    [Switch-GigabitEthernet1/0/2] port link-type trunk
    [Switch-GigabitEthernet1/0/2] port trunk allow-pass vlan 20
    [Switch-GigabitEthernet1/0/2] quit
    [Switch] interface gigabitethernet 2/0/1
    [Switch-GigabitEthernet2/0/1] port link-type trunk
    [Switch-GigabitEthernet2/0/1] port trunk allow-pass vlan 10 20
    [Switch-GigabitEthernet2/0/1] quit

    创建VLANIF10和VLANIF20,并配置各VLANIF接口的IP地址。

    javascript 复制代码
    [Switch] interface vlanif 10
    [Switch-Vlanif10] ip address 10.1.1.1 24
    [Switch-Vlanif10] quit
    [Switch] interface vlanif 20
    [Switch-Vlanif20] ip address 10.1.2.1 24
    [Switch-Vlanif20] quit
  2. 配置ACL

    创建基本ACL 2001并配置ACL规则,拒绝源IP地址为10.1.1.11和10.1.2.12的主机的报文通过。

    javascript 复制代码
    [Switch] acl 2001
    [Switch-acl-basic-2001] rule deny source 10.1.1.11 0  //禁止IP地址为10.1.1.11的主机访问外网
    [Switch-acl-basic-2001] rule deny source 10.1.2.12 0  //禁止IP地址为10.1.2.12的主机访问外网
    [Switch-acl-basic-2001] quit
  3. 配置基于基本ACL的流分类

    配置流分类tc1,对匹配ACL 2001的报文进行分类。

    javascript 复制代码
    [Switch] traffic behavior tb1  //创建流行为
    [Switch-behavior-tb1] deny  //配置流行为动作为拒绝报文通过
    [Switch-behavior-tb1] quit
  4. 配置流行为

    配置流行为tb1,动作为拒绝报文通过。

    javascript 复制代码
    [Switch] traffic behavior tb1  //创建流行为
    [Switch-behavior-tb1] deny  //配置流行为动作为拒绝报文通过
    [Switch-behavior-tb1] quit
  5. 配置流策略

    定义流策略,将流分类与流行为关联。

    javascript 复制代码
    [Switch] traffic policy tp1  //创建流策略
    [Switch-trafficpolicy-tp1] classifier tc1 behavior tb1  //将流分类tc1与流行为tb1关联
    [Switch-trafficpolicy-tp1] quit
  6. 在接口下应用流策略

    由于内网主机访问外网的流量均从接口GE2/0/1出口流向Internet,所以可以在接口GE2/0/1的出方向应用流策略。

    javascript 复制代码
    [Switch] interface gigabitethernet 2/0/1
    [Switch-GigabitEthernet2/0/1] traffic-policy tp1 outbound  //流策略应用在接口出方向
    [Switch-GigabitEthernet2/0/1] quit
  7. 验证配置结果

    查看ACL规则的配置信息。

    javascript 复制代码
    [Switch] display acl 2001
    Basic ACL 2001, 2 rules                                                         
    Acl's step is 5                                                                 
     rule 5 deny source 10.1.1.11 0 (match-counter 0)                               
     rule 10 deny source 10.1.2.12 0 (match-counter 0)  

    查看流分类的配置信息。

    javascript 复制代码
    [Switch] display traffic classifier user-defined
      User Defined Classifier Information:
       Classifier: tc1
        Precedence: 5
        Operator: OR
        Rule(s) : if-match acl 2001                                                 
    
    Total classifier number is 1   

    查看流策略的配置信息。

    javascript 复制代码
    [Switch] display traffic policy user-defined tp1
      User Defined Traffic Policy Information:                                      
      Policy: tp1                                                                   
       Classifier: tc1                                                              
        Operator: OR                                                                
         Behavior: tb1                                                              
          Deny  

    IP地址为10.1.1.11和10.1.2.12的主机无法访问外网,其他主机均可以访问外网。

配置文件
javascript 复制代码
Switch的配置文件

#
sysname Switch
#
vlan batch 10 20 
#
acl number 2001                                                                 
 rule 5 deny source 10.1.1.11 0                                                 
 rule 10 deny source 10.1.2.12 0  
#
traffic classifier tc1 operator or precedence 5  
 if-match acl 2001                                                              
#
traffic behavior tb1
 deny
#
traffic policy tp1 match-order config
 classifier tc1 behavior tb1
#
interface Vlanif10
 ip address 10.1.1.1 255.255.255.0
#
interface Vlanif20
 ip address 10.1.2.1 255.255.255.0
#
interface GigabitEthernet1/0/1
 port link-type trunk                                                           
 port trunk allow-pass vlan 10 
#
interface GigabitEthernet1/0/2
 port link-type trunk                                                           
 port trunk allow-pass vlan 20 
#
interface GigabitEthernet2/0/1
 port link-type trunk                                                           
 port trunk allow-pass vlan 10 20 
 traffic-policy tp1 outbound
#
return 
相关推荐
feng_you_ying_li19 小时前
linux之数据链路层
linux·网络·智能路由器
国科安芯21 小时前
人在回路中的总线:商业空间站环境控制与生命保障系统CANFD网络的可靠性与功能安全
网络·嵌入式硬件·安全·架构·php·抗辐射
SoFarAway21 小时前
拆解华为一碰传
华为·逆向
国科安芯1 天前
算力上天之后的电与静:星上边缘计算载荷带外管理网络的低功耗调度与辐射容错
网络·人工智能·嵌入式硬件·安全·边缘计算·低轨卫星·商业航天
wdeok1 天前
Socket编程UDP-简单的聊天室
网络·网络协议·udp
QXWZ_IA1 天前
定位数据怎么推给 IoT 平台?消息协议选型与接入准备
网络·人工智能·物联网·安全
wdeok1 天前
Socket编程Tcp
服务器·网络·tcp
钉先生贾1 天前
毕业项目:从上游更新到回归发布的完整维护闭环
华为·harmonyos
行者-全栈开发1 天前
【鸿蒙心迹】权限申请全流程——从声明到用户授权的完整链路(HarmonyOS 7.x)
华为·harmonyos
xiaoye-duck2 天前
《C++ 项目:手写大模型接入 SDK》Ollama接口设计(上):初始化、全量响应实现和测试
开发语言·网络·c++·语言模型