问题
当 启用 Cato TLS 检查时,Cato 自己的根/中间证书将作为被检查的 TLS 会话的发行人,从而实现解密和安全。 大多数企业应用程序依赖于操作系统或浏览器信任存储,因此一旦在其中安装 Cato 根证书,它们将继续透明地工作。
然而,一些开发人员工具,包括 Claude Code,使用证书固定化或自己的 TLS 实现(例如,Node.js/OpenSSL),而非完全依赖操作系统的信任存储。 因此,即使操作系统信任它,(他们)也可能会拒绝Cato发行的证书,这会导致流量检测期间出现TLS错误(例如,SELF_SIGNED_CERT_IN_CHAIN)。
环境
即使Claude被绕过,账户的TLS检查仍然已启用。
Cato根证书已安装并在操作系统的信任库中受信任。
故障排除
确认问题仅限于 Claude Code 或类似的开发工具,而不是一般的网络问题
使用应用程序的自定义 CA 机制添加 Cato 根证书
解决方案
先决条件
Cato 根证书(PEM 格式) - 您可以从这里下载证书 - https://clientdownload.catonetworks.com/public/certificates/CatoNetworksTrustedRootCA.cer
证书文件路径 - 确保证书保存到用户账户正在运行应用程序的本地文件系统中的某个位置,该位置是可访问且可读取的。
说明
Claude Code 通过环境变量支持自定义证书颁发机构。
使用 NODE_EXTRA_CA_CERTS 环境变量将 Claude Code 的基于节点的 TLS 堆栈指向 Cato 根证书文件。 确保它被全局和持久地设置,以便每次用户使用 Claude 桌面、Claude CLI 或 Claude Code IDE 扩展时都能正常工作。
验证
在设置环境变量后重启 Claude Code
尝试执行之前失败的 Claude Code 操作
如果在 TLS 检查仍然启用时它成功而没有出现 TLS 错误,则该配置是正确的。
支持升级标准
-
NODE_EXTRA_CA_CERTS变量已正确配置并指向有效的 PEM 文件,但 Claude Code 仍然出现 TLS 握手错误。 - 环境要求组合使用双向 TLS (mTLS) 和代理认证,超出标准环境变量配置。
- 需要在组织级别上帮助部署或实施环境变量设置,以覆盖多个用户或设备。
0 条评论
请登录写评论。