首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

802.1x认证和MAC认证讲解802.1x基础802.1x认证MAC认证

  • 23-09-05 02:42
  • 3109
  • 11960
blog.csdn.net

目录

802.1x基础

EAP(Extensible Authentication Protocol)可扩展认证协议

EAPoL(EAP over LAN)局域网可扩展认证协议

802.1x体系架构

受控端口的受控方式

802.1x认证

802.1x认证触发方式

客户端退出认证

802.1x认证方式

MAC认证


802.1x基础

802.1x是一种基于端口的网络访问控制(NAC)协议,在接入设备的端口验证用户身份并控制其访问权限;802.1x协议使用EAP协议来完成身份验证,通过EAPoL在局域网传输EAP消息

EAP(Extensible Authentication Protocol)可扩展认证协议

EAP只是一个身份验证框架,可以承载携带多种认证协议(类似于IPSec),用于传输身份验证消息;802.1x与EAP结合,实现更好的扩展性和适应性,实现了对传统PPP认证架构的兼容

注意

  1. 802.1x是二层协议(不是纯粹的二层),不需要到达三层,所以对接入设备的整体性能要求不高
  2. EAP协议本身并不涉及身份验证方法的实现,只是提供了一个通用框架,使得各种不同的身份验证方法都可以在其上实现
  3. EAP报文可以通过配置二层透传的方式进行传输(使得接入设备不处理EAP报文)

EAP体系架构

EAP支持TLS、MD5(就是做CHAP的认证方式)、PEAP、PHP等认证方式,可以用于802.1x认证、VPN客户端等

每种认证方式都定义了不同的认证过程和报文格式

PAP/CHAP认证方式

PPP协议讲解(PPP连接状态、CHAP/PAP认证、PPP报文)_静下心来敲木鱼的博客-CSDN博客http://iyenn.com/rec/288218.html?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22124987932%22%2C%22source%22%3A%22m0_49864110%22%7D

PEAP认证方式  受保护的可扩展身份验证协议
1、PEAP本身不指定认证方法,仅仅只是在请求方和认证服务器之间建立TLS加密通道
2、在TLS加密通道的基础上使用EAP的其它认证方法(例如EAP-MD5、EAP-MS-CHAPv2等)
3、PEAP一般用于无线场景,采用PEAP EAP-MS-CHAPv2认证方式

CHAPv2为双向认证,CHAP为单向认证

注意事项:此方式需要认证服务器申请数字证书作为自己的身份校验凭证

请求方安装CA根证书来校验服务器身份的合法性;服务器通过基于密码的EAP-MS-CHAPv2认证方法验证请求方的身份合法性

EAP分为两个阶段

认证阶段(本文只讲解认证阶段)

客户端和服务器之间交换身份验证信息来验证客户端的身份

根据交互的EAP报文选择认证方式

密钥生成阶段

客户端和服务器使用共享密钥加密数据传输

EAP报文

Code 表示EAP数据报文的类型

 1表示请求报文(EAP-Request)    

 2表示响应报文(EAP-Response)  

 3表示成功报文(EAP-Success)

 4表示失败报文(EAP-Failure)

Identifier 唯一标识符

 用来匹配Request和Respinse(请求所对应的响应包 ID值一致)

Length 报文长度

 表示EAP数据包的长度(包括Code、ID、Length、Data各字段)

 超出Length范围的字节视为填充字段,忽略

Data 包含EAP报文的相关信息

 Code为1或2的时候才会有Data字段(只有EAP请求和EAP响应会携带DATA信息)

 Code为3或4的时候不会有Data字段

  不同的Type表示不同的含义,包含不同的内容

EAPoL(EAP over LANs)局域网可扩展认证协议

为了使得EAP报文可以直接承载于LAN网络等其它网络环境中,802.1x定义了一种报文封装格式EAPoL;EAPoL是802.1x使用的数据链路层协议,通过EAPoL来封装EAP报文,使EAP可以在有线、无线以及其它网络传输(802.3为以太网、802.11为无线网络)

EAPoL有四种消息类型

 EAPoL-Packet:   用于承载认证信息(用于承载EAP报文)

 EAPoL-Start:       客户端要发起802.1x认证时发送

 EAPoL-Logoff:     客户端要断开与网络的连接时发送

 EAPoL-Key:         密钥信息报文(用于协商加密业务数据的密钥,支持对EAP报文加密)

 EAOoL-Start、Logoff、Key仅在终端和接入端存在

EAPoL报文

物理层头

 包含源目MAC、以太网类型

 EAPoL协议的以太网类型为0x888E

EAPoL头

Protocol Version   EAPoL的协议版本号

 0x01:支持802.1x-2001

 0x02:支持802.1x-2004

 0x03:支持802.1x-2010

Protocol Type     EAPoL的数据帧类型

 0x00:EAPOL-Packet认证信息帧

 0x01:Start认证发起帧

 0x02:Logoff退出请求帧

 0x03:Key密钥信息帧

Length 数据长度

 只包含Packet Body字段的长度

 为0标识没有Packet Body字段

Packet Body 携带EAP报文信息(不定长)

 EAPoL-Packet和Key报文携带此字段

 Start和Logoff消息都没有Packet Body字段,Length都为0

