华为——使用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 
相关推荐
爱笑的眼睛113 小时前
HarmonyOS TextArea 组件:文本输入区域的简单使用指南
华为·harmonyos
前端世界3 小时前
鸿蒙异步处理从入门到实战:Promise、async/await、并发池、超时重试全套攻略
华为·harmonyos
于冬恋3 小时前
RabbitMQ高级
服务器·网络·rabbitmq
tan77º5 小时前
【Linux网络编程】分布式Json-RPC框架 - 项目设计
linux·服务器·网络·分布式·网络协议·rpc·json
爱笑的眼睛115 小时前
HarmonyOS 递归实战:文件夹文件统计案例解析
华为·harmonyos
.Shu.5 小时前
计算机网络 各版本TLS握手的详细过程
网络·计算机网络
半路_出家ren5 小时前
路由综合实验RIP,OSPF,BGP
网络·网络协议·rip·ospf·ebgp·ibgp
张太行_7 小时前
网络SSL/TLS协议详解
网络·web安全·ssl
zhysunny7 小时前
Day22: Python涡轮增压计划:用C扩展榨干最后一丝性能!
c语言·网络·python
hhzz7 小时前
重温 K8s 基础概念知识系列八( K8S 高级网络)
网络·容器·kubernetes