端口安全技术原理与应用
目录
概述
端口安全原理
端口安全术语
二层安全地址配置
端口模式下配置
全局模式下配置
动态学习
二层数据包处理流程
三层安全地址配置
三层数据包处理流程
端口安全违例动作和安全地址老化时间
查看命令
端口安全的注意事项
小结
概述
- 园区网的接入安全关系着使用者的信息安全,因此既要保证合法用户正常接入,也要防止非法用户的接入。两者均要满足的情况下,就需要接入设备能够辨别哪些报文是合法的,哪些是非法的;
- 设备MAC表项资源有限,需要一种技术,能够防止设备遭受MAC扫描攻击时导致MAC表项耗尽;
- 端口安全是实现以上需求的技术之一
端口安全原理
- 基本原理:通过在端口绑定合法地址的方法来限制端口的接入访问
- 实现方式:在接入交换机上建立端口和MAC、IP,或MAC+IP的对应关系表,对该端口收到的报文进行控制。当该端口收到符合对应关系的报文时,进行正常转发,当收到的不符合该对应关系的报文进行下一步判断
端口安全术语
安全端口:1.锐捷设备只有Access端口可以配置为安全端口,并且不能是端口镜像目的端口
锐捷设备的端口安全功能默认关闭
安全地址:在安全端口上绑定的地址称为安全地址
二层安全地址:即基于MAC的安全地址
三层安全地址:即基于IP或IP+MAC的安全地址
安全地址绑定方式:
--静态绑定方式,即手工命令进行,可以绑定二层和三层安全地址(即MAC、IP、MAC+IP)
--动态绑定方式,即让交换机自动学习地址并转化为安全地址,只能学习二层安全地址;
- 两种方式下都可以配置最大的安全地址限制个数。默认为128个,通过限制安全地址个数的方式,防止设备遭受MAC扫描攻击时,MAC表项占满
端口安全违例动作:
Protect:端口安全默认动作,当违例产生时,安全端口将丢弃违例的报文;
Restrict:当违例产生时,将发送一个Trap通知;
Shutdown:当违例产生时,将关闭端口并发送一个Trap通知;
二层安全地址配置
端口模式下配置
- Ruijie(config)#interface gigabitEthernet 0/1
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security --开启端口安全功能
- Ruijie(config-if-GigabitEthernet 0/1)#switchport access vlan 2
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security mac-address 144f.d7c0.79c3 vlan 2 --如不配VLAN, 默认为接口VLAN
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security maximum 1 --配置安全地址限制数量,可选范围1-128,默认128
全局模式下配置
- Ruijie(config)#interface gigabitEthernet 0/1
- Ruijie(config-if-GigabitEthernet 0/1)#switchport access vlan 2
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security maximum 1 --配置安全地址限制数量,可选范围1-128,默 认128
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security --开启端口安全功能
- Ruijie(config)# switch port-security interface gigabitEthernet 0/1 mac-address 144f.d7c0.79c3 --全局模式下配置
动态学习
- Ruijie(config)#interface gigabitEthernet 0/2
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security --开启端口安全功能
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security mac-address sticky --开启二层安全地址动态学习功能
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security maximum 1 --配置安全地址限制数量,可选范围1-128, 默认128
二层数据包处理流程
- 端口收到数据流时,会对数据的报文地址进行解析。仅二层安全地址绑定时,步骤如下:
- 先解析报文的二层地址,如果源地址在安全地址列表中,则认为是合法报文;
- 如果不在安全地址列表,检查已经绑定的二层安全地址个数是否达到限制,如果未达到限 制,则把该地址在端口进行动态绑定,变为该端口的二层安全地址(显示为dynamic);
- 如果已经达到限制,认为发现非法报文,进行违例处理
三层安全地址配置
- 方式一:端口模式下,仅绑定IP
- Ruijie(config)#interface gigabitEthernet 0/1
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security
- Ruijie(config-if-GigabitEthernet 0/1)#switchport access vlan 2
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security binding 172.16.1.10
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security maximum 1
- 配置效果:该端口下只允许源IP地址为172.16.1.10(MAC地址无限制)的终端报文通过,其他地址的终端报文则无法通过
- 方式二:端口模式下,绑定IP+MAC
- Ruijie(config)#interface gigabitEthernet 0/1
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security
- Ruijie(config-if-GigabitEthernet 0/1)#switchport access vlan 2
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security binding 144f.d7c0.79c3 vlan 2 172.16.1.10
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security maximum 1
- 配置效果:该端口下只允许源Mac地址为144f.d7c0.79c3,且原IP地址为172.16.1.10的终端报文通过,其他终端接入后无法访问网络
三层数据包处理流程
1.当符合二层安全地址表项后,还需要匹配三层安全地址绑定才算是合法报文;
2.在仅三层绑定时,只需匹配IP地址,匹配成功则符合合法报文,否则丢弃;
3.在IP+MAC绑定时,需要同时匹配IP+MAC ,同时匹配成功才算合法报文,否则丢弃
配置了IP+MAC绑定或仅IP绑定,交换机还是会动态学习下联用户的MAC地址
(三层安全地址不占用安全地址条目,即安全地址条目限制只对二层安全地址生效)
匹配时,三层安全地址表只要有一条匹配,则算匹配成功
端口安全违例动作和安全地址老化时间
- 违例动作:
- Ruijie(config)#interface gigabitEthernet 0/1
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security violation [ protect | restrict | shutdown ]
- Protect:发现违例,则丢弃违例的报文,默认违例动作为Protect
- Restrict :发现违例,则丢弃违例的报文并且发送Trap
- Shutdown:发现违例,则丢弃报文、并关闭接口
- 老化时间(对于所有的安全地址,到达老化时间后,安全地址将会老化掉,并可以重新进行学习或配置):
- Ruijie(config)#interface gigabitEthernet 0/1
- Ruijie(config-if-GigabitEthernet 0/1)#switchport port-security aging time [ static | time 0-1440 ]
- time:范围0-1440分钟。0则表示老化关闭,默认为0
- static :表示老化时间将同时应用于动态学习的安全地址和手工配置的安全地址
查看命令
查看所有的安全地址:
Show port-security address
查看所有的安全绑定:
Show port-security binding
查看所有生效的端口安全地址和端口安全绑定记录:
Show port-security all
查看某接口上的端口安全配置情况
Show port-security int g0/2
查看端口安全统计信息:
Show port-security
端口安全的注意事项
1.安全端口不能是SPAN的目的端口;
2.安全端口不能是DHCP Snooping信任端口;
3.端口安全和其他接入功能如全局IP+MAC安全地址绑定、IP Source Guard等共用时,必须 满足所有的安全检查才能进入交换机;
4.如果交换机同一VLAN下的0/1端口设置了端口安全(将PC1的MAC绑定),但是同VLAN 下的其他端口没有设置端口安全,那么PC1插到0/1口可以上网,但是插到其他端口是不能上网的
小结
- 端口安全技术可以基于手工配置或者动态学习的方式形成安全表项,设备会以安全表项为检查基线,对经过接口的报文进行合法性检查,对合法的报文转发,非法的报文采取不同的违例动作;
- 端口安全分为二层端口安全和三层端口安全,其中二层安全地址会占用安全地址表项以及安全地址限制数;
- 二层端口安全配置之下的报文处理流程:先检查报文源地址是否在安全地址表中,在则放行,不在则检查安全地址数是否达到最大限制,如果达到则丢弃报文,如果没达到则会将该地址学习到安全地址表中,并对报文进行转发;
- 三层端口安全配置之下的报文处理流程:三层安全地址表只要有一条匹配,则算匹配成功
- 二层和三层端口安全同时配置的情况下,当符合二层安全地址表项后,还需匹配三层安全地址绑定才算是合法报文
相关文章:
端口安全技术原理与应用
目录 概述 端口安全原理 端口安全术语 二层安全地址配置 端口模式下配置 全局模式下配置 动态学习 二层数据包处理流程 三层安全地址配置 三层数据包处理流程 端口安全违例动作和安全地址老化时间 查看命令 端口安全的注意事项 小结 概述 园区网的接入安全关系着…...

