• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

dot1x认证失败问题

1天前提问
  • 0关注
  • 0收藏,46浏览
粉丝:0人 关注:0人

问题描述:

debug抓包,发现服务器那边认证成功了,但是服务器返回的是code 26 Access-Challenge,Received authentication response with code 26。然后交换机就把认证给拒了。这个交换机侧要怎么处理?

 

组网及组网描述:

    Message-Authenticator=0x944c55484e60d2fde3323eef190e8d9c

    EAP-Message=0x040d0004

    Microsoft-Attr-10=0x0153554e524953452d4149

    MSCHAPv2_Success=0x01533d43393730414436424243323737423632414443464534373144463635424542454443344345373439

    MS-MPPE-Send-Key=******

    MS-MPPE-Receive-Key=******

 

2 个回答
粉丝:5人 关注:4人

步骤 1: 理解EAP协议

EAP是一种用于网络接入认证的协议,支持多种认证方法,如EAP-TLS、EAP-TTLS、PEAP等。在EAP过程中,服务器和客户端之间通过一系列消息交换来验证身份。

步骤 2: 分析交换机配置

  1. 查看交换机配置‌:检查交换机的EAP配置,确保它正确设置了期望的认证方法。例如,如果服务器期望客户端使用EAP-TLS,确保交换机也配置为接受EAP-TLS认证。

  2. 检查认证服务器设置‌:确认认证服务器(如RADIUS服务器)是否正确配置,并且可以处理 Access-Challenge

步骤 3: 调整交换机配置

  1. 启用EAP重试‌:在某些情况下,你可能需要在交换机上启用对EAP重试的支持。例如,某些设备可能需要配置为在接收到时自动发起另一个认证请求。


    eap retry enable
  2. 增加重试次数‌:如果交换机配置了自动重试,检查是否可以增加重试次数,以应对可能的延迟或网络问题。


    eap retry count <number>

3 PARTICULARS: ‌检查EAP超时设置‌:确保交换机的EAP超时设置不是太短,这可能导致在认证完成前连接被中断。


eap timeout <seconds>

步骤 4: 日志和调试信息

  1. 查看交换机日志‌:检查交换机的日志文件,寻找与认证失败相关的错误或警告信息。

  2. 启用调试‌:在交换机上启用详细的调试日志,这可以帮助你更好地理解认证过程中的问题和瓶颈。


    debug eap all

步骤 5: 测试和验证

  1. 模拟测试‌:尝试使用不同的认证设备或客户端进行测试,看是否可以成功完成认证。

  2. 更新固件‌:确保交换机的固件是最新的,因为老旧的固件可能存在已知的bug或不兼容性问题。

通过上述步骤,你应该能够诊断并解决因 Access-Challenge导致的问题。如果问题仍然存在,可能需要联系设备供应商获取更专业的支持或进一步的配置指导。

暂无评论

粉丝:23人 关注:2人

