You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kong网关配置自定义SSL证书后访问仍加载默认证书问题求助

Kong自定义SSL证书不生效原因及修复方案

核心原因

  • TLS握手阶段未传递正确SNI:你当前使用IP地址发起HTTPS请求,大部分版本的curl默认不会在TLS Client Hello阶段携带SNI信息,而你设置的Host: testkong.com是HTTP层的请求头,生效时间晚于TLS握手。Kong在TLS握手阶段无法拿到匹配的SNI,只能返回默认的自签名证书。
  • 证书未绑定到对应工作区:如果你的Kong开启了多工作区配置,需要确认你创建的SSL证书和服务、路由处于同一个工作区,跨工作区的资源默认不互通。
  • 证书创建参数错误:需要确认你调用Admin API创建证书时返回了201创建成功响应,且证书的snis字段确实包含testkong.com,证书和私钥的格式没有缺失、换行符转义错误等问题。

验证及修复方案

  1. 优先验证SNI传递问题,使用指定SNI的curl命令发起请求:
# 方案1:使用--resolve参数绑定域名和IP端口映射
curl -v --insecure --resolve testkong.com:31966:100.73.66.21 https://testkong.com:31966/app/list/test5

# 方案2:使用--connect-to参数指定连接规则
curl -v --insecure --connect-to testkong.com:443:100.73.66.21:31966 https://testkong.com/app/list/test5

如果以上命令返回的是你自定义的证书,即可确认是SNI未传递导致的问题,后续请求直接使用绑定了hosts的域名访问即可正常加载自定义证书。
2. 如果执行上述命令还是返回默认证书,调用Admin API查询证书列表确认配置:

curl http://100.73.66.21:32763/certificates

检查返回结果中是否存在你配置的证书,且snis字段匹配testkong.com。
3. 如果开启了多工作区,创建证书时需要在请求头指定对应工作区:

curl -X POST http://100.73.66.21:32763/certificates \
  -H "Kong-Workspace: 你的工作区名称" \
  --data "key=你的私钥内容" \
  --data "cert=你的证书内容" \
  --data "snis[]=testkong.com"

内容的提问来源于stack exchange,提问作者favor ziyi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 10:09:02