数据集-目标检测系列-鲨鱼检测数据集 shark >> DataBall
数据集-目标检测系列-鲨鱼检测数据集 shark >> DataBall 数据集-目标检测系列-鲨鱼检测数据集 shark 数据量:6k 数据样例项目地址: gitcode: https://gitcode.com/DataBall/DataBall-detections-100s/overview github: https://github.com/Te…...

数字乡村解决方案-3
1. 国家大数据战略与数字乡村 中国第十三个五年规划纲要强调实施国家大数据战略,加快建设数字中国,推进数据资源整合和开放共享,保障数据安全,以大数据助力产业转型升级和提高社会治理的精准性与有效性。 2. 大数据与数字经济 …...
WPF文本框无法输入小数点
问题描述 在WPF项目中,文本框BInding双向绑定了数据Text“{UpdateSourceTriggerPropertyChanged}”,但手套数据是double类型,手动输入数据时,小数点输入不进去 解决办法: 在App.xaml.cs文件中添加语句: …...
R开头的后缀:RE
RE表示方位上的向后,一种时空上的折返,和表示否定意味的不。 68.re- 空间顺序 ①表示"向后,相反,不" RE表示正向抵抗的力的词语,和情绪的词语,用来表示一种极力的反抗和拒绝,包括…...
Vue2配置环境变量的注意事项
在实际开发中时常会遇到需要开发环境与生产环境中一些参数的替换,为了方便线上线下环境变量切换可以利用node中的process进行环境变量管理 实现步骤如下: 1.在 根目录 新增环境文件 .env.development 和 .env.production 注意文件名称保持一致( 需要强调的是文件中的变量名切…...

机器学习:探索未知边界,解锁智能潜力
欢迎来到 破晓的历程的 博客 ⛺️不负时光,不负己✈️ 在这个日新月异的科技时代,机器学习作为人工智能领域的核心驱动力,正以前所未有的速度改变着我们的世界。从智能家居的个性化推荐到自动驾驶汽车的精准导航,从医疗诊断的辅助…...

万户OA-ezOFFICE fileUpload.controller 任意文件上传漏洞复现
0x01 产品描述: 万户OA(Office Automation)是一款企业级协同办公管理软件,旨在为企业提供全面的办公自动化解决方案。万户ezOFFICE存在任意文件上传漏洞。攻击者可以通过该远程下载任意文件到目标服务器,导致攻击者可获…...

Time-MoE : 时间序列领域的亿级规模混合专家基础模型
Time-MoE : 时间序列领域的亿级规模混合专家基础模型 时间序列预测一直是量化研究和工业应用中的重要课题。随着深度学习技术的发展,大规模预训练模型在自然语言处理和计算机视觉领域取得了显著进展,但在时间序列预测领域,这些模型的规模和运…...
Spring Boot入门指南
前言 Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。本文将详细介绍 Spring Boot 的基本概念、环境搭建、第一…...
MYSQL(学习笔记)
<div>深分页怎么优化?</div> <div>还是以上面的SQL为空:select * from xxx order by id limit 500000, 10;</div> <div>方法一:</div> <div>从上面的分析可以看出,当offset非常大时&am…...

学校周赛(1)
A - Short Sort 题目: 思路: 本条题目只允许改一处地方,只有三个字母,我们可以直接枚举所有移动过的结果,同时使用哈希去记录其值,对于每一个输入我们都寻找是否有这个值记录,有则输出YES否则…...

人生苦短,我用Python✌
面向代码的解释型语言 数据开发和AI 编程语言:让计算机了解我们干什么,翻译官 1.下载软件 解释器安装 点击第二个 改路径 D:\python 安装 测试 winr打开 输入代码 输出 退出环境 exit() 新建文本文档后缀改成py 编写 运行 安装编写代码…...
uniapp js判断key是否在json中?
推荐学习文档 golang应用级os框架,欢迎stargolang应用级os框架使用案例,欢迎star案例:基于golang开发的一款超有个性的旅游计划app经历golang实战大纲golang优秀开发常用开源库汇总想学习更多golang知识,这里有免费的golang学习笔…...
Codeforces Round 975 (Div. 2) C. Cards Partition
题目链接:题目 大意: 给出若干种卡片,每种卡片有一定数量,你可以加入不超过 k k k张任意已给出种类的卡片,使得它们可以被分成若干组,每组容量一定,且同组内不存在相同种类的卡片,…...

Qt 首次配置 Qt Creator 14.01 for Python
前言: 如何用QT实现Python的配置的交互界面。本文从0开始,进行实践的介绍。 在上一节里面,我们做了社区版本的配置: https://blog.csdn.net/yellow_hill/article/details/142597007?spm1001.2014.3001.5501 这一节࿰…...
【python】代码发布前检查- vulture:查找死代码
分析Python项目中未被使用的.py文件 Vulture: Vulture是一个专门用于查找Python代码中的死代码的工具。它可以识别未使用的代码,包括未导入的模块。 安装: pip install vulture使用: vulture your_project_directory...

Yolov10环境配置
参考文章:1.YOLOv10超详细环境搭建以及模型训练(GPU版本)-CSDN博客 2.Windows下安装pytorch教程(下载.whl的方式)_pytorch whl-CSDN博客 安装步骤和文件夹顺序一样 1.安装CUDA和cuDNN 1.1安装CUDA 1.1.1查看当前你的电脑显卡支持的最高CUD…...
iOS 提取图片的主题色,并支持灵活提取
遇到一个需求,要提取图片中的色调,但还有一点特殊的需求,就是不是提取颜色最多的色调,也不是平均的色调,是图片中偏暗的色调 这就需要我们动态的调整我们提取的算法, 下面就看代码 dispatch_async(dispatch…...
语雀笔记使用记录
初识语雀 语雀官网 语雀帮助 教你如何使用语雀提高效率 语雀极简使用指南 | 10个常用技巧,带你快速入门 语雀安装 语雀下载地址 根据自己的pc平台下载对应的版本,然后傻瓜式安装即可 初试语雀 语雀为云笔记,并且其特性比较符合我个人的需求…...
[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?
🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里…...

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

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

企业如何增强终端安全?
在数字化转型加速的今天,企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机,到工厂里的物联网设备、智能传感器,这些终端构成了企业与外部世界连接的 “神经末梢”。然而,随着远程办公的常态化和设备接入的爆炸式…...

用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...
C#学习第29天:表达式树(Expression Trees)
目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...