ACL与包过滤 技术培训中心
学习目标 了解ACL的作用与分类 了解ACL的基本规则 掌握用ACL进行包过滤 8
课程内容 第一章 ACL 第二章 包过滤
技术背景 引入ACL的技术背景 网络中数据流的多样性 用户要求对某些特定的数据流采取特殊的策略 需要一种工具来挑选感兴趣的数据流 只允许特定的主机访问服务器 限制FTP流量占用的带宽 过滤某些路由信息 需要一种工具来挑选感兴趣的数据流
ACL概述 Access Control list 访问控制列表 ACL作用 对网络设备上的数据流进行分类识别的工具 包过滤 允许或者拒绝特定的数据流经网络设备,保证网络安全 其它 QoS 策略路由 路由过滤
ACL的分类 IPv4 ACL IPv6 ACL 其他 根据命名规则 标准IP ACL 扩展IP ACL 基于MAC的ACL(MAC ACL) 专家ACL(Expert ACL) 根据命名规则 编号ACL 命名ACL
ACL的工作原理 ACL的组成 ACL工作原理 由一组具有相同编号或者名字的访问控制规则组成(ACL规则) 规则中定义检查字段 由Permit/deny定义执行的动作 ACL工作原理 通过编号或者名字调用ACL 网络设备根据ACL规则检查报文,并采取相应操作
ACL基本规则 ACL规则匹配顺序 一个ACL中至少要有一条Permit规则 经常匹配的、细化的语句放在前面 从上至下 当报文匹配某条规则后,将执行操作,跳出匹配过程 缺省最后隐含一条“deny any”的规则 一个ACL中至少要有一条Permit规则 经常匹配的、细化的语句放在前面
标准IP ACL 标识方法 编号 1~99和1300~1999 命名 standard 定义字段 源IP地址信息
配置标准IP ACL 全局配置模式 ACL配置模式 ruijie(config)#access-list access-list-number { permit | deny } { any | source source-wildcard } [ time-range time-range-name ] ACL配置模式 ruijie(config)# ip access-list standard { name | access-list-number } Ruijie(config-std-nacl)#{ permit | deny } { any | source source-wildcard } [ time-range time-range-name ] Ruijie(config)#ip access-list standard sample Ruijie(config-std-nacl)#permit 172.16.1.0 0.0.0.255
扩展IP ACL 标识方法 编号 100~199和2000~2699 命名 定义字段 源IP地址、目的IP地址、协议、源端口、目的端口
配置扩展IP ACL 全局配置模式 ruijie(config)#access-list access-list-number { deny | permit } protocol { any | source source-wildcard } [ operator port ] { any | destination destination-wildcard } [ operator port ] [ precedence precedence ] [ tos tos ] [ time-range time-range-name ] [ dscp dscp ] [ fragment ] Ruijie(config)#access-list 101 deny ip 172.16.2.0 0.0.0.255 host 192.168.6.8 Ruijie(config)#access-list 101 permit any any
配置扩展IP ACL ACL配置模式 ruijie(config)# ip access-list extended { name | access-list-number } Ruijie(config-ext-nacl)#{ permit | deny } protocol { any | source source-wildcard } [ operator port ] { any | destination destination-wildcard } [ operator port ] [ time-range time-range-name ] [ dscp dscp ] [ fragment ] Ruijie(config)#ip access-list extended sample Ruijie(config-ext-nacl)#permit tcp 172.16.1.0 0.0.0.255 192.168.6.10 eq www
IPv6 ACL 标识方法 定义字段 命名 扩展ACL 源IPv6地址、目的IPv6地址、下一跳头部、源端口、目的端口等信息 Ethernet IPv6头部 TCP/UPD DATA 源 目标IPv6地址 源 目标端口号 下一跳头部
配置IPv6 ACL ACL配置模式 Ruijie(config)#ipv6 access-list name Ruijie(config-ipv6-acl)#sn]{ permit | deny } protocol { source IPv6-prefix/prefix-len |host source-ipv6-address |any } [ operator port ] { any | destination IPv6-prefix/prefix-len |host source-ipv6-address |any } [flow-label ] [ time-range time-range-name ] [ dscp dscp ] [ fragment ] Ruijie(config)#ipv6 access-list sample Ruijie(config-ipv6-acl)#permit ipv6 2001::/64 any
MAC ACL 标识方式 编号:700~799 命名 定义字段 源MAC地址、目的MAC地址、以太网类型
配置MAC ACL 全局配置模式 ACL配置模式 ruijie(config)#access-list access-list-number { permit | deny } { any | host source-mac-address } { any | host destination-mac-address } [ ethernet-type ] [ time-range time-range-name ] ACL配置模式 Ruijie(config)#mac access-list extended { name | access-list-number } Ruijie(config-mac-nacl)# { permit | deny } { any | host source-mac-address } { any | host destination-mac-address } [ ethernet-type ] [ time-range time-range-name ]
专家ACL 标识方法 编号:2700~2899 命名 过滤元素 源MAC地址、目的MAC地址、以太网类型、源IP地址、目的IP地址、协议、源端口、目的端口
配置专家 ACL 全局配置模式 ACL配置模式 ruijie(config)#access-list access-list-number { permit | deny } [ protocol | ethernet-type ] [ VID vid ] [ { any | source source-wildcard } ] { host source-mac-address | any } [ operator port ] [ { any | destination destination-wildcard } ] { host destination-mac-address | any } [ operator port ] [ precedence precedence ] [ tos tos ] [ time-range time-range-name ] [ dscp dscp ] [ fragment ] ACL配置模式 Ruijie(config)# expert access-list extended { name | access-list-number } Ruijie(config-exp-nacl)# 。。。。。。
基于时间的ACL 基于时间的ACL 时间段 在ACL规则中使用time-range参数引用时间段 任何类型的ACL都可以应用时间段 未引用时间段的规则将不受影响 确保设备的系统时间的正确 时间段 绝对时间段(absolute) 周期时间段(periodic)
配置基于时间 的ACL 配置时间段 配置绝对时间 配置周期时间 Ruijie(config)#time-range name Ruijie(config-time-range)# absolute { start time [ end time ] 配置周期时间 Ruijie(config-time-range)# periodic time to time
ACL规则的修改 全局模式下编号ACL规则的修改 ACL配置模式下ACL规则的修改 新规则添加到ACL的末尾 无法单独删除某条规则 建议: 导出配置文件进行修改 将ACL规则复制到编辑工具进行修改 删除所有ACL规则重新编写 ACL配置模式下ACL规则的修改 可以给ACL规则编序号,按照序号查找匹配规则 可以在任意位置插入新的ACL规则 可以删除特定的ACL规则
课程内容 第一章 ACL 第二章 包过滤 23
包过滤 缺省情况下,网络设备会转发所有数据 在接口下绑定IP access-group (包过滤)命令,对流经该接口的数据进行过滤 包过滤对本地生成的外出的数据不生效
包过滤 Ruijie(config-IF)#ip access-group ACL in/out IN OUT
包过滤的配置 定义访问控制列表 在接口下调用访问控制列表 使用ACL定义规则 Permit表示放通,deny表示丢弃 通过多个相同编号或者名字的规则定义一系列相互关联的规则 在接口下调用访问控制列表 在接口下使用IP access-group调用访问ACL 通过IN/OUT定义方向
包过滤的调试 显示全部的访问控制列表 显示指定的访问控制列表 显示接口的访问列表应用 Router#show access-lists Router#show access-group interface 接口号
包过滤案例一 需求:172.16.1.0网段的主机不可以访问服务器172.17.1.1,其它主机访问服务器172.17.1.1不受限制。
包过滤案例二 需求:网段172.16.1.0中的主机能够访问172.17.1.1中的FTP服务和WEB服务,而对该服务器的其它服务禁止访问,可以访问172.17.1.2的任何服务
包过滤案例三 需求:上班时间(9:00~18:00)不允许员工的主机(172.16.1.0/24)访问Internet,下班时间可以访问Internet上的Web服务。
包过滤案例四 需求:只允许172.16.1.10这台主机远程telnet路由器 Router(config)#enable secret ruijie Router(config)#access-list 3 permit host 172.16.1.10 Router(confg)#line vty 0 4 Router(config-line)#password ruijie Router(config-line)#access-class 3 in
包过滤案例四 需求:只允许2001::/64这个网段的用户的数据通过 ruijie(config)#ipv6 access-list sample ruijie(config-ipv6-nacl)#permit ipv6 2001::/64 any ruijie(config)#int FA0/1 ruijie(config-if)#ipv6 enable ruijie(config-if)#ipv6 traffic-filter sample in 2001::/64 2001:301::/64
课程回顾 ACL的作用及分类 ACL的配置 包过滤与ACL
谢 谢!