openssl功能汇总

openssl实在是太过于博大精深了,经常会遇到各种需求不得不查看手册或者Google,现在将已经使用过的部分功能分类收集一下,便于日后在此查看。

产生根证书并签发证书

生成根证书

openssl genrsa -out RootCA.key 2048

 

openssl req -new -key RootCA.key -out RootCA.csr -subj /C=CN/ST=SX/O=IT/OU=Test/CN=RootCA -config openssl.cnf

 

openssl ca -selfsign -in RootCA.csr -key RootCA.key -config openssl.cnf -extensions v3_ca -out RootCA.pem -outdir ./ -batch -startdate 20190101000000Z -enddate 20290101000000Z -rand_serial
签发证书
openssl genrsa -out Server1.key 2048

 

openssl req -new -key Server1.key -out Server1.csr -subj /C=CN/ST=SX/O=IT/OU=Test/CN=Server1 -config openssl.cnf

 

openssl ca -in Server1.csr -cert RootCA.pem -keyfile RootCA.key -config openssl.cnf -extensions usr_cert -out Server1.pem -outdir ./ -batch -startdate 20190101000000Z -enddate 20290101000000Z -rand_serial
这种方式应该是最基本的证书操作流程了,生成req,自签名/签名,都是通过openssl ca来完成的,可以使用所有ca命令的参数,相比较x509来签名灵活度更高

使用openssl验证OCSP

通过openssl模拟OCSP服务

openssl ocsp -index index.txt -port 8888 -rsigner RootCA.pem -rkey RootCA.key -CA RootCA.pem

使用openssl校验证书

openssl ocsp -issuer RootCA.pem -cert Server.pem -cert Client.pem -url http://localhost:8888

 

根证书添加CRL和OCSP信息

在openssl.cnf配置文件[ v3_ca ] 一节中,添加CRL或者OCSP信息

#Authority Info Access
authorityInfoAccess = OCSP;URI:http://127.0.0.1:8888
#CRL distribution points
crlDistributionPoints = URI:http://127.0.0.1:8080/my.crl

 

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据