什么是访问控制列表ACL+Packet-filter
前几期我们学习到了一些路由协议,分别为RIP、OSPF和IS-IS。只要配置了路由协议,基本上就能够实现网络的互通。但要增强网络安全性,网络设备需要具备控制某些访问或某些数据的能力。ACL(访问控制列表)+Packet-Filter(包过滤)就是一种被广泛使用的网络安全技术 Packet-Filter(包过滤)工具用于筛选出所有数据包,通过ACL(访问控制列表)识别数据包并设置匹配条件,决定这些被匹配出的数据包是转发还是丢弃
- 包过滤功能(Packet-Filter):配置基于访问控制列表的包过滤,可以在保证合法用户的报文通过的同时拒绝非法用户的访问
- 网络地址转换(NAT):通过访问控制列表可以来规定哪些数据包需要进行网络地址转换哪些无需转换
- 服务质量(QoS):对不同类别的数据提供有差别的服务。
- 路由策略(Route-Policy)和路由过滤(Filter-Policy):路由器在发布与接收路由信息时,可能需要实施一些策略,以便对路由信息进行过滤
- 按需拨号:建立PSTN/ISDN等按需拨号连接时,需配置触发拨号行为的数据
包过滤配置在网络设备的接口上,并且具有方向性,每个接口均可在入方向和出方向配置包过滤且调用ACL(即一个接口的一个方向只能调用一个ACL) 流量同样也具有方向性,当数据包被网络设备接收时,就会收到该接口入方向的条件进行筛选匹配。反之,当数据包被网络设备转发时,就会收到该接口出方向的条件进行筛选匹配。如果没有在接口任何一个方向设置策略,则直接接收或转发(即数据包转发行为优先级最低,如果有策略应先执行策略再判定数据包是否通过) ACL规则的匹配条件主要包括数据包的源IP地址、目的IP地址、协议号、源端口号、目的端口号等,其实还可以有IP优先级、分片报文位、Mac地址、VLAN信息等。不同的ACL分类能够包含的匹配条件也不同 ACL规则的动作有两个:允许(Permit)或拒绝(Deny);Permit动作可以使数据包从该接口通过(这里的通过指的是接收或转发);而Deny动作使数据包从该接口无法通过 通配符掩码也是由0和1组成的长达32位的二进制数,也是以点分十进制表示。与子网掩码相同的是通过与IP地址执行比较操作来标识网络范围。但不同的是,通配符掩码的1表示"在比较中可以忽略相应的地址位,不同检查",地址位上的0表示"相应的地址位必须被检查"正掩码(子网掩码):由连续的1和0组成的32位二进制数,以点分十进制表示反掩码:通过正掩码取反,将正掩码1的部分变为0,正掩码0的部分变为1,以点分十进制表示通配符掩码:通过1和0来判定是否需要与IP对应的部分匹配,通配符掩码的0和1可以是不连续的,但反掩码是连续的,所以这里本人并不推荐将通配符掩码理解为反掩码 只根据报文的源IP地址信息指定规则,所以适用于过滤从特定网络来的报文的场景 根据报文的源IP地址、目的IP、协议类型、源端口号、目的端口号(也称数包五元组信息)进行制定规则,适用于过滤某些网络中的应用及过滤精确的数据流的情况 可根据报文的源Mac地址、目的Mac地址、VLAN优先级、二层协议类型等二层信息指定规则