openssl 生成自签名证书实现接口支持https

1.下载安装openssl

Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions

2.配置环境变量

将 openssl 的目录(D:\tools\openssl\bin)添加到 path 中

3.生成自签名证书

找一个存证书的目录打开powershell

3.1 生成私钥

openssl genpkey -algorithm RSA -out private.key -pkeyopt rsa_keygen_bits:2048

3.2 生成证书签名请求

openssl req -new -key private.key -out certificate.csr

3.3 使用私钥签署 CSR 生成自签名证书

openssl x509 -req -days 3650 -in certificate.csr -signkey private.key -out certificate.crt

3.4 将私钥和证书导入到一个 p12 文件(这里面的 luobei 替换成你的密码)

openssl pkcs12 -export -in certificate.crt -inkey private.key -out keystore.p12 -name tomcat -passout pass:luobei

3.5 将私钥和证书转换为 Java KeyStore 格式(这里面的 luobei 替换成你的密码)

keytool -importkeystore -destkeystore keystore.jks -srckeystore keystore.p12 -srcstoretype PKCS12 -alias tomcat -deststorepass luobei -srcstorepass your_secret_password -keypass luobei

4. 配置 Java 服务端

将生成的 jks 文件放到 Java 服务的 src/resources中

在yml配置中配置(这里面的 luobei 替换成你的密码)

XML 复制代码
server:
  port: 8080
  ssl:
    enabled: true
    key-store: classpath:keystore.jks
    key-store-password: luobei
    key-alias: tomcat
    key-password: luobei
相关推荐
JAVA学习通23 分钟前
【JavaEE】 HTTP协议(1.0)
网络·网络协议·http
2501_9160137437 分钟前
日常开发中,iOS 性能调优我们怎么做?
websocket·网络协议·tcp/ip·http·网络安全·https·udp
努力也学不会java1 小时前
【HTTP】《HTTP 全原理解析:从请求到响应的奇妙之旅》
java·网络·网络协议·http
gbase_lmax2 小时前
gbase8s数据库 tcp连接不同阶段的超时处理
网络·数据库·网络协议·tcp/ip
zzr9152 小时前
TCP/IP协议深度解析:从分层架构到TCP核心机制
网络协议·tcp/ip·架构
techdashen4 小时前
性能比拼: HTTP/2 vs. HTTP/3
网络·网络协议·http
风吹一夏v5 小时前
Mac 使用 Charles代理生成https服务
macos·https·charles
熏鱼的小迷弟Liu9 小时前
【计算机网络】HTTP中GET和POST的区别是什么?
网络协议·计算机网络·http