温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

gateway服务器如何配置SSL证书

发布时间:2025-12-08 10:10:04 来源:亿速云 阅读:97 作者:小樊 栏目:系统运维

通用准备

  • 准备可被信任的证书链:包含服务器证书与中间证书(如有),以及对应的私钥。常见格式为 PKCS12(.p12/.pfx)JKS(.jks);若仅有 PEM(.crt/.pem)KEY(.key),可转换为 PKCS12 再导入。生产环境建议使用受信任 CA 签发的证书,避免浏览器告警。证书与私钥请妥善保护并设置最小权限访问。

Spring Cloud Gateway 配置

  • 方式一 终端到网关的 HTTPS(推荐)
    • 将证书放到项目资源目录(如 classpath),在配置中开启 SSL 并指向证书:
      • server.port: 443
      • server.ssl.enabled: true
      • server.ssl.key-store: classpath:your-cert.p12
      • server.ssl.key-store-type: PKCS12
      • server.ssl.key-store-password: your_password
      • server.ssl.key-alias: your_alias(如证书包含多个条目)
    • 示例:
      • server:
        • port: 443
        • ssl:
          • enabled: true
          • key-store: classpath:7225224_xfjs.fun.pfx
          • key-store-type: PKCS12
          • key-store-password: ******11123
    • 若证书为 JKS,将 key-store-type 改为 JKS 并配置相应别名与密码。Maven 打包时,为避免对 .pfx/.jks 过滤,需在 pom.xml 的 maven-resources-plugin 中将其加入
  • 方式二 网关到上游的 HTTPS(可选)
    • 若上游服务启用 HTTPS,可在网关的 HTTP 客户端 侧配置信任材料(如 key-store/trust-store),以建立到上游的 TLS 连接;具体属性位于 spring.cloud.gateway.httpclient.ssl.*
  • 路由与转发
    • 路由配置与转发协议解耦:前端走 HTTPS 进入网关,网关到上游可按需使用 HTTPHTTPS。如需将入站 HTTPS 在转发时改为 HTTP,可使用自定义 GlobalFilter 将请求 scheme 从 https 调整为 http,并在 LoadBalancerClientFilter 之前执行(order 设为 10099)。

Kong Gateway 配置

  • 准备证书文件:从 CA 获取并上传至服务器,例如 /usr/local/kong/ssl/hdsw.top.pem(证书链/服务器证书)与 /usr/local/kong/ssl/hdsw.top.key(私钥)。
  • 修改 Kong 配置 /etc/kong/kong.conf
    • proxy_listen = 0.0.0.0:443 ssl
    • ssl_cert = /usr/local/kong/ssl/hdsw.top.pem
    • ssl_cert_key = /usr/local/kong/ssl/hdsw.top.key
  • 重启使配置生效:kong restart(注意:部分场景使用 kong reload 不会生效)。随后可通过 https://your-domain/… 访问验证。

验证与常见问题

  • 验证
    • 使用浏览器或命令行访问网关域名与端口(如 https://your-domain/),确认证书链、颁发者、有效期与域名匹配;必要时用 curl -vk 查看握手与证书详情。
  • 常见问题
    • 自签名或不受信任 CA 证书会导致客户端告警;生产请使用受信任 CA 证书。
    • 证书链不完整(缺少中间证书)会导致部分客户端校验失败;请确保 PEM 中包含完整链或使用包含链的 PKCS12
    • 打包过滤导致证书损坏:Maven 需将 .pfx/.jks 加入 ,防止二进制被篡改。
    • 网关到上游协议不一致:若上游为 HTTP,而网关入站为 HTTPS,请在转发前将 scheme 调整为 http,避免不必要的 SSL 握手错误。
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI