当前位置: 首页 > news >正文

华为自反ACL实验

一、实验背景
做这个实验的原因是最近公司里上了三台小程序服务器,由于三台服务器的端口都映射出去了,领导要求A网段的三台服务器不能访问内网B,C网段,同时B、C网段内网用户可以访问A段的94、95、96服务器;
也就是PC4\PC5可以访问PC1\PC2\PC3,但PC1\PC2\PC3不能访问PC4\PC5.

说明:真机型号交换机(S5720-36C-EI),ENSP模拟器的交换机是不能实现自反ACL的,所以我使用了AR系列的路由器。

二、拓扑图如下,基本符合真实环境。
在这里插入图片描述LSW1是没有做任何配置;
AR1和AR4之间只用了简单的默认路由,我的目的是ACL所以网通了就行;
自反ACL:自反ACL是动态生成的,会根据实时的会话请求自动创建和删除规则

三、自反ACL使用说明最好看下官方资料, 还有就是出入方向(inbound和outbound)选择,自反ACL也能实现B、C网段不能访问A网段,同时A网段可以访问B、C网段。

四、ACL命令配置,在AR1上配置,ACL作用在AR1 G0/0/1接口的出方向上
AR1
acl 3000

1、 ##允许94、95、96三台服务器的syn+ack报文通过,允许对B网段发起tcp连接进行回应。
rule 50 permit tcp source 172.17.16.94 0 destination 172.17.0.0 0.0.255.255 tcp-flag ack syn
rule 60 permit tcp source 172.17.16.95 0 destination 172.17.0.0 0.0.255.255 tcp-flag ack syn
rule 70 permit tcp source 172.17.16.96 0 destination 172.17.0.0 0.0.255.255 tcp-flag ack syn

2、####允许94、95、96三台服务器的syn+ack报文通过,允许对C网段发起tcp连接进行回应。
rule 71 permit tcp source 172.17.16.95 0 destination 192.168.0.0 0.0.255.255 tcp-flag ack syn
rule 72 permit tcp source 172.17.16.94 0 destination 192.168.0.0 0.0.255.255 tcp-flag ack syn
rule 73 permit tcp source 172.17.16.96 0 destination 192.168.0.0 0.0.255.255 tcp-flag ack syn

3、####拒绝A网段主动发起对B网段的TCP连接的syn请求报文通过。
rule 100 deny tcp source 172.17.16.95 0 destination 172.17.0.0 0.0.255.255 tcp-flag syn
rule 110 deny tcp source 172.17.16.94 0 destination 172.17.0.0 0.0.255.255 tcp-flag syn
rule 120 deny tcp source 172.17.16.96 0 destination 172.17.0.0 0.0.255.255 tcp-flag syn

4、####拒绝A网段主动发起对C网段的TCP连接的syn请求报文通过。
rule 121 deny tcp source 172.17.16.94 0 destination 192.168.0.0 0.0.255.255 tcp-flag syn
rule 122 deny tcp source 172.17.16.95 0 destination 192.168.0.0 0.0.255.255 tcp-flag syn
rule 123 deny tcp source 172.17.16.96 0 destination 192.168.0.0 0.0.255.255 tcp-flag syn

5、##拒绝94、95、96网段到B网段的echo请求报文通过,防止服务器被攻击后主动发起ping连通性测试。
rule 150 deny icmp source 172.17.16.94 0 destination 172.17.0.0 0.0.255.255 icmp-type echo
rule 160 deny icmp source 172.17.16.95 0 destination 172.17.0.0 0.0.255.255 icmp-type echo
rule 170 deny icmp source 172.17.16.96 0 destination 172.17.0.0 0.0.255.255 icmp-type echo

6、###拒绝94、95、96网段到C网段的echo请求报文通过,防止服务器被攻击后主动发起ping连通性测试。
rule 171 deny icmp source 172.17.16.94 0 destination 192.168.0.0 0.0.255.255 icmp-type echo
rule 172 deny icmp source 172.17.16.95 0 destination 192.168.0.0 0.0.255.255 icmp-type echo
rule 173 deny icmp source 172.17.16.96 0 destination 192.168.0.0 0.0.255.255 icmp-type echo

