华为-ACL访问控制列表

华为-ACL访问控制列表

ACL:access list 访问控制列表

acl 两种:
基本acl(2000-2999):只能匹配源ip地址。
高级acl(3000-3999):可以匹配源ip、目标ip、源端口、目标端口等三层和四层的字段。

四个注意事项:
注1:一个接口的同一个方向,只能调用一个acl
注2:一个acl里面可以有多个rule 规则,从上往下依次执行
注3:数据包一旦被某rule匹配,就不再继续向下匹配
注4: 用来做数据包访问控制时,默认隐含放过所有(华为设备)

ACL 两种作用:
① 用来对数据包做访问控制(丢弃或者放行)
② 结合其他协议,用来匹配范围

华为-ACL访问控制列表
在这里插入图片描述
配置静态路由使全网互通:
R1:ip route-static 172.16.10.0 24 12.1.1.2
R2:ip route-s 192.168.10.0 24 12.1.1.1
需求一:在R2配置基本acl 拒绝PC1 访问172.16.10.0 网络。
R2:

acl number 2000 创建acl 2000
rule deny source 192.168.10.1 0 拒绝源地址为192.168.10.1 的流量
int gi 0/0/1
traffic-filter outbound acl 2000 接口下出方向调用acl 2000
inbound:进入方向 站在路由器的角度考虑 数据包进入路由器“肚子”里面的时候
outbound:出方向 站在路由器的角度考虑 数据包从路由器的?肚子"向外发出时

调试命令:查看acl是否生效 (matches 数量)
华为-ACL访问控制列表
匹配了15个报文,拒绝了15个报文

需求二:在R2上配置高级acl

### 华为云网络ACL访问控制配置指南 华为云中的网络访问控制列表(Network ACL)是一种用于管理子网入方向和出方向流量的安全机制。它可以通过定义允许或拒绝特定类型的流量来增强网络安全性和隔离性。 #### 1. 网络ACL的基本概念 网络ACL是一个状态无关的安全层,适用于整个子网级别的流量过滤[^1]。与安全组不同的是,网络ACL支持显式的允许和拒绝规则,并且这些规则会应用于所有绑定到该子网的弹性云服务器(ECS)。 - **入方向规则**:控制进入子网的数据流。 - **出方向规则**:控制离开子网的数据流。 - 默认情况下,如果没有设置任何规则,则所有流量都将被拒绝。 #### 2. 创建和关联网络ACL 要使用网络ACL,首先需要创建一个新的网络ACL并将其与目标子网关联: ```bash # 登录华为云管理控制台 # 导航至虚拟私有云 (VPC) -> 网络ACL页面 # 点击“创建网络ACL”,填写名称和其他必要参数 ``` 完成创建后,将新建立的网络ACL应用到所需的子网上。注意,每个子网只能绑定一个网络ACL[^2]。 #### 3. 添加规则 在网络ACL详情页中,可以分别配置入方向和出方向的规则。每条规则都应指定以下几个要素: - **优先级**:数值越低,优先级越高;范围通常是从`1`到`32766`。 - **协议类型**:如TCP、UDP、ICMP或者ALL。 - **端口范围**:对于某些协议需指明具体端口号区间。 - **源/目标CIDR块**:限定哪些IP地址能够匹配此规则。 - **动作**:选择允许 (`Allow`) 或者拒绝 (`Deny`) 流量。 示例规则如下: | 优先级 | 类型 | 协议 | 端口 | CIDR | 动作 | |--------|---------|------|----------|----------------|-----| | 100 | 入方向 | TCP | 80 | 0.0.0.0/0 | Allow | | 200 | 出方向 | ALL | —— | 192.168.1.0/24 | Deny | 以上表格表示允许来自任意位置的HTTP请求到达子网内的设备,同时阻止所有发往本地局域网 `192.168.1.0/24` 的数据包[^3]。 #### 4. 调试与验证 如果发现配置后的网络ACL未能按预期工作,可能涉及以下几点问题: - 检查是否有冲突的高优级规则覆盖了当前设定; - 确认相关联的路由表是否正确指向外部网关; - 安全组策略也需要同步调整以配合新的网络ACL行为[^4]。 --- ### 示例代码片段 以下是通过API调用修改网络ACL的一个Python脚本例子: ```python import requests from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkecs.v2 import * def update_network_acl(acl_id, rules): credentials = BasicCredentials("your_ak", "your_sk", "region_name") client = EcsClient.new_builder() \ .with_credentials(credentials) \ .build() request = UpdateNetworkAclRequest( acl_id=acl_id, body=UpdateNetworkAclRequestBody(rules=rules) ) response = client.update_network_acl(request) print(response) if __name__ == "__main__": sample_rules = [ {"action": "allow", "protocol": "tcp", "port_range": "80", "cidr_block": "0.0.0.0/0"}, {"action": "deny", "protocol": "all", "cidr_block": "192.168.1.0/24"} ] update_network_acl("example-acl-id", sample_rules) ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值