运行Mosquitto MQTT Broker时出现间歇性OpenSSL Error 0A000126
问题背景
客户环境中出现间歇性MQTT连接故障,系统运行正常时会突然出现连接断开、SSL错误及协议错误。
环境信息
- OpenSSL 3.1.0 14 Mar 2023(库版本与版本号一致)
- TLS 1.2
- Mosquitto MQTT Broker(未使用Nginx)
故障日志示例
Nov 09 22:53:25 medius-g2-3865 mosquitto[443]: 1699570405: New connection from 192.168.100.253:47154 on port 8883. Nov 09 22:53:25 medius-g2-3865 mosquitto[443]: 1699570405: New client connected from 192.168.100.253:47154 as VLUCADBMV07063 (p2, c1, k60). Nov 09 22:53:25 medius-g2-3865 mosquitto[443]: 1699570405: OpenSSL Error[0]: error:0A000126:SSL routines::unexpected eof while reading Nov 09 22:53:25 medius-g2-3865 mosquitto[443]: 1699570405: Client VLUCADBMV07063 closed its connection. Nov 09 22:53:25 medius-g2-3865 mosquitto[443]: 1699570405: New connection from 192.168.100.253:47155 on port 8883. Nov 09 22:53:25 medius-g2-3865 mosquitto[443]: 1699570405: New client connected from 192.168.100.253:47155 as VLUCADBMV07063 (p2, c1, k60). Nov 09 22:53:27 medius-g2-3865 mosquitto[443]: 1699570407: Client VLUCADBMV07063 disconnected: Protocol error. Nov 09 22:53:27 medius-g2-3865 mosquitto[443]: 1699570407: New connection from 192.168.100.253:47157 on port 8883.
排查思路
网络层面
- 持续监控链路状态:在Broker端执行
ping -t 192.168.100.253或用mtr工具,排查故障发生时是否存在丢包、延迟突增或网络中断情况 - 检查网络设备配置:确认防火墙、交换机是否设置了TCP会话超时限制,是否会主动断开长时间无数据的SSL连接,或存在带宽阈值导致连接被截断
OpenSSL与TLS配置
- 验证SSL兼容性:检查
mosquitto.conf中的ciphers、tls_version配置,确保使用TLS 1.2标准兼容的加密套件,避免使用OpenSSL 3.1中已废弃的套件 - 核查证书有效性:确认客户端与Broker的证书是否过期、证书链是否完整,自签名证书是否已正确导入双方信任库
- 升级OpenSSL版本:OpenSSL 3.1.0存在已知SSL/TLS相关bug,尝试升级至3.1.x系列最新稳定版(如3.1.4),验证是否解决EOF异常问题
Mosquitto Broker
- 启用调试日志:修改
mosquitto.conf设置log_type all,重启Broker后获取更详细的连接、SSL握手及协议交互日志,定位故障发生的具体阶段 - 检查版本兼容性:确认当前Mosquitto版本是否与OpenSSL 3.1存在兼容问题,尝试升级至最新稳定版或降级到适配版本
- 核查会话配置:日志中客户端
k60表示keepalive为60秒,检查Broker是否有会话超时限制,或客户端是否在keepalive周期内未正常发送心跳包导致连接被断开
客户端侧
- 检查客户端实现:确认客户端使用的MQTT库是否兼容TLS 1.2与OpenSSL 3.1,是否存在资源泄漏(如未正确释放连接)导致的异常断开
- 收集客户端日志:获取客户端的连接、SSL错误日志,排查是否存在客户端主动断开或本地SSL库抛出的错误
- 隔离测试:仅让故障客户端连接Broker,观察故障是否复现,排除多客户端并发导致的资源竞争问题
内容的提问来源于stack exchange,提问作者user1375489
相关产品推荐
相关产品推荐

