ACL访问控制列表
访问控制列表是一种基于规则的网络安全机制,用于控制对网络资源的访问。ACL可以应用于路由器、交换机、防火墙等网络设备上,以决定哪些数据包可以进入或离开网络。
分类:
- 基本ACL(2000-2999):只能匹配源IP地址,配置相对简单,适用于基于源地址的访问控制
- 高级ACL(3000-3999):可以匹配源IP、目的IP、源端口、目的端口等,提供更细粒度的控制
- 二层ACL(4000-4999):根据数据包的源MAC地址、目的MAC地址等二层信息制定规则
ACL应用原则:
- 基本ACL尽量用在靠近目的网络的设备上
- 高级ACL尽量用在靠近源网络的设备上,以保护带宽和其他资源
ACL应用方向:
- 入方向(Inbound):数据包到达接口,即将被路由器处理
- 出方向(Outbound):数据包已经过路由器处理,正准备离开接口
注:
- 一个接口的同一个方向只能调用一个ACL
- ACL规则按编号顺序执行,一旦匹配规则,不再继续向下匹配
- 删除ACL或规则时,请确认没有业务正在引用,以免造成业务中断
- 不同产品有不同特性。默认情况下,思科产品:如果未明确允许,则拒绝访问;华为产品则是要根据具体产品来确定是否放行或拒绝访问。
ACL华为命令配置:
基本配置:
[Huawei] system-view
[Huawei] acl number 2001 // 创建ACL,编号2001
[Huawei-acl-basic-2001] rule permit source 172.16.105.0 0.0.0.255 // 允许172.16.105.0/24网段
[Huawei-acl-basic-2001] rule deny source any // 拒绝其他网段
[Huawei-acl-basic-2001] quit
高级配置:
[Huawei] system-view
[Huawei] acl 3002 // 创建高级ACL
[Huawei-acl-adv-3002] rule deny ip source 10.164.2.0 0.0.0.255 destination 10.164.9.9 0.0.0.0 time-range satime // 在指定时间范围内禁止访问
[Huawei-acl-adv-3002] quit
出站和入站:
[Huawei] interface GigabitEthernet0/0/1
[Huawei-GigabitEthernet0/0/1] traffic-filter inbound acl 3002 // 入站流量应用ACL 3002
[Huawei-GigabitEthernet0/0/1] quit
配置时间范围的ACL示例:
如果ACL需要在特定时间生效,可以配置时间范围。
[Huawei] time-range work_hours 08:00 to 17:00 working-day // 定义工作时间为工作日的08:00至17:00
[Huawei] acl number 3000
[Huawei-acl-adv-3000] rule permit tcp source 192.168.1.0 0.0.0.255 destination 192.168.2.0 0.0.0.255 time-range work_hours // 允许工作时间的TCP流量
[Huawei-acl-adv-3000] quit
删除ACL规则
//删除某个ACL中的某条规则
[Huawei] acl 3001
[Huawei-acl-adv-3001] undo rule 5
[Huawei-acl-adv-3001] quit
//删除整个ACL
[Huawei] acl 2001
[Huawei-acl-basic-2001] undo acl
[Huawei-acl-basic-2001] quit
例子1:使用基本ACL过滤数据流量
配置需求:
在Router上部署基本ACL后,ACL将试图穿越Router的源地址为192.168.1.0/24网段的数据报过滤掉,并放行其他流量,从而禁止192.168.1.0/24网段的用户访问Router右侧的服务器网络。
步骤一:Router完成IP地址和路由的相关配置
步骤二:在Router上创建基本ACL,禁止192.168.1.0/24网段访问服务器网络
[Router] acl 2000
[Router-acl-basic-2000] rile deny source 192.168.1.0 0.0.0.255
[Router-acl-basic-2000] rule permit source any
步骤三:由于从接口GE0/0/1进入Router,所以在接口GE0/0/2的入方向配置流量过滤
[Router] interfacce GigbitEthernet 0/0/1
[Router-GigbitEthernet0/0/1] traffic-filter inbound acl 2000
[Router-GigbitEthernet0/0/1] quit
例子2:使用高级ACL限制不同网段的用户互访
配置需求:
公司通过Router实现各部门之间的互连。为方便管理网络,管理员为公司的研发部和市场部规划了两个网段的IP地址。现在要求Router能够限制两个网段之间互访,防止公司机密泄露。
步骤一:Router完成IP地址和路由的相关配置
步骤二:创建高级ACL 3001并配置ACL规则,拒绝研发部访问市场部
[Router] acl 3001
[Router-acl-adv-3001]rule deny ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255
[Router-acl-adv-3001]quit
步骤三:创建高级ACL 3002并配置ACL规则,拒绝市场部访问研发部
[Router] acl 3002
[Router-acl-adv-3002]rule deny ip source 10.1.2.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
[Router-acl-adv-3002]quit
步骤四:由于研发部和市场部互放的流量分别从接口GE0/0/1和GE0/0/2进入Router,所以在接口GE0/0/1和GE0/0/2的入方向配置流量过滤
[Router]interface GigabitEthernet0/0/1
[Router-GigabitEthernet0/0/1]traffic-filter inbound acl 3001
[Router-GigabitEthernet0/0/1]quit
[Router]interface GigabitEthernet0/0/2
[Router-GigabitEthernet0/0/2]traffic-filter inbound acl 3002
[Router-GigabitEthernet0/0/2]quit