Openssl應用實例:建立私有CA並申請證書

一:實驗環境算法

CA:centos6   172.17.252.226數據庫

客戶端:centos7 172.17.252.188centos

二:閱讀CA相關配置文件安全

CA配置文件路徑:/etc/pki/tls/openssl.cnfapp

wKioL1nHK-TwE1IeAAH6fKTFFgQ047.png

圖一ide


wKioL1nHLfrBbVrnAACvd2-vPB0165.png

圖二centos7


wKiom1nHL0ixhL1_AAC_VfWkjvg909.png

圖三spa


三:證書申請及簽署步驟
orm

一、生成申請請求blog

二、RA覈驗

三、CA簽署

四、獲取證書

具體實驗步驟

一:建立私有CA(certificate autrority  簽證機構)    ##操做環境:centos6

1.建立所須要的文件  (如圖一所示)

①生成證書索引數據庫文件

[root@centos6 ~]# touch /etc/pki/CA/index.txt

②指定第一個頒發證書的序列號

[root@centos6 ~]# echo 01 > serial


二:CA自簽證書 

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

[root@centos6 ~]#cd /etc/pki/CA
[root@centos6 CA]# (umask 066; openssl genrsa -out private/cakey.pem -des3 2048)       ##使用des3算法生成2048爲的祕鑰

注意:

()的使用爲了使umask值只在當前代碼行有效,而不改變系統umask值

CA私鑰名必須爲cakey.pem

2.經過私鑰生成自簽名證書

[root@centos6 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

一、給客戶端生成私鑰   

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

二、生成證書申請文件

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

注意:圖一配置文件中規定,默認國家,省,公司名稱三項必須和CA一致

步驟二:將證書請求文件傳輸給CA,並放在/app/下

[root@centos7 private]# scp test.csr 172.17.252.226:/app/test.csr

步驟三:CA簽署證書,並將證書頒發給客戶端

[root@centos6 ~]# openssl ca -in /app/test.csr -out /etc/pki/CA/certs/test.crt
[root@centos6 ~]# scp /etc/pki/CA/certs/test.crt  172.17.252.188:   ##發送簽署過的證書給
客戶端

步驟四:查看證書中信息

途徑一:查看CA索引數據庫文件

[root@centos6 ~]# 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命令查看

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

3.刪除CA與客戶端上的*.csr證書申請文件,以確保安全

[root@centos6 ~]# rm -rf test.csr
[root@centos7 ~]# rm -rf /etc/pki/tls/test.csr


四:吊銷證書(/etc/pki/CA/crl/crl.pem)

1.在客戶端獲取要吊銷證書的serial

[root@centos7 ~]# 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一致,並吊銷證書

 
 

①檢驗
[root@centos6 ~]# cat /etc/pki/CA/index.txt

V       180904150811Z            01  unknown /C=CN/ST=henan/O=magedu.com/OU=dev/CN=zhao
##經檢驗,信息正確

②吊銷證書
[root@centos6 ~]# openssl ca -revoke /etc/pki/CA/newcerts/01.pem 
Using configuration from /etc/pki/tls/openssl.cnf
Revoking Certificate 01.
Data Base Updated
③查看數據庫信息
[root@centos6 ~]# cat /etc/pki/CA/index.txt
R       180904150811Z   170905012945Z   01      unknown /C=CN/ST=henan/O=magedu.com/
OU=dev/CN=zhao
## R 表示此證書已移除

3.指定第一個吊銷證書編號

注意:第一次更新證書吊銷列表前,才須要執行

[root@centos6 ~]# echo 01 > /etc/pki/CA/crlnumber

4.更新證書吊銷列表

[root@centos6 ~]# openssl ca -gencrl -out /etc/pki/CA/crl/crl.pem

5.查看crl文件

[root@centos6 ~]# openssl crl -in /etc/pki/CA/crl/crl.pem -noout -text

wKioL1nHquqCcmFyAAEbOR6WbHE903.png

相關文章
相關標籤/搜索