Code=1:Access-Request(设备发给服务器)
Code=2:Access-Accept 认证成功
Code=3:Access-Reject 拒绝
Code=11:Access-Challenge 挑战报文
你日志里 Code=26 不属于标准 RFC2865 定义的 RADIUS Code!
正常认证流程:服务器校验通过必须回复 Code=2 Access-Accept;
现在 RADIUS 服务器异常返回 Code=26,交换机识别不了该报文类型,直接判定认证失败、切断 802.1X 会话。
结合报文携带字段:MSCHAPv2_Success、MS-MPPE密钥、EAP-Message,现象典型:
RADIUS 服务端程序 BUG / 配置异常,没有封装标准 Code=2 Access-Accept,错误使用 Code=26 应答;交换机固件严格遵循 RFC,无法识别非法 Code,直接丢弃报文、终止认证。
一、先区分两方责任(关键点)
✅ 根本问题:RADIUS 认证服务器(iMC EIA / 第三方 Radius)报文封装错误,不是交换机配置缺失
❌ 交换机无法通过命令兼容非法 RADIUS Code,标准协议栈不支持自定义 Code 值解析。
但是有 2 个场景需要排查确认,避免误判:
抓包过滤问题:debug 信息打印错误,实际 Code 是 11 Access-Challenge,日志打印错乱;
EAP 中继模式与本地认证模式不匹配导致流程异常。
二、快速验证手段(交换机执行)
cli
# 开启详细radius调试
debug radius packet
terminal debugging
terminal monitor
完整观察交互流程:
交换机发出 Access-Request(Code1)
服务器返回报文真实 Code 编号
如果确实持续收到 Code=26 → 服务器侧必须修复
如果只是日志文字写错,真实 Code=11(Access-Challenge),属于 EAP 二次挑战流程异常,处理方案不同
三、两种场景分别处理
场景 1:确认服务器真实返回 Code=26(你当前现象)
交换机侧:无任何配置命令可以兼容修复
Comware V5/V7(H3C 交换机)协议栈严格遵循 RFC2865,未知 Code 报文直接丢弃,没有开关关闭该校验。
需要在 RADIUS 服务器侧整改(重点)
服务器类型排查:iMC EIA / Windows NPS / FreeRADIUS / 第三方认证平台
Windows NPS 几乎不会出现该问题,大概率是定制 Radius、开源 freeradius 二次开发、老旧版本 iMC EIA
核查认证方式:终端使用 EAP-MSCHAPv2
服务器收到 EAP 响应成功后,必须构造标准 Code=2 Access-Accept,携带 MPPE 密钥、EAP 成功报文;
当前服务器错误构造 Code=26,属于服务端代码缺陷。
临时排查方向(服务端)
升级 RADIUS 服务程序版本;
关闭服务器上自定义报文封装插件、策略脚本;
更换认证模板,确认是否自定义属性 / 策略篡改了 RADIUS 头部 Code 字段;
测试新建测试账号,排除账号绑定策略导致报文异常。
场景 2:日志打印错误,实际报文 Code=11 Access-Challenge(极易混淆)
现象:EAP-MSCHAPv2 协商中服务器持续下发 Challenge,流程卡死,无法走到最终 Access-Accept。
交换机侧检查 802.1X 模式:
cli
display dot1x
关键配置:
cli
# 使用EAP中继(推荐,对接标准Radius服务器,iMC默认)
dot1x authentication-method eap

# 如果配置成chap/pap,服务器使用EAP-MSCHAPv2会流程冲突
# dot1x authentication-method chap
错误:交换机配置 chap 模式,终端和服务器跑 EAP,流程不匹配,持续交互 Challenge 无法收尾。
四、补充:报文内携带字段解读
plaintext
EAP-Message=0x040d0004 // EAP-Success报文(EAP层已经认证成功)
MSCHAPv2_Success // MSCHAPv2协商成功标识
MS-MPPE-Send/Receive-Key // 无线/加密需要的会话密钥
EAP 载荷内部已经协商成功,但是外层 RADIUS 头部 Code 非法!
形象理解:信封里面写着 “认证通过”,但是信封外皮的类型编号写错,交换机不认这个信封直接拒收。
五、临时替代验证方案(定位用)
使用 FreeRadius / 另外一台正常 Radius 服务器对接同一交换机、同一终端;
若认证正常(服务器返回 Code=2),100% 确认原有认证服务器故障。
抓包软件(Wireshark)直连交换机上联口捕获 RADIUS 报文,确认帧头部真实 Code,不要只依赖设备 debug 输出,排除交换机调试日志打印 BUG。
六、总结给答疑结论(可直接复制知了社区回复)
根据 RFC2865 标准,RADIUS 合法 Code 仅 1/2/3/11,Code=26 属于非法报文类型;
当前 EAP 载荷显示终端认证协商完成,但 RADIUS 服务端封装报文头部错误,未下发标准 Code=2 (Access-Accept);
H3C 交换机 Comware 平台协议栈无法关闭 RADIUS 报文 Code 合法性校验,交换机侧无配置命令解决该问题;
整改重心:登录 RADIUS 认证服务器(EIA/NPS 等),排查服务版本、自定义策略、报文封装插件,修复使其认证成功时正常回复 Code=2 Access-Accept;
建议通过 wireshark 物理抓包再次核实 RADIUS 报文真实 Code,排除交换机 debug 日志打印失真问题。

暂无评论

编辑答案

你正在编辑答案

如果你要对问题或其他回答进行点评或询问,请使用评论功能。

分享扩散:

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作

举报

×

侵犯我的权益 >
对根叔社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明