創建私有CA及頒發證書
證書申請及簽署步驟:
1、生成申請請求
2、RA核驗
3、CA簽署
4、獲取證書
三種策略:匹配、支持和可選
①匹配:指要求申請填寫的信息跟CA設置信息必須一致,默認國家、省、公司信息必須一致
②支持:指必須填寫這項申請信息,但是可以和CA信息不一致
③可選:指可有可無
創建私有CA及頒發證書步驟:
1、創建所需要的文件
①openssl的配置文件:/etc/pki/tls/openssl.cnf
如果沒有這個文件,那麽需要安裝一個包
rpm -ivh openssl-libs-1.0.1e-60.el7.x86_64.rpm
配置文件裏給定了CA的一些文件路徑,需嚴格按照該路徑存放文件。
②touch /etc/pki/CA/index.txt 生成證書索引數據庫文件
③echo 99 > /etc/pki/CA/serial 指定第一個頒發證書的序列號。那麽下個分發的序列號就是該數+1
2、CA自簽證書:
1)生成私鑰
cd /etc/pki/CA/
(umask 077; openssl genrsa -out /etc/pki/CA/private/cakey.pem 1024)
umask 077:表示生成的私鑰文件權限為700,放在小括號裏表示只對小括號裏的命令有影響,而不影響系統當前的umask。
-out :生成的私鑰放在指定文件中
1024:表示生成1024位的私鑰
2)生成自簽名證書
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out /etc/pki/CA/cacert.pem
-new: 生成新證書簽署請求
-x509: 專用於CA生成自簽證書,不加就是給別人頒發證書
-key: 生成請求時用到的私鑰文件
-days 3650:證書的有效期限
-out : 證書的保存路徑
3、頒發證書
1)在需要使用證書的主機生成證書請求
給web服務器生成私鑰:
(umask 077; openssl genrsa -out /etc/pki/tls/private/test.key 2048)
生成證書申請文件
Openssl req -new -key /etc/pki/tls/private/test.key -days 365 -out /etc/pki/tls/test.csr
2)將證書請求文件傳輸給CA
scp /etc/pki/tls/test.csr 192.168.119.128:/
3)CA簽署證書,並將證書頒發給請求者
openssl ca -in /test.csr -out /etc/pki/CA/certs/test.crt -days 365
scp /etc/pki/CA/certs/test.crt 192.168.119.129:/etc/pki/tls/
4)查看證書中的信息:
openssl x509 -in /PATH/FROM/CERT_FILE -noout -text|issuer|subject|serial|dates
openssl ca -status SERIAL 查看指定編號的證書狀態
4、吊銷證書
1)在客戶端獲取要吊銷的證書的serial
openssl x509 -in /etc/pki/CA/certs/test.crt -noout -serial -subject
2)在CA上,根據客戶提交的serial與subject信息,對比檢驗是否與index.txt文件中的信息一致,然後吊銷證書:
openssl ca -revoke /etc/pki/CA/newcerts/99.pem
3)指定第一個吊銷證書的編號
註意:第一次更新證書吊銷列表前,才需要執行
echo 01 > /etc/pki/CA/crlnumber
4)更新證書吊銷列表
openssl ca -gencrl -out /etc/pki/CA/crl/crl.pem
查看crl文件:
openssl crl -in /etc/pki/CA/crl/crl.pem -noout -text
創建私有CA及頒發證書