访问控制列表ACL

时间:2024-07-07 10:54:11

一、什么是ACL

ACL(Access Control List,访问控制列表)是一种基于包过滤的访问控制技术。它可以根据预先设定的条件对数据包进行过滤,允许或拒绝其通过某个网络接口。ACL广泛应用于路由器和三层交换机上,用于控制用户对网络资源的访问,从而提升网络安全性。访问控制列表(ACL)在计算机网络安全中扮演着重要角色。其主要功能包括限制网络流量、提高网络性能、控制通信流量以及提供基本的网络访问安全手段。

二、ACL的原理

ACL的工作原理主要基于包过滤技术,通过一系列规则对数据包进行匹配和过滤,从而实现网络访问控制和安全防护。这些规则可以根据源地址、目的地址、协议类型以及端口号等条件进行精细筛选和控制。具体如下:

  1. ACL的处理流程
    • 调用方向:ACL可以在入方向和出方向调用。在入方向调用时,流量进入本地路由器并被处理;在出方向调用时,流量已经在本地路由器中处理过,准备离开。
    • 策略应用:入接口调用的ACL仅对本地设备生效,而出接口调用的ACL则会影响数据转发过程中的其他设备。
  2. ACL的匹配机制
    • 顺序匹配:ACL规则按编号从小到大排序,一旦某个规则被匹配,即停止进一步匹配。路由条目只会被匹配一次,避免了重复处理。
    • 隐含规则:未匹配任何规则的数据包默认被允许通过,这提供了灵活性同时也可能带来安全隐患。
  3. ACL的类型和功能
    • 基本ACL(标准访问控制列表):仅基于源IP地址进行过滤,适用于简单场景。
    • 高级ACL(扩展访问控制列表):可以匹配源/目的IP地址、协议类型及端口号,提供更精确的流量控制。
  4. ACL的应用场景
    • 企业网络访问控制:通过在接口入方向部署ACL,可以限制不同部门的访问权限,保护关键数据。
    • 防止病毒入侵:封堵常用病毒端口,防止恶意流量侵入内网。
    • 远程访问控制:限制只有特定IP地址能够远程登录网络设备,增强安全性。
  5. ACL的配置和管理
    • 创建和配置规则:根据需求创建相应类型的ACL,并定义具体的匹配规则及动作。
    • 应用和调试:将配置好的ACL应用于指定接口和方向,通过测试验证其效果,调整规则以优化性能。

三、标准 ACL 配置 

1、创建 ACL

Router(config)#access-list access-list-number {permit l deny} source

Router(config)#access-list 1 deny host 192.168.1.1

#拒绝某一台主机1
Router(config)#access-list 1 deny 192.168.1.1 0.0.0.0
#拒绝某一个网段3
Router(config)#access-list 1 deny 192.168.1. 0.0.0.255

2、删除 ACL 

Router(config)#no access-list access-list-number
Router(config)#no access-list 1

3、在接口上取消ACL的应用 

Router(config-if)#no ip access-group access-list-number {in | out]

Router(config-if)#no ip access-group 1 in

4、查看ACL配置

Router#show access-lists 

四、扩展 ACL 配置 

#举例: 拒绝网段192.168.1.0访问主机192.168.10.1的80端口

Router(config)#access-list 100 deny tcp 192.168.1.0 0.0.0.255 host 192.168.10.1 eg 80

#举例:拒绝主机192.168.1.1访问主机192.168.10.1的80端口
Router(config)#access-list100 deny tcp host 192.168.1.1 host 192.168.10.1 eg 80

将 ACL 应用于接口

Router(config)#int f0/9

Router(config-if)#ip access-group 100 in

在接口上取消 ACL 的应用

Router(config-if)#no ip access-group 10 in