創建私有CA:
openssl的配置文件:/etc/pki/tls/openssl.cnf
三種策略:匹配、支持和可選
匹配指要求申請填寫的信息跟CA設置信息必須一致,支持指必須填寫這項申請信息,可選指可有可無
1、創建所需要的文件
touch /etc/pki/CA/index.txt 生成證書索引數據庫文件
echo 01 > /etc/pki/CA/serial 指定第一個頒發證書的序列號
2、CA自簽證書
生成私鑰
cd /etc/pki/CA/
(umask 066; openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)
生成自簽名證書
openssl req -new -x509 –key /etc/pki/CA/private/cakey.pem -days 7300 -out /etc/pki/CA/cacert.pem
-new: 生成新證書簽署請求
-x509: 專用于CA生成自簽證書
-key: 生成請求時用到的私鑰文件
-days n:證書的有效期限
-out /PATH/TO/SOMECERTFILE: 證書的保存路徑
3、頒發證書
A 在需要使用證書的主機生成證書請求
給web服務器生成私鑰
(umask 066; 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
B 將證書請求文件傳輸給CA
scp /etc/pki/tls/test.csr CA-IP
C CA簽署證書,并將證書頒發給請求者
openssl ca -in /tmp/test.csr –out /etc/pki/CA/certs/test.crt -days 365
注意:默認國家,省,公司名稱三項必須和CA一致
D 將證書發給請求者client
scp /etc/pki/CA/certs/test.crt client-IP
E 查看證書中的信息:
openssl x509 -in /PATH/FROM/CERT_FILE -noout -text|issuer|subject|serial|dates
openssl ca -status SERIAL 查看指定編號的證書狀態
4、吊銷證書
A 在客戶端獲取要吊銷的證書的serial
openssl x509 -in /PATH/FROM/CERT_FILE -noout -serial -subject
B 在CA上,根據客戶提交的serial與subject信息,對比檢驗是否與index.txt文件中的信息一致,
吊銷證書:
openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem
C 指定第一個吊銷證書的編號 注意:第一次更新證書吊銷列表前,才需要執行
echo 01 > /etc/pki/CA/crlnumber
D 更新證書吊銷列表
openssl ca -gencrl -out /etc/pki/CA/crl.pem
查看crl文件:
openssl crl -in /etc/pki/CA/crl.pem -noout -text