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

自签名证书实现HTTPS协议

适用场景

  1. 开发/测试、内网环境、临时用途
  2. 正式环境请使用 CA证书

自签名证书与CA证书区别

特性自签名证书(Self-Signed)受信任证书(CA-Signed)
颁发者自己生成,无第三方机构由受信任的证书颁发机构(CA)如 Let’s Encrypt、DigiCert 签发
浏览器信任❌ 默认不信任,显示警告(需手动安装)✅ 自动信任,无警告
适用场景开发/测试、内网环境、临时用途生产环境、公开网站、商业服务
成本免费免费(Let’s Encrypt)或付费(企业级CA)
有效期可自定义(通常较长)通常较短(如90天,需定期续签)
吊销机制❌ 无吊销列表(CRL/OCSP)✅ 支持吊销,CA可标记失效证书

演示环境

  • 服务端:Linux服务器(以 172.25.22.4 为例)
  • 客户端(Web):本地

生成自签名证书(bashshell)

# 生成openssl配置文件
$ vim openssl.conf
######################## 配置文件START #########################################
[req]
distinguished_name = req_distinguished_name
x509_extensions = v3_req
prompt = no[req_distinguished_name]
CN = 172.25.22.4[v3_req]
subjectAltName = IP:172.25.22.4
######################## 配置文件END ########################################## 生成证书
$ openssl req -x509 -newkey rsa:4096 -sha256 -days 3650 -nodes \-keyout key.pem -out cert.pem \-config openssl.cnf# 验证SAN是否已正确注入
$ openssl x509 -in cert.pem -text -noout | grep -A 1 "Subject Alternative Name"
############### 输出以下内容证明已正确注入 ##########################X509v3 Subject Alternative Name:IP Address:172.25.22.4
###############              END          ########################### 转换为PFX格式,密码为123456
openssl pkcs12 -export -out keystore.pfx -inkey key.pem -in cert.pem -passout pass:123456 -name "server-cert"# 查看证书文件
$ ls
cert.pem  key.pem  keystore.pfx  openssl.cnf

服务端配置

服务端使用的框架为 Springboot

  1. keystore.pfx 文件放到 /resource/SSLKey/ 目录下;
  2. 配置文件新增配置:
#证书配置
server:# SSLssl:enabled: truekey-store: classpath:SSLKey/keystore.pfxkey-store-type: PKCS12key-store-password: 123456
  1. 验证 https 请求:
    curl -k https://172.25.22.4:8889/your-api
    
    • -k 表示忽略证书验证(仅测试用)。
    • 如果返回数据,说明后端 HTTPS 配置成功。

前端访问 HTTPS 接口

由于你使用的是 自签名证书,浏览器默认不信任,需要额外处理 让浏览器信任证书

  1. cert.pem 下载到本地;
  2. 打开命令行窗口执行以下命令:
$ certutil -addstore -f "Root" your_path\cert.pem
##################### 出现以下提示代表添加成功 ####################
Root "受信任的根证书颁发机构"
签名与公钥匹配
证书 "172.25.22.4" 添加到存储。
CertUtil: -addstore 命令成功完成。
#####################          END            ####################

至此,自签名证书配置完成!!!

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

相关文章:

  • 17.14 CogVLM-17B多模态模型爆肝部署:4-bit量化+1120px高清输入,A100实战避坑指南
  • 登上Nature子刊,深度学习正逐渐接管基础模型
  • NY128NY133美光固态闪存NY139NY143
  • 智驭全球波动:跨境量化交易系统2025解决方案
  • Linux系统:Ext系列文件系统(硬件篇)
  • 专题二_滑动窗口_将x减到0的最小操作数
  • Dart 单例模式:工厂构造、静态变量与懒加载
  • 频谱图学习笔记
  • python 通过Serper API联网搜索并大模型整理内容
  • 软件测试面试常见问题【含答案】
  • EtherCAT WatchDog
  • V4L2摄像头采集 + WiFi实时传输实战全流程
  • 深圳市天正达电子股份有限公司参展AUTO TECH China 2025 广州国际汽车技术展览会
  • std::transform
  • AI大模型专题:LLM大模型(Prompt提示词工程)
  • C语言实现经典扫雷游戏全解析
  • 使用观测云打造企业级监控告警中心
  • cudagraph 本质详解
  • Vue框架进阶
  • 宠智灵打造宠物AI开放平台:精准识别、灵活部署、生态共建
  • C++入门(上) -- 讲解超详细
  • 【狂神说java学习笔记】四:java流程控制(用户交互Scanner、顺序结构、if选择结构、switch选择结构)
  • isulad + harbor私有仓库登录
  • 大模型性能测试实战指南:从原理到落地的全链路解析
  • Claude使用报错 Error: Cannot find module ‘./yoga.wasm‘
  • 鸿蒙中使用tree
  • 系统集成项目管理工程师【第十一章 规划过程组】规划成本管理、成本估算、制定预算和规划质量管理篇
  • 安全基础DAY1-安全概述
  • Xiphos Q8 摄像头板 高性能图像处理板
  • 案例实战:机器学习预测粘度+耐热高分子筛选,聚合物研发效率倍增秘籍