首页 > 其他分享 >创建和管理一个 CA 及证书的生命周期

创建和管理一个 CA 及证书的生命周期

时间:2024-06-02 18:10:22浏览次数:15  
标签:生命周期 rootCA 证书 CA openssl key 服务器

任务详情

0 使用openssl或者gmssl,提交markdown格式文档和转化后的pdf
1 创建一个根 CA,包括生成私钥和根证书。分析证书和0015,0034标准的符合情况
2 为一台服务器生成一个私钥和证书签署请求(CSR)。
3 使用根 CA 对服务器的 CSR 进行签名,生成服务器证书。
4 吊销该服务器的证书。
5 提交生成的 CA 证书、服务器证书、CSR、吊销列表(CRL)和其他相关文件。

  1. 创建根CA(包括生成私钥和根证书)
    生成根CA的私钥

openssl genpkey -algorithm RSA -out rootCA.key -aes256

生成根证书 (有效期10年)

openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 3650 -out rootCA.pem

生成的 rootCA.key 是加密的私钥, rootCA.pem 是根CA的证书。

  1. 为服务器生成一个私钥和证书签署请求 (CSR)
    生成服务器的私钥

openssl genpkey -algorithm RSA -out server.key

生成CSR

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

在创建CSR时,同样你需要提供服务器的相关信息(如组织名、常用名(CN)等)。
  1. 使用根CA对服务器的CSR进行签名,生成服务器证书
    使用根CA签名CSR并生成服务器证书

openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days365 -s

根CA使用自己的私钥来签署服务器的CSR。 -CAcreateserial 选项会创建一个序列号文件,如果是第一次签名需要此选项。
  1. index.txt 和 serial 文件创建
  2. 创建 demoCA 目录和必要的文件

如果index.txt 文件不存在,需要手动创建它。根据配置文件中的路径,执行以下命令:

mkdir -p ./demoCA/newcerts
touch ./demoCA/index.txt
echo ‘1000’ > ./demoCA/serial

创建一个初始化序列文件

这里 1000 是下一个签发证书的初始序列号,你可以使用任何正整数值。
2. 创建 crlnumber 文件

根据 openssl.cnf 配置文件中指定的路径,执行以下命令:

echo ‘1000’ > ./demoCA/crlnumber

  1. 吊销服务器的证书

创建CA的吊销列表 (CRL)

openssl ca -config /etc/ssl/openssl.cnf -revoke server.crt -keyfile rootCA.key -cert rootCA.pem
openssl ca -gencrl -config /etc/ssl/openssl.cnf -keyfile rootCA.key -cert rootCA.pem -out crl.pem

标签:生命周期,rootCA,证书,CA,openssl,key,服务器
From: https://www.cnblogs.com/lududuze/p/18227427

相关文章

  • 使用 Scapy 库编写 Ping of Death 攻击脚本
    一、介绍1.1概述PingofDeath(PoD)攻击是一种历史悠久的拒绝服务(DoS)攻击,攻击者通过发送特制的畸形ICMPEcho请求数据包,导致目标系统无法正确处理,从而导致系统崩溃、重启或无法响应正常请求。这种攻击利用了ICMP协议中的缺陷,在某些情况下可以绕过防火墙或其他安全措施。1.2......
  • Docker环境下部署Tomcat、Nginx
    docker部署常见应用-Tomcat&Nginx为了简便先禁用防火墙systemctlstopfirewalld部署基本流程搜索镜像——拉取镜像——创建专用目录——运行容器——测试部署Tomcat1.搜索镜像dockersearchtomcat2.拉取镜像dockerpulltomcat3.创建tomcat专用目录#我......
  • 翻译《The Old New Thing》- What a drag: Dragging a Uniform Resource Locator (URL
    Whatadrag:DraggingaUniformResourceLocator(URL)andtext-TheOldNewThinghttps://devblogs.microsoft.com/oldnewthing/20080313-00/?p=23123RaymondChen 2008年03月13日 麻烦的拖拽:拖拽统一资源定位符(URL)和文本简要        这篇文章主要讲......
  • 翻译《The Old New Thing》- What a drag: Dragging a Uniform Resource Locator (URL
    Whatadrag:DraggingaUniformResourceLocator(URL)-TheOldNewThing(microsoft.com)https://devblogs.microsoft.com/oldnewthing/20080312-00/?p=23133RaymondChen 2008年03月12日麻烦的拖拽:拖拽统一资源定位符(URL)简要本文介绍了如何在Windows程序中实......
  • ca
    创建和管理一个CA及证书的生命周期任务详情1创建一个根CA,包括生成私钥和根证书。分析证书和0015,0034标准的符合情况2为一台服务器生成一个私钥和证书签署请求(CSR)。3使用根CA对服务器的CSR进行签名,生成服务器证书。4吊销该服务器的证书。1创建一个根CA,包括生成......
  • canvas 合并图片和文字
    代码asyncgetImgInfo(img,text){returnnewPromise((resolve,reject)=>{constcanvas=document.createElement("canvas");canvas.width=52;canvas.height=68;constctx=canvas.getContext("2d");......
  • 创建和管理一个 CA 及证书的生命周期
    任务详情0使用openssl或者gmssl,提交markdown格式文档和转化后的pdf1创建一个根CA,包括生成私钥和根证书。分析证书和0015,0034标准的符合情况2为一台服务器生成一个私钥和证书签署请求(CSR)。3使用根CA对服务器的CSR进行签名,生成服务器证书。4吊销该服务器的证书。5......
  • PostgreSQL启动报错“could not map anonymous shared memory: Cannot allocate memor
    PostgreSQL启动报错“couldnotmapanonymoussharedmemory:Cannotallocatememory”基础信息OS版本:RedHatEnterpriseLinuxServerrelease7.9(Maipo)DB版本:16.2pg软件目录:/home/pg16/softpg数据目录:/home/pg16/data端口:5777报错[pg16@test~]$pg_ctlst......
  • Vue——生命周期函数
    Vue.js的生命周期是组件从创建到销毁过程中的一系列钩子函数,这些钩子给开发者提供了在不同阶段添加自己的代码的机会。Vue.js2.x版本的生命周期主要包括以下几个阶段:创建前/后(beforeCreate/created)beforeCreate:在实例初始化之后、数据观测(dataobserver)和eve......
  • 【会议征稿,中国算力大会分会】2024算法、高性能计算与人工智能国际学术会议(AHPCAI 202
    2024算法、高性能计算与人工智能国际学术会议(AHPCAI2024)定于2024年6月21-23日在中国郑州举行。会议主要围绕算法、高性能计算与人工智能等研究领域展开讨论。会议旨在为从事算法、高性能计算与人工智能研究的专家学者、工程技术人员、技术研发人员提供一个共享科研成果和......