創建私有CA和申請證書流程
由于很多時候做實驗需要用到證書,就需要自己搭建一個私有CA來給自己頒發證書。同時通過整理創建CA和申請證書、吊銷證書的過程加深自己的理解.
PKI:Publilc Key Infrastructure
公鑰基礎設施:
簽證機構:CA
注冊機構:RA
證書吊銷列表:CRL
證書存取庫
創建私有CA所需工具:
openCA 、openssl
證書申請及簽署步驟:
1、生成申請請求
2、RA核驗
3、CA簽署
4、獲取證書
創建私有CA:
openssl的配置文件:/etc/pki/tls/openssl.cnf
openssl.cnf配置文件由許多節(section)組成,這些節指定了一系列由openssl命令使用的默認值。
一、 創建所需要的文件。
]#touch /etc/pki/CA/index.txt
]#echo 01 >/etc/pki/CA/serial
二、CA自簽證書
1、生成私鑰
]#cd /etc/pki/CA/
]#(umask 066; openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)
2、生成自簽名證書
]#openssl req –new -x509 -key /etc/pki/CA/private/cakey.pem -days 7300 -out /etc/pki/CA/cacert.pem
-new:生成新證書簽署請求。
-x509:專用于CA生成自簽證書。
-key:生成請求時用到的私鑰文件。
-out /PATH/TO/SOME_CERT_FILE:證書的保存位置。
三、頒發證書
1、在需要使用證書的主機生成證書請求
例如:給web服務器生成私鑰
(umask 066;openssl genrsa -out /etc/httpd/ssl/httpd.key 2048)
注意:存放密鑰的目錄要事先存在
2、生成證書申請文件.
]#openssl req -new -key /etc/httpd/ssl/httpd.key -days 365 -out /etc/httpd/ssl/httpd.csr
3、將證書請求文件傳輸給CA(也就是自簽證書的那臺機器)
4、CA簽署證書,并將證書頒發給請求者.
]#openssl ca -in /httpd.csr -out /etc/pki/CA/certs/httpd.crt
注意:默認國家、省公司名稱必須和CA一致
5、查看證書中的信息
]# openssl x509 –in /PATH/FROM/CERT_FILE –noout –text|subject|serial|dates
四、吊銷證書
1、在客戶端獲取要吊銷的證書的serial.
]#openssl x509 -in /tmp/httpd.crt -noout -serial -subject
2、在CA上,根據客戶提交的aerial與subject信息,對比檢驗是否與index.txt文件中的
信息一致。
吊銷證書:
]#openssl ca -revoke /etc/pki/CA/newcerts/01.pem
3、生成吊銷證書的編號(第一次吊銷一個證書時才需要執行)
echo 01 > /etc/pki/CA/crnumber
4、更新證書吊銷列表
openssl ca -gencrl -out /etc/pki/CA/crl/ca.crl
查看crl文件:
]# openssl crl -in /etc/pki/CA/crl/ca.crl -noout -text
總結:通過此次整理,將私有CA的創建,證書的頒發,證書的吊銷,證書吊銷列表的更新等操作讓我更進一步了解熟悉整個流程,也希望能給其他人一些幫助!
原創文章,作者:征(_少,如若轉載,請注明出處:http://www.www58058.com/61925