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

openssl创建自签名证书

原文地址:自签名证书 – 无敌牛

欢迎参观我的个人博客:无敌牛 – 技术/著作/典籍/分享等

1 生成私钥

openssl genrsa -out server.key 2048

2 创建证书请求文件

openssl req -new -key server.key -out server.csr

3 用私钥和证书请求文件,生成签名文件

openssl x509 -req -days 36500 -in server.csr -signkey server.key -out server.crt


扩展 …

从私钥里提取公钥

openssl rsa -in server.key -pubout -out server.pub

检查秘钥是否有效,查看私钥信息

openssl pkey -in server.key -check

查看证书请求文件信息

openssl req -in server.csr -noout -text

查看证书信息

openssl x509 -in server.crt -noout -text

查看证书有效期

openssl req -in server.csr -noout -dates

证书验证

openssl verify -CAfile root-ca.crt server.crt

从网站提取证书文件,示例:

openssl s_client -connect www.madbull.site:443 -showcerts </dev/null 2>/dev/null | openssl x509 -outform PEM > /opt/xxx.perm

Let’s Encrypt 安装证书

需要安装 certbot 工具和 python3-certbot-nginx 插件

yum install certbot python3-certbot-nginx

需要提前把网站建好,certbot会在线生成私钥、证书、证书链和完整证书链,然后修改 nginx 的配置文件中对应域名的证书地址,最后做网页验证。

指令:certbot --nginx -d "www.madbull.site"


自己创建根证书,对其他服务授权,以及在linux环境,把根证书加入到系统信任列表。

1.1 创建根的私钥

openssl genrsa -out root-ca.key 2048

1.2 创建根证书

openssl req -x509 -new -nodes -key root-ca.key -sha256 -days 1024 -out root-ca.crt

2.1 创建服务的私钥

openssl genrsa -out server.key 2048

2.2 给服务创建证书请求文件

openssl req -new -key server.key -out server.csr

2.3 给服务颁发证书

openssl x509 -req -in server.csr -CA root-ca.crt -CAkey root-ca.key -CAcreateserial -out server.crt -days 36500 -sha256

3.1 把根证书放到配置可信任的配置证书文件位置

cp root-ca.crt /etc/pki/ca-trust/source/anchors/

3.2 更新系统可信任的根证书

update-ca-trust extract

3.3 验证根证书是否已经在信任列表里

查看 /etc/ssl/certs/ca-bundle.trust.crt 文件中是否有 root-ca.crt 证书


添加多个主题替代名称(SAN)的方法参看:openssl颁发包含主题替代名的证书–SAN – 无敌牛


http://www.kler.cn/a/408821.html

相关文章:

  • STM32的中断(什么是外部中断和其他中断以及中断号是什么)
  • 【时时三省】NIT计算机考试基础知识
  • 用 Python 从零开始创建神经网络(九):反向传播(Backpropagation)
  • Qt入门1——认识Qt的几个常用头文件和常用函数
  • RabbitMQ实现异步下单与退单
  • Java 基础知识 (集合框架 + 并发编程 + JVM 原理 + 数据结构与算法)
  • 从一个“支付状态不一致“的bug,看大型分布式系统的“隐藏杀机“
  • 数据集-目标检测系列- 牵牛花 检测数据集 morning_glory >> DataBall
  • HTTP 消息结构
  • 2024年亚太地区数学建模大赛D题-探索量子加速人工智能的前沿领域
  • 香港服务器安装Debian12操作系统有python环境嘛
  • go 结构体指针
  • tcpdump抓包 wireShark
  • Android Studio更改项目使用的JDK
  • vscode可以编译通过c++项目,但头文件有红色波浪线的问题
  • 基于YOLOv8深度学习的智慧考场考试防作弊行为检测系统设计与实现(PyQt5界面+数据集+训练代码)
  • VsCode使用git提交很慢(一直显示在提交)_vscode commit很慢解决方法
  • 深入解析PyTorch中的卷积操作:原理、应用与示例
  • URL在线编码解码- 加菲工具
  • Flink——source数据来源分类
  • 线性代数公式速记手册
  • 【超详细】卷积神经网络CNN基本架构以及工作原理详解
  • YB2503HV:高效率降压IC,助力电动车、太阳能设备等领域的能源转换
  • CFD平台如何接入实时行情源
  • 实时数据开发 | 怎么通俗理解Flink容错机制,提到的checkpoint、barrier、Savepoint、sink都是什么
  • Redis入门(六)