使用openssl工具集操作证书

1、生成根密钥

openssl genrsa -out root.key 2048

2、通过root.key生成证书请求

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

这个过程中要求输入 证书请求 中的相关信息,如国家、城市、域名等

3、签名证书请求

openssl x509 -req -days 365 -in root.csr -signkey root.key -out root.crt

-in:指定要签名的证书请求

-signkey:指定签名用密钥

-out:指定生成的证书文件

4、查看生成的证书文件

openssl x509 -in  root.crt -noout -text

 

5、验证

使用openssl verify命令

-CApath directory  指定CA证书所在的目录,这个目录下可能存在证书链中的多个证书文件。为了对这个目录下的证书进行检索,证书文件的命名需要遵循xxxxxxxx.0,其中xxxxxxxx是命令 openssl x509 -hash -in 证书文件 的输出值,8个字母或数字,“.0”是要有的。

(1)对自签名证书root.crt进行验签,使用-CApath选项。

首先要x509命令的 -hash选项计算root CA的hash值:

$ openssl x509 -hash -in root.crt -noout
ec11603c
cp root.crt CApath/ec11603c.0

进行验签操作:

$ openssl verify -CApath CApath/ root.crt
root.crt: OK

 

(2)验证该证书颁发的下级证书

生成下级证书:

openssl x509 -req -days 365 -in first_level.csr -CA root.crt -CAkey root.key -CAcreateserial -out first_level.crt 

$ openssl verify -CApath CApath/ first_level.crt
first_level.crt: OK

 

posted @ 2021-05-18 16:46  hunterDing  阅读(170)  评论(0编辑  收藏  举报