7、##允许其他IP的访问。
rule 200 permit ip

8#(如果是拒绝BC访问A网段三台服务器,同时A段三台服务器可以访问BC网段的话,ACL则需要应用在inbound上,ACL的源目的地址调换位置就可以)。
int g 0/0/1
##应用在G0/0/1/接口的出方向上
traffic-filter outbound acl 3000

验证:
**1、PC4\PC5可以正常ping通PC\123**实验结果BC网段可以正常访问A段的三个服务器地址;
在这里插入图片描述
在这里插入图片描述
2、PC1\PC2\PC3pingPC4\PC5,测试结果无法ping通,A段三个服务器无法访问B、C段,很好的完成了本次实验的需求。
在这里插入图片描述
在这里插入图片描述
可以在AR1上执行dis acl all 查看一下策略匹配次数;
在这里插入图片描述

如有问题可以留言或者加群交流 478075018

相关文章:

华为自反ACL实验

一、实验背景 做这个实验的原因是最近公司里上了三台小程序服务器,由于三台服务器的端口都映射出去了,领导要求A网段的三台服务器不能访问内网B,C网段,同时B、C网段内网用户可以访问A段的94、95、96服务器; 也就是PC4\…...

yml和xml分别代表什么

YML 和 XML 是两种不同的数据序列化格式,它们在软件开发和数据交换中有着广泛的应用: YAML (YAML Ain’t Markup Language): YAML 是一种用于数据序列化的人类可读语言。它被设计为易于阅读和编写,特别适合于配置文件。YAML 使用缩进来表示数…...

Qt多线程编程

