CA作业

0 使用openssl或者gmssl,提交markdown格式文档和转化后的pdf
1 创建一个根 CA,包括生成私钥和根证书。分析证书和0015,0034标准的符合情况
生成根CA的私钥

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

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

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

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

openssl genpkey -algorithm RSA -out server.key

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

在创建CSR时,同样你需要提供服务器的相关信息(如组织名、常用名(CN)等)。

3 使用根 CA 对服务器的 CSR 进行签名,生成服务器证书。
使用根CA签名CSR并生成服务器证书

openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 365 -sha256




根CA使用自己的私钥来签署服务器的CSR。 -CAcreateserial 选项会创建一个序列号文件,如果是第一次签名需要此选项。

index.txt 和 serial 文件创建

创建 demoCA 目录和必要的文件
如果index.txt 文件不存在,需要手动创建它。根据配置文件中的路径,执行以下命令:
mkdir -p ./demoCA/newcerts
touch ./demoCA/index.txt
echo ‘1000’ > ./demoCA/serial

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

  1. 创建 crlnumber 文件

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

echo ‘1000’ > ./demoCA/crlnumber

4 吊销该服务器的证书。
创建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


在执行上面的命令之前,需要根据实际环境修改 openssl.cnf 配置文件,并确保 index.txt 和 serial文件存在并且可写。

posted @ 2024-06-02 21:45  20211312徐元琦  阅读(3)  评论(0编辑  收藏  举报