802.1x体系架构

802.1x是典型的Client/Server结构,包括终端、Radius客户端、Radius服务器三个实体

精简图

客户端

位于局域网段一端的一个实体,由接入控制设备对其进行认证

终端需要安装802.1x客户端来发起认证(即终端必须支持EAPOL协议)

接入控制器NAS(通常为Radius客户端)

对所连接的终端进行认证,为终端提供接入局域网的端口(可以物理端口,可以逻辑端口)

通常为支持802.1x协议的交换机或AC

认证服务器(通常为Radius服务器)

为接入控制设备提供认证服务的实体,通常为Radius服务器,但不是唯一的

用于对用户进行认证、授权、计费

详细图

客户端PAE(结合802.1x认证触发方式看)

1、可以主动向接入控制端发送认证请求和下线请求

2、通过响应接入控制端的认证请求,向接入控制端提交用户的认证请求

非受控端口

非受控端口始终处于双向联通的状态,主要用来传递EAPoL协议,保证客户端始终可以发送或接受认证信息

受控端口(认证端口)

受控端口只有在用户通过认证的情况下才打开,用来传递业务信息

为适应不同的应用环境,受控端口可以配置为单向受控和双向受控两种方式

 双向受控时,禁止帧的发送和接收,只有通过认证才可以;

 单向受控时,禁止NAS从客户端接口帧,但允许NAS向客户端发送帧,用户通过认证后才可以允许NAS从客户端接收帧

接入控制端PAE

利用认证服务器对需要接入局域网的客户端进行认证

并根据认证结果将相应的受控端口配置成授权/非授权状态

受控端口的受控方式

基于接口的认证方式

只要该接口下的第一个用户通过此接口认证通过,其余用户通过此接口就不需要认证

当第一个用户下线时,其余用户就会被拒绝使用网络

基于MAC的认证方式

该物理接口下的所有接入用户都需要单独认证

受控端口的控制方式

自动识别

用户认证成功会授权,认证失败不授权

强制授权

无论是否认证成功,都授权

强制非授权

无论是否认证成功,都不授权


802.1x认证

802.1x认证触发方式

接入控制端主动触发(用于终端不可发送EAPoL-Start报文的情况,客户端PAE相应NAS的请求触发认证)

1、单播方式(知道客户端地址)

接入设备在接收到用户终端发送的DHCP/ARP等报文后,向用户终端发送EAP-Request/Identity报文(通过EAPoL封装)要求用户发送身份标识

2、组播方式(不知道客户端地址)

接入控制设备每隔30s主动向客户端发送EAP-Request/Identity组播报文(通过EAPoL封装),要求用户发送身份标识

客户端主动触发(客户端PAE主动触发)

用户通过802.1x客户端输入用户和密码来向接入设备发送EAPoL-Start报文来触发认证,接入控制器收到客户端发送的EAPoL-Start报文之后,会向客户端发送EAP-Request/Identity报文,要求用户发送身份标识

组播发送:向目的MAC地址0180-C200-0003发送EAPOL-Start报文

广播发送:广播发送EAPoL-Start

客户端退出认证

  1. 客户端与NAS之间连接失败,认证超时
  2. 客户端没有响应NAS发起的认证请求
  3. 客户端发送EAPoL-Logoff报文,主动下线

802.1x认证方式

EAP中继

用来对用户口令信息进行加密处理的随机加密字也由Radius服务器生成,接入控制器只是负责将EAPoL报文透传给Radius服务器,要求Radius服务器支持EAP属性

EAPoR(EAP over Radius报文)

Radius为了支持EAP属性,增加了两个TLV属性,将此扩展的Radius报文称为称为EAPoR

TLV79:EAP-Message(携带EAP消息)

TLV80:Message-Authenticator(消息认证码)

EAP终结

用来对用户口令信息进行加密处理的随机加密字由接入控制器生成,然后通过标准的Radius报文把用户名、随机加密字、客户端加密后的口令信息一起传输给Radiusf服务器

将EAPoL报文在接入控制器终结,接入控制设备提取出EAPoL报文中的EAP信息,并将提取出的信息重新封装在Radius报文中发送给认证服务器

即:客户端与接入控制器通过EAPoL报文交互,接入控制器与服务器通过Radius报文交互

EAP终结方式中,用来对用户密码信息进行加密处理的MD5 Challenge由设备端生成,之后设备端会把用户名、MD5 Challenge和客户端加密后的密码信息一起送给RADIUS服务器,进行相关的认证处理

EAP中继方式中,用来对用户密码进行加密处理的挑战字由认证服务器生成,设备端只是负责将EAP报文封装在RADIUS报文中透传认证服务器,整个认证处理都由认证服务器来完成

注意事项

802.1x是二层协议,不需要IP报文封装

Radius是三层协议,需要IP报文封装

无线802.1x认证流程

Wlan——STA接入无线网络的流程以及STA如何通过802.1x接入网络_静下心来敲木鱼的博客-CSDN博客


MAC认证

其实就是接入控制端主动触发进行802.1x认证,不过不通过用户密码认证了,而是通过MAC进行认证

注:本文转载自blog.csdn.net的静下心来敲木鱼的文章"https://blog.csdn.net/m0_49864110/article/details/129600876"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top