在Qt中,多线程编程是一个常见的需求,特别是当你需要执行耗时的后台任务而不希望阻塞用户界面时。多线程编程它允许应用程序同时执行多个任务,从而提高性能和响应速度。Qt提供了一套完善的多线程支持,包括线程类(QThrea…...

springboot438校园志愿者管理系统(论文+源码)_kaic

摘 要 如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统校园志愿者管理系统信息管理难度大,容错率低&…...

PostgreSQL 常用运维SQL整理

一、查询并杀会话 -- 查询会话 select pid,usename,client_addr,client_port,query_start,query,wait_event from pg_stat_activity; -- 杀会话 select pg_terminate_backend(pid号); -- 使用如下命令自动生成杀会话语句 select datid,datname,pid,usesysid,usename,applicat…...

Debezium Oracle CTAS 解析器实现:基于 ANTLR 的 CREATE TABLE AS SELECT 语句解析

Debezium Oracle CTAS 解析器实现:基于 ANTLR 的 CREATE TABLE AS SELECT 语句解析 本文详细介绍了 Debezium Oracle 连接器中如何解析 CREATE TABLE AS SELECT (CTAS) 语句,通过具体的实现代码帮助读者理解 ANTLR 监听器在复杂 SQL 解析中的应用。 文章目录 Debezium Oracle…...

从零开始学docker(五)-可用的docker镜像

最近docker镜像都不能访问,目前亲测可用的docker镜像可用,并拉取mysql测试完成。 [缺点] docker search 查不到镜像的索引列表,只能手动查询索引目录(解决方案在最后)。 linux服务器vim打开镜像文件daemon.json vim /e…...

力扣——322. 零钱兑换

给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是无限的。 示…...

.Net_比对Json文件是否一致

简介 该方法用于比较两个Json文件是否完全一致,仅考虑内容若两个文件中的内容只是顺序不一致,内容是一样的,那么也代表这两个文件是相等的 实现代码 调用 using CompareJsonFiles;Console.WriteLine(" 输入信息 ");Console.WriteL…...

科研笔记:ARR 与 ACL rolling

1 ARR 介绍 ARR 提供 评审服务 —— 仅限评审 —— 对于提交的论文。评审不会针对特定会议/场所,但评审标准与传统会议的主会场长文或短文提交要求相同(如 ACL 或其他由 ACL 主办的重要会议) 2 提交论文进行 ARR 评审 提交截止日期 每两个…...

【2024】Camunda常用功能基本详细介绍和使用-上 (1)

这里写目录标题 前言一、 介绍基本概念介绍1.BPMN2.Form3.DMN 二、Camunda使用1、下载安装1.1、camunda-modeler:BPMN绘画工具1.2、camunda-bpm-run:web端控制页面 2、创建流程2.1、部署一个基础流程2.2、添加用户任务2.2.1、绑定表单2.2.1.1、Generated…...

用人话讲计算机:Python篇!(十二)正则运算+re模块

目录 一、正则表达式 (1)什么是正则表达式 (2)它的结构及使用 示例: 1.字符 . (←这里有个小点哦) 2.字符 | 3.字符 [ ] 4.字符^ 5.字符\d (3)补充&#xff…...

使用create-react-app创建工程时报错处理

1:全局安装create-react-app npm install -g create-react-app 2:切换到项目要创建的目录下 cd /d G:\vsCode_project\react 3:使用脚手架命令创建工程 create-react-app 项目名 项目名命名要遵循npm包命名规范:数字、小写字…...

C# 探险之旅:第三十五节 - 类型class之抽象类 (Abstract Class) 和 抽象方法 (Abstract Method)

👋 嗨,勇敢的探险家们!欢迎再次踏上C#的神秘之旅。今天,我们要进入一片既神秘又充满无限可能的领域——抽象类与抽象函数的奇幻森林。想象一下,你是一名勇敢的骑士,要在这片森林里寻找传说中的“编程之宝”…...

qt-C++笔记之父类窗口、父类控件、对象树的关系

qt-C笔记之父类窗口、父类控件、对象树的关系 code review! 参考笔记 1.qt-C笔记之父类窗口、父类控件、对象树的关系 2.qt-C笔记之继承自 QWidget和继承自QObject 并通过 getWidget() 显示窗口或控件时的区别和原理 3.qt-C笔记之自定义类继承自 QObject 与 QWidget 及开发方式…...

Cisco Packet Tarcer配置计网实验笔记

文章目录 概要整体架构流程网络设备互连基础拓扑图拓扑说明配置步骤 RIP/OSPF混合路由拓扑图拓扑说明配置步骤 BGP协议拓扑图拓扑说明配置步骤 ACL访问控制拓扑图拓扑说明配置步骤 HSRP冗余网关拓扑图拓扑说明配置步骤 小结 概要 一些环境配置笔记 整体架构流程 网络设备互连…...

使用torch模拟 BMM int8量化计算。

使用torch模型BMM int8计算。 模拟:BMM->softmax->BMM 计算流程 import torch import numpy as np torch.manual_seed(777) def int8_quantize_per_token(x: torch.Tensor, axis: int -1, attnsFalse):if x.dtype ! torch.float32:x x.type(torch.float32)…...

【FreeMarker】实现生成Controller根据模板勾选的内容查询

需求:根据模板列表勾选的字段查询列表数据 FreeMarker代码: /*** 分页列表查询** param ${entityName?uncap_first}* param pageNo* param pageSize* param req* return*///AutoLog(value "${tableVo.ftlDescription}-分页列表查询")ApiOp…...

深入理解 XPath:XML 和 HTML 文档的利器

XPath(XML Path Language)是一种用于在 XML 和 HTML 文档中定位节点的语言。它常用于 XML 解析、Web 数据抓取(如 Selenium 或 Scrapy)以及配置文件解析。本文将带你深入了解 XPath 的语法、功能及其在实际中的应用。 目录 一、什…...

DDR5 中的数据反馈判决均衡(DFE):全面解析与展望

目录 一、引言二、DFE原理三、DFE架构四、实现方案五、测试方法六、DFE效果七、成本与收益八、具体应用九、技术发展趋势十、参考文献 一、引言 DDR5 作为新一代内存标准,其中的数据反馈判决均衡(DFE)技术更是引人注目。DFE即判决反馈均衡&a…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

【Oracle APEX开发小技巧12】

有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容

基于 ​UniApp + WebSocket​实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配​微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法

深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...

在Ubuntu24上采用Wine打开SourceInsight

1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...

Java编程之桥接模式

定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

Java数值运算常见陷阱与规避方法

整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...