Openssl应用实例:创建私有CA并申请证书

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Openssl应用实例:创建私有CA并申请证书相关的知识,希望对你有一定的参考价值。

一:实验环境

CA:centos6   172.17.252.226

客户端:centos7 172.17.252.188

二:阅读CA相关配置文件

CA配置文件路径:/etc/pki/tls/openssl.cnf

技术分享

图一


技术分享

图二


技术分享

图三


三:证书申请及签署步骤

1、生成申请请求

2、RA核验

3、CA签署

4、获取证书

具体实验步骤

一:创建私有CA(certificate autrority  签证机构)    ##操作环境:centos6

1.创建所需要的文件  (如图一所示)

①生成证书索引数据库文件

[[email protected] ~]# touch /etc/pki/CA/index.txt

②指定第一个颁发证书的序列号

[[email protected] ~]# echo 01 > serial


二:CA自签证书 

1.生成2048位的私钥文件  (/etc/pki/CA/private/cakey.pem)

[[email protected] ~]#cd /etc/pki/CA
[[email protected] CA]# (umask 066; openssl genrsa -out private/cakey.pem -des3 2048)       ##使用des3算法生成2048为的秘钥

注意:

()的使用为了使umask值只在当前代码行有效,而不改变系统umask值

CA私钥名必须为cakey.pem

2.通过私钥生成自签名证书

[[email protected] private]# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem 
-days 7300 -out /etc/pki/CA/cacert.perm
 -new : 生成新证书签署请求
 -509 :专用CA生成自签证书
 -key :生成请求时用到的私钥文件
 -days n : 证书有效期限
 -out  /PATH/TO/SOMECERTFILE: 证书的保存路径

三:颁发证书

步骤一:在客户端生成证书请求     ##操作环境: centos 7

1、给客户端生成私钥   

[[email protected] ~]# (umask 066;openssl genrsa -out /etc/pki/tls/private/test.key 2048)

2、生成证书申请文件

[[email protected] ~]# openssl req -new -key /etc/pki/tls/private/test.key -days 365 -out /etc
/pki/tls/test.csr

注意:图一配置文件中规定,默认国家,省,公司名称三项必须和CA一致

步骤二:将证书请求文件传输给CA,并放在/app/下

[[email protected] private]# scp test.csr 172.17.252.226:/app/test.csr

步骤三:CA签署证书,并将证书颁发给客户端

[[email protected] ~]# openssl ca -in /app/test.csr -out /etc/pki/CA/certs/test.crt
[[email protected] ~]# scp /etc/pki/CA/certs/test.crt  172.17.252.188:   ##发送签署过的证书给
客户端

步骤四:查看证书中信息

途径一:查看CA索引数据库文件

[[email protected] ~]# cat /etc/pki/CA/index.txt
V       180904150811Z           01      unknown /C=CN/ST=henan/O=magedu.com/OU=dev/CN=zhao
# V  表示已签署的证书
# 01 表示证书序列
# /C...zhao  表示证书的详细信息

途径二:openssl命令查看

[[email protected] ~]# openssl x509 -in /etc/pki/CA/cacert.pem -noout -text|issuer|subject
|serial|dates

3.删除CA与客户端上的*.csr证书申请文件,以确保安全

[[email protected] ~]# rm -rf test.csr
[[email protected] ~]# rm -rf /etc/pki/tls/test.csr


四:吊销证书(/etc/pki/CA/crl/crl.pem)

1.在客户端获取要吊销证书的serial

[[email protected] ~]# openssl x509 -in test.crt -noout -serial -subject
serial=01
subject= /C=CN/ST=henan/O=magedu.com/OU=dev/CN=zhao

2.在CA上,根据客户提交的serial和subject信息,对比检验是否与index.txt一致,并吊销证书

①检验
[[email protected] ~]# cat /etc/pki/CA/index.txt

V       180904150811Z            01  unknown /C=CN/ST=henan/O=magedu.com/OU=dev/CN=zhao
##经检验,信息正确

②吊销证书
[[email protected] ~]# openssl ca -revoke /etc/pki/CA/newcerts/01.pem 
Using configuration from /etc/pki/tls/openssl.cnf
Revoking Certificate 01.
Data Base Updated
③查看数据库信息
[[email protected] ~]# cat /etc/pki/CA/index.txt
R       180904150811Z   170905012945Z   01      unknown /C=CN/ST=henan/O=magedu.com/
OU=dev/CN=zhao
## R 表示此证书已移除

3.指定第一个吊销证书编号

注意:第一次更新证书吊销列表前,才需要执行

[[email protected] ~]# echo 01 > /etc/pki/CA/crlnumber

4.更新证书吊销列表

[[email protected] ~]# openssl ca -gencrl -out /etc/pki/CA/crl/crl.pem

5.查看crl文件

[[email protected] ~]# openssl crl -in /etc/pki/CA/crl/crl.pem -noout -text

技术分享

本文出自 “13162823” 博客,请务必保留此出处http://13172823.blog.51cto.com/13162823/1968254

以上是关于Openssl应用实例:创建私有CA并申请证书的主要内容,如果未能解决你的问题,请参考以下文章

私有CA的创建和证书的申请

使用 OpenSSL 创建私有 CA:3 用户证书

Linux如何创建私有CA和申请证书

#yyds干货盘点#私有CA和证书申请

密码学系列之:使用openssl创建私有CA

私有CA建立和证书申请