当前位置:首页 > 计算机相关 > Windows > 正文内容

Windows Hub 连接 OpenClaw TLS Gateway 报 Transport Error 排查与修复

我想静静2个月前 (08-21)Windows214

问题现象

Windows Hub 通过 wss:// 连接局域网内 OpenClaw Gateway 时,报 Transport error,无法建立连接。

环境

  • Debian 服务器:192.168.0.9,运行 OpenClaw Gateway,端口 18789,TLS 已开启(自签证书)
  • Windows PC:Windows 10 LTSC 2021(21H2),安装 OpenClaw Windows Hub
  • 网络:同一局域网(192.168.0.x)

根本原因

排查发现是 TLS 协议版本不兼容:

  • OpenClaw Gateway 硬编码 minVersion: "TLSv1.3",只接受 TLS 1.3 连接
  • Windows 10 19044(21H2)的 schannel 对 TLS 1.3 支持不完整,即使手动启用注册表和 Internet 选项中的 TLS 1.3(实验),curl 测试仍报 SEC_E_ALGORITHM_MISMATCH
  • Windows 10 LTSC 2021 无法安装 TLS 1.3,只能降级服务端 TLS 版本至 1.2

排查过程

步骤操作结果
1导入自签证书到 Windows 受信任根证书颁发机构证书信任问题解决,但连接仍失败
2重新生成包含 IP SAN 的证书(IP.1 = 192.168.0.9)证书验证通过,但连接仍失败
3用 curl.exe -k -v https://192.168.0.9:18789 测试报 SEC_E_ILLEGAL_MESSAGE,握手失败
4Debian 上用 openssl s_client -tls1_2 测试报 tlsv1 alert protocol version,确认网关只接受 TLS 1.3
5在 OpenClaw 源码中搜索找到 gateway-D7pGc7Ge.js 中 minVersion: "TLSv1.3"

解决方案

修改 OpenClaw 的 TLS 最低版本为 1.2:

# 1. 备份原文件
cp /root/.nvm/versions/node/v24.19.0/lib/node_modules/openclaw/dist/gateway-D7pGc7Ge.js    /root/.nvm/versions/node/v24.19.0/lib/node_modules/openclaw/dist/gateway-D7pGc7Ge.js.bak

# 2. 修改 minVersion
sed -i 's/minVersion: "TLSv1.3"/minVersion: "TLSv1.2"/'    /root/.nvm/versions/node/v24.19.0/lib/node_modules/openclaw/dist/gateway-D7pGc7Ge.js

# 3. 验证修改
grep -n 'minVersion' /root/.nvm/versions/node/v24.19.0/lib/node_modules/openclaw/dist/gateway-D7pGc7Ge.js

# 4. 重启 OpenClaw
pkill -f openclaw

注意事项

  • 升级后需重新修改:OpenClaw 升级后会覆盖修改,升级后需重新执行上述 sed 命令
  • 证书需包含 IP SAN:否则 Windows 会因证书与 IP 不匹配而拒绝连接。生成证书时需在配置中包含:
[alt_names]
IP.1 = 192.168.0.9
  • 证书导入位置:Windows 的「受信任的根证书颁发机构」(Cert:\LocalMachine\Root),不是当前用户
  • 配置文件证书路径:注意 OpenClaw 配置(openclaw.json)中指定的实际证书路径,本文案例中是 /root/.openclaw/tls/server.crt,与证书生成脚本输出路径可能不一致

涉及的证书路径(本文案例)

路径用途
/root/.openclaw/tls/server.crtOpenClaw 实际加载的证书(配置中指定)
/root/.openclaw/tls/server.keyOpenClaw 实际加载的私钥
/root/.openclaw/gateway/tls/gateway-cert.pem另一处证书位置(非实际使用)

验证命令

# Debian 上验证 TLS 1.2 可连接
openssl s_client -connect 192.168.0.9:18789 -tls1_2

# Windows 上验证 TLS 1.2 可连接
curl.exe --tlsv1.2 -k -v https://192.168.0.9:18789

如果 curl 返回 HTTP 200 和 HTML 内容,说明 TLS 握手成功,Windows Hub 即可正常连接。

扫描二维码推送至手机访问。

版权声明:如需转载请注明出处。

本文链接:https://1688fs.net/index.php/post/106.html

分享给朋友:

“Windows Hub 连接 OpenClaw TLS Gateway 报 Transport Error 排查与修复” 的相关文章

【Office】office 2016批量版和零售版(包含Visio)下载地址

【Office】office 2016批量版和零售版(包含Visio)下载地址

office零售版和批量授权版区别零售版(RTL Edition) 指的是官方出售的版本,只能激活一台电脑!享受微软售后技术服务!批量授权版(VOL Edition) 指的是针对企业客户的大批量采购的版本,可用MARK密钥永久激活!简单的说,零售版用KEY激活后,如果微软不封,可以一直使用。(你有正...

Office_Professional_Plus_2016_64Bit批量激活方法

Office_Professional_Plus_2016_64Bit批量激活方法

纯文本命令CD C:\Program files\Microsoft Office\Office16 #切换到 Office 2016 的安装目录(64 位系统默认路径),确保后续命令能找到ospp.vbs脚本 CSC...

用于基于 KMS 和 Active Directory 的 Office、Project 和 Visio 激活的 GVLK

用于基于 KMS 和 Active Directory 的 Office、Project 和 Visio 激活的 GVLK

适用于:Office LTSC 2024、Office LTSC 2021、Office 2019 和 Office 2016 的批量许可版本,包括 Project 和 Visio默认情况下,批量许可版本的 Office(如 Office LTSC 2024)随通用批量许可证密钥 (GVLK) 一起...