目录
一、标准访问控制列表
1.1 ACL基本概念
访问控制列表ACL是一种基于包过滤的访问控制技术,可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃,访问控制列表被广泛地应用于路由器和三层交换机,借助于访问控制列表可以有效地控制用户对网络的访问,从而最大程度地保障网络安全
1.2 数据包五元组
源IP、目的IP、源端口、目的端口、协议
访问控制列表读取第三层(源IP、目的IP)、第四层包头(源端口和目的端口)的信息
根据预先定义好的规则对包进行过滤
目前所讲的是基于主机的访问控制。基于数据包的五元组进行过滤
1.3 数据流量走向问题
出 out:已经经过了路由器处理,正要离开路由器接口的数据包
进 in:已经到达路由器接口的数据包,即将被路由器处理
一般情况在入口处做ACL策略,可以减少路由器路由的工作量
访问控制列表的处理过程
当数据包到达访问控制组接口时,进行ACL匹配,如果没有一条规则匹配的上,最终数据包将被丢弃。因为默认有一条隐藏拒绝deny any any
1.4 ACL分类(思科设备)
1.4.1 标准ACL
基于源IP地址过滤数据包
标准访问控制列表的表号为1~99
一般策略在靠近源
1.4.2 扩展ACL
基于数据包五元组:源IP、目的IP、源端口、目的端口、协议来过滤数据包
扩展访问控制列表的表号为100~199
1.4.3 命名ACL
命名访问控制列表允许在标准和扩展访问控制列表中使用名称代替表号
没有表号,根据关键字区分是标准还是扩展的ACL
标准命名ACL是 standard
扩展命名ACL是 extended
1.5 配置标准的ACL
要求PC0不能访问 PC2
PC1不能访问PC2
第一步:划分网段配置IP实现网络互通
PC0 Ping PC2
PC1 ping PC2
第二步:配置标准ACL
Router(config)#
Router(config)#access-list
Router(config)#access-list 88 ?
deny Specify packets to reject
permit Specify packets to forward
remark Access list entry comment
Router(config)#access-list 88 deny ?
A.B.C.D Address to match
any Any source host
host A single host address
Router(config)#access-list 88 deny host 192.168.10.2
/* Router(config)#access-list 88 deny 192.168.10.2 0.0.0.0 */
/* 先拒绝再配置允许,ACL是从上往下进行匹配,若没有允许命令会有一条隐藏的deny any阻挡PC0流量通过 */
Router(config)#access-list 88 permit any
将ACL应用在g0/0 in方向上
Router(config)#int g0/0
/* 88是前面创建ACL的表号 要一致 */
Router(config-if)#ip access-group 88 ?
in inbound packets
out outbound packets
Router(config-if)#ip access-group 88 in
查看效果
1.6 补充内容
标识一个网段:192.168.10.0
255.255.255.0
标识单个主机:192.168.10.1
255.255.255.255 (32位子网)
ACL使用的是反掩码,因此标识一个IP地址是 A.B.C.D 0.0.0.0
1.7 总结配置标准ACL
Router(config)#access-list 表号(1~99)permit/deny host A.B.C.D
Router(config)#access-list 表号(1~99)permit/deny A.B.C.D 0.0.0.0
Router(config)#access-list 表号(1~99)permit any 允许所有IP访问
Router(config)#access-list 表号(1~99)deny any 拒绝所有IP访问
删除ACL
(在删除前要先在接口上取消ACL应用)
Router(config)#int g0/0
Router(config-if)#no ip access-group 表号(1~99)in
Router(config)#no access-list 表号(1~99)
查看ACL配置
show access-lists