ACL概述
ACL : 访问控制协议(访问控制列表)
作用:
1.用来对数据包做访问控制(对其丢弃或直接放行)
2.其结合其他协议,匹配范围(传输层:tcp、udp);ACL可以控制协议的流量是否可以通过。
总结:ACL为访问控制,其确定流量是否能通过;=====》如果通过,则放行数据包;如果不通过则直接丢弃。
ACL特点
ACL可以配置多条规则策略;
ACL是根据报文来进行匹配和区分的
ACL规则
规则编号:用于标识ACL规则,默认开始为5,每段长5,即默认遵循5、10、15、......,所有规则均按照规则编号从小到大进行排序
动作:包括permit和deny两种动作,表示设备对所匹配的数据包接受或者丢弃
匹配项:ACL定义了许多匹配项,包括生效时间段、IP协议(ICMP、TCP、UDP等)、源地址或目的地址以及相应的端口号(21、80等)
通配符
IP地址通配符掩码与IP地址的反向子网掩码类似,也是一个32比特位的数字字符串,用于指示IP地址中的哪些位将被检查。各比特位中,“0”表示“检查相应的位”,“1”表示“不检查相应的位”,概括为一句话就是“检查0,忽略1”。但与IP地址子网掩码不同的是,子网掩码中的“0”和“1”要求必须连续,而通配符掩码中的“0”和“1”可以不连续。
通配符掩码可以为0,相当于0.0.0.0,表示源/目的地址为主机地址;也可以为255.255.255.255,表示任意IP地址
例:
拒绝源IP地址为192.168.1.10报文通过——因为通配符为全0(0.0.0.0),所以每一位都要严格匹配,因此匹配的是主机IP地址192.168.1.10;
允许源IP地址为192.168.1.0 /24 网段的报文通过——因为通配符为 0.0.0.11111111,后8位为1,表示主机位都可随意使用,因此192.168.1.XXXXXXXX ,其后8位可以为任意值,所以匹配的是192.168.1.0 /24这个网段。
常用的ACL
2000~2999 基本ACL:只能匹配源IP地址 。
3000~3999 高级ACL:高级ACL可以匹配源IP地址、目标地址,源端口、目标端口,还包括三层(ICMP)和四层(tcp、udp)的协议字段。
不常用的ACL
4000~4999 二层ACL:可根据报文的以太网帧头信息来定义规则,在公司的内部网络中,想对特定的终端进行访问权限控制,这时就需要二层ACL,使用二层ACL,可以根据源MAC地址、目的MAC地址、802.1p优先级、二层协议类型等二层信息对流量进行管控。
5000~5999 用户自定义ACL:可根据偏移位置和偏移量从报文中提取出一段内容进行匹配。
6000~6031 用户ACL:由于企业内部同部门的工作人员的终端不在同一个网段难以管理,需要将其纳入一个用户组,并对其用户组进行访问权限管理,这时候就需要用户ACL,用户ACL在高级ACL的基础上增加了用户组的配置项,可以实现对不同用户组的流量管控。
ACL遵循的规则(非必要,可依照情况改变)
基本ACL:非特殊情况下,一般设置在靠近其目的处;
高级ACL:在非特殊情况下,其尽量被使用在靠近源的地方
多条ACL策略的匹配原则
有则直接匹配,没有任何匹配的策略,则将其直接放通;
当匹配到一条后,后续的策略则不再去一 一匹配,而是直接判断匹配的第一条是permit(接受)还是deny(丢弃)。
特殊规则:
一个端口只能调用一个ACL策略
一般只deny进而不去deny出
ACL例图:
分别配置PC1 PC2 PC3 客户端1 服务器1的IP地址、子网掩码、网关地址
一、实现第一个目标: 仅允许pc1访问192.168.2.0/24网络(即仅允许p1访问pc3)
二、禁止192.168.1.0/24网络ping(icmp) web服务器
三、仅允许client1访问WEB服务器的www服务
实验一、
在路由器AR1配置其三个接口所对应的IP地址(三个网段各自的网关地址)
配置acl在对应接口并启用
测试是否成功
实验二、
配置对应的acl并启用至接口
测试
实验三、
抓包成功(三次握手,四次挥手)