路由器接口上的“防火墙”——访问控制列表

众所周知,无论在哪个系统上都有防火墙的存在,帮助计算机/服务器网络于其内、外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的一种技术。

而在路由器上同样也有一种“防火墙”,被称为——访问控制列表。该列表应用于路由器接口,通过该列表来告诉路由哪些数据包需要过滤,哪些可以通过。下面我将详细为大家进行讲解。

ACL(access control list):访问控制列表

主要用于在路由、三层交换中建立包过滤防火墙。访问控制列表基于TCP/IP协议中的三层(依靠IP地址)、四层(依靠端口与协议)进行过滤。同时还有一种专业的应用防火墙,基于七层进行过滤。

过滤的策略则是根据人为定义好的规则对数据包进行过滤,主要依靠 :源地址、目的地址、源端口、目的端口,这四个元素。

主要分为以下几个大类

标准型访问控制列表

​ 只能基于源IP 地址过滤

​ 该种列表的访问控制列表号为1~99

扩展访问控制列表

​ 基于源IP、目的IP、指定协议、端口、标志过滤数据

​ 该种列表的访问控制列表号为100~199

命名访问控制列表——包含标准访问和扩展访问

​ 该种列表允许在标准和扩展列表中使用“名称代替表号”

标准IPX访问

扩展IPX访问

命名的IPX访问

PS:本次博客将对前三个类型进行详细的解释。

ACL(访问控制列表)的处理过程

路由器接口上的“防火墙”——访问控制列表_第1张图片

对上面流程的具体解释:

白名单 黑名单
允许(假设允许192.168.1.2) 拒绝(假设拒绝192.168.1.2)
允许(假设允许192.168.1.3) 拒绝(假设拒绝192.168.1.3)
。。。 。。。
拒绝所有(可以不写)默认为拒绝所有 允许所有(必须写)默认隐含为拒绝所有

匹配规则: 自上而下、逐条匹配。最后一条默认隐含拒绝所有。

以上就是有关ACL(访问控制列表)的理论相关,下面开始进行相关的配置命令的讲解。

标准访问控制列表配置命令

创建ACL

Router(config)#access-list access-list-number {permit | deny} source [source-wildcard]

access-list-number: 访问控制列表表号

permit | deny:允许数据包通过 | 拒绝数据包通过

source [source-wildcard]:源IP + 子网掩码反码(any表示所有IP、host表示某个特定主机)

删除ACL

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

将ACL应用于/取消应用接口

Router(config-if)#ip access-group access-list-number {in|out}   //应用于接口
Router(config-if)#no ip access-group access-list-number {in|out}     //取消在接口上的应用

{ in | out }:表示ACL应用于限制方的数据流向在路由器的进口还是出口(通常放在里限制方近的一端 in口)

扩展访问控制列表配置命令

创建ACL

Router(config)#access-list access-list-number {permit | deny} protocol { source source-wildcard destination destination-wildcard } [operator operan]

protocol:协议名称(TCP、UDP、ICMP、IP......)

source source-wildcard:源IP + 子网掩码反码(any表示所有IP、host表示某个特定主机)

destination destination-wildcard:目标IP + 子网掩码反码

operator operan:端口号

删除ACL

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

将ACL应用于/取消应用接口

Router(config-if)#ip access-group access-list-number {in|out}   //应用于接口
Router(config-if)#no ip access-group access-list-number {in|out}     //取消在接口上的应用

以上,就是全部的有关ACL的理论以及配置相关命令的详解。未完待续。。。。。。