建立私有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
搜尋
複製