当前位置: 首页 > news >正文

SpringGateway网关增加https证书验证

文章目录

  • 前言
  • 一、申请证书
  • 二、转换证书
    • 2.1 设置强密码
    • 2.2 转换成.p12文件
  • 三、配置gateway网关
  • 四、重启网关
  • 五、验证
  • 总结


前言

设:
网址:bztc.website
网关地址:bztc.website:10086


一、申请证书

申请证书后,会有如下文件:
bztc.website.crt
bztc.website.key

二、转换证书

转换成bztc.website.p12文件。

2.1 设置强密码

密码尽可能复杂。

openssl rand -base64 16
# 示例输出:fD8tYjW7k3K2mN8zT4w0ZA==

2.2 转换成.p12文件

在服务器上执行:

openssl pkcs12 -export \-in bztc.website.crt \-inkey bztc.website.key \-out bztc.website.p12 \-name bztc.website \-passout pass:fD8tYjW7k3K2mN8zT4w0ZA==

然后当前目录会生成bztc.website.p12文件:
在这里插入图片描述

三、配置gateway网关

配置yaml文件:

server:ssl:key-store: /root/bztc-gateway/cert/bztc.website.p12key-store-password: fD8tYjW7k3K2mN8zT4w0ZA==key-store-type: PKCS12
spring:cloud:# 网关配置gateway:# 微服务名称配置discovery:locator:enabled: true # 设置为true 请求路径前可以添加微服务名称(开启微服务发现功能)lower-case-service-id: true # 将请求路径上的服务名配置为小写globalcors:corsConfigurations:'[/**]':allowedOrigins:- "https://bztc.website"allowedMethods:- GET- POSTallowedHeaders:- "*"allowCredentials: true

四、重启网关

五、验证

执行:

openssl s_client -connect bztc.website:10086

会输出如下内容:

CONNECTED(00000003)
depth=3 C = US, ST = New Jersey, L = Jersey City, O = The USERTRUST Network, CN = USERTrust RSA Certification Authority
verify return:1
depth=2 C = GB, O = Sectigo Limited, CN = Sectigo Public Server Authentication Root R46
verify return:1
depth=1 C = GB, O = Sectigo Limited, CN = Sectigo Public Server Authentication CA DV R36
verify return:1
depth=0 CN = bztc.website
verify return:1
---
Certificate chain0 s:CN = bztc.websitei:C = GB, O = Sectigo Limited, CN = Sectigo Public Server Authentication CA DV R361 s:C = GB, O = Sectigo Limited, CN = Sectigo Public Server Authentication CA DV R36i:C = GB, O = Sectigo Limited, CN = Sectigo Public Server Authentication Root R462 s:C = GB, O = Sectigo Limited, CN = Sectigo Public Server Authentication Root R46i:C = US, ST = New Jersey, L = Jersey City, O = The USERTRUST Network, CN = USERTrust RSA Certification Authority
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIGhTCCBO2gAwIBAgIQDuUsPcCGslpPkloIAE4f3zANBgkqhkiG9w0BAQsFADBg
…………………………………………………………
MxQfDEuUqQf7FuhtEvxdLAW4exUecNZM+eOIMpWs0Jv51w53AL3e+Ts=
-----END CERTIFICATE-----
subject=CN = bztc.websiteissuer=C = GB, O = Sectigo Limited, CN = Sectigo Public Server Authentication CA DV R36---
No client certificate CA names sent
Peer signing digest: SHA256
Peer signature type: RSA-PSS
Server Temp Key: X25519, 253 bits
---
SSL handshake has read 5548 bytes and written 394 bytes
Verification: OK
---
New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384
Server public key is 2048 bit
Secure Renegotiation IS NOT supported
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)
---
---
Post-Handshake New Session Ticket arrived:
SSL-Session:Protocol  : TLSv1.3……………………………………………………………………………………………………………………………………………………………………………………………………00c0 - ef 43 fb cf 65 ff f3 65-c3 4b 67 c9 06 91 1f 6d   .C..e..e.Kg....m00d0 - 20 18 4c 1c 1b 20 0d 78-51 c0 ef 01 cc be a0 1f    .L.. .xQ.......00e0 - ab 8e b9 20 1b 55 1b 86-80 ea da 73 19 be ee 8c   ... .U.....s....Start Time: 1752073620Timeout   : 7200 (sec)Verify return code: 0 (ok)Extended master secret: noMax Early Data: 0
---
read R BLOCK
---
Post-Handshake New Session Ticket arrived:
SSL-Session:Protocol  : TLSv1.3……………………………………………………………………………………………………………………………………………………………………00c0 - e5 d8 24 15 be b7 8d 36-97 fb a5 7f 05 71 65 6c   ..$....6.....qel00d0 - 1b 1c ac 1a 2f 93 10 d6-09 c9 a9 d0 09 db 49 25   ..../.........I%00e0 - d6 bc a3 19 6d 39 1e fd-45 42 bf 22 78 ed cd 00   ....m9..EB."x...Start Time: 1752073620Timeout   : 7200 (sec)Verify return code: 0 (ok)Extended master secret: noMax Early Data: 0
---
read R BLOCK

最后需保证网关接口可正常访问。


总结

SpringGateway网关增加https证书验证

http://www.dtcms.com/a/270867.html

相关文章:

  • 基于YOLO的足球检测Web应用:从训练到部署的完整实战
  • 《心灵沟通小平台,创新发展大未来》
  • brainstorm MEG处理流程
  • 2024 睿抗编程技能赛——省赛真题解析(含C++源码)
  • 图像匹配方向最新论文--CoMatch: Covisibility-Aware Transformer for Subpixel Matching
  • 【QT】文件、多线程、网络相关内容
  • 【基础算法】贪心 (四) :区间问题
  • spring-data-jpa + Alibaba Druid多数据源案例
  • (5)机器学习小白入门 YOLOv:数据需求与图像不足应对策略
  • OpenCV图片操作100例:从入门到精通指南(4)
  • [C#/.NET] 内网开发中如何使用 System.Text.Json 实现 JSON 解析(无需 NuGet)
  • 树莓派vsftpd文件传输服务器的配置方法
  • Java 大视界 -- 基于 Java 的大数据分布式计算在生物信息学蛋白质 - 蛋白质相互作用预测中的应用(340)
  • 【算法深练】DFS题型拆解:沿着路径“深挖到底”、递归深入、回溯回探的算法解题思路
  • 【数据分析】多数据集网络分析:探索健康与退休研究中的变量关系
  • ESOP系统电子作业指导汽车零部件车间的数字化革命
  • 玛哈特网板矫平机:精密矫平金属开平板的利器
  • 钉钉企业应用开发技巧:查询表单实例数据新版SDK指南
  • 2023年华为杯研究生数学建模竞赛A题WLAN组网分析
  • 结构体指针:使用结构体指针访问和修改结构体成员。
  • 【网络】Linux 内核优化实战 - net.ipv4.tcp_ecn_fallback
  • softmax
  • GitHub 趋势日报 (2025年07月08日)
  • SQLZoo 练习与测试答案汇总(复杂题有最优解与其他解法分析、解题技巧)
  • 分类预测 | Matlab基于KPCA-ISSA-SVM和ISSA-SVM和SSA-SVM和SVM多模型分类预测对比
  • 打造自己的组件库(二)CSS工程化方案
  • Tensorflow的安装记录
  • 一天一道Sql题(day04)
  • 开源链动2+1模式与AI智能名片融合下的S2B2C商城小程序源码:重构大零售时代新生态
  • 华为静态路由配置