9ACL访问控制列表

为什么要有访问控制(Access Control List)?

因为我可能在局域网中提供了一些服务,我只希望合法的用户可以访问,其他非授权用户不能访问。

原理比较简单,通过对数据包里的信息做过滤,实现访问控制。大家也能看出来,这个配置需要工作在路由器上。

基本访问控制列表

基本访问控制,主要是通过IP地址进行控制,在操作上主要有三步:

这里说明一点:基本访问控制列表使用的是 2000 到 2999,高级访问控制列表使用的是3000到3999。

高级访问控制列表

基本访问控制,能够配置的内容比较少,高级访问控制能够配置的内容就比较多了:

规则的写法

动作 协议类型 可选参数
tcp 地址:source 源地址 反掩码 destination 目的地址 反掩码
rule {permit | deny} ip 端口:source-port {eq|gt|lt|neq} port destination-port {eq|gt|lt|neq} port
icmp ICMP: icmp-type 报文类型名
时间段:time-range time-name(提前定义的)

实战

先啥都不连线,不配置,启动路由器。配置PC的IP地址和路由器网关

csharp 复制代码
[RT1]inter GigabitEthernet 0/0
[RT1-GigabitEthernet0/0]ip add 172.16.1.2 24
[RT1-GigabitEthernet0/0]quit
[RT1]inter GigabitEthernet 0/1
[RT1-GigabitEthernet0/1]ip add 172.16.2.2 24
[RT1-GigabitEthernet0/1]quit
[RT1]inter GigabitEthernet 0/2
[RT1-GigabitEthernet0/2]ip add 172.16.3.2 24
[RT1-GigabitEthernet0/2]quit

配置完后,因为路由器静态路由的功能,能看到互相通了

css 复制代码
[RT1]display ip routing-table

Destinations : 16       Routes : 16

Destination/Mask   Proto   Pre Cost        NextHop         Interface
0.0.0.0/32         Direct  0   0           127.0.0.1       InLoop0
127.0.0.0/8        Direct  0   0           127.0.0.1       InLoop0
127.0.0.1/32       Direct  0   0           127.0.0.1       InLoop0
127.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0
172.16.1.0/24      Direct  0   0           172.16.1.2      GE0/0
172.16.1.2/32      Direct  0   0           127.0.0.1       InLoop0
172.16.1.255/32    Direct  0   0           172.16.1.2      GE0/0
172.16.2.0/24      Direct  0   0           172.16.2.2      GE0/1
172.16.2.2/32      Direct  0   0           127.0.0.1       InLoop0
172.16.2.255/32    Direct  0   0           172.16.2.2      GE0/1
172.16.3.0/24      Direct  0   0           172.16.3.2      GE0/2
172.16.3.2/32      Direct  0   0           127.0.0.1       InLoop0
172.16.3.255/32    Direct  0   0           172.16.3.2      GE0/2
224.0.0.0/4        Direct  0   0           0.0.0.0         NULL0
224.0.0.0/24       Direct  0   0           0.0.0.0         NULL0
255.255.255.255/32 Direct  0   0           127.0.0.1       InLoop0

三台机器也可以相互ping通。假设我不想让PC3连到PC2,我可以在路由器的GE0/0添加限制

配置规则

csharp 复制代码
[RT1]acl number 2000
[RT1-acl-ipv4-basic-2000]rule deny source 172.16.1.0 0.0.0.255

在GE0/0启用规则

csharp 复制代码
[RT1]int g0/0
[RT1-GigabitEthernet0/0]firewall packet-filter 2000 inbound

比较尴尬的一点是,HCL上的路由器貌似识别不了firewall的命令,所以本次就不继续演示了。其实命令也展示的差不多了,配置规则,然后再指定接口启用规则就可以了。

总结

路由器的访问控制能力,是否有用或者有用到什么程度得看具体场景。如果是同公司的两个分区(A、B)通过互联网相连,A里的服务只允许B访问,虽然可以通过ACL控制,但不安全啊。意味着只要进入B公司连入内网就可以访问了。

相关推荐
小Ti客栈8 小时前
Spring Boot 集成 Springdoc-OpenAPI 与 Knife4j实现接口文档与可视化调试
java·spring boot·后端
Ai拆代码的曹操9 小时前
Spring 事务 REQUIRES_NEW 嵌套调用:连接池翻倍的秘密
java·后端·spring
可爱系程序猿10 小时前
Windows 打印链路诊断:从设备枚举、TCP/IP 端口到 Spooler 服务恢复
网络·网络协议·tcp/ip
IT_陈寒11 小时前
SpringBoot这个分页坑,我踩了三天才爬出来
前端·人工智能·后端
颜酱11 小时前
05 | 召回前置准备:根据业务数据库生成各数据库(读取配置阶段)
前端·人工智能·后端
Wang's Blog11 小时前
Go-Zero项目开发24: 基于Bitmap实现群聊消息已读未读
开发语言·后端·golang
Conan在掘金11 小时前
鸿蒙报错速查:struct 里嵌 namespace 声明就炸,根因 + 真解法
后端
东方小月12 小时前
从零开发一个 Coding Agent(三):EventStream 事件流通道设计与实现
前端·人工智能·后端
卫子miao12 小时前
如何评价当前大语言模型的记忆机制?
后端·架构
神奇小汤圆12 小时前
为什么 AQS 成为 Java 并发的基石?
后端