openssl 簽發證書

TestAL4193發表於2024-05-04

/etc/pki/tls/openssl.cnf openssl配置檔案

三種策略
match:要求申請填寫的資訊跟CA設定資訊必須一致
optional:可有可無,跟CA設定資訊可不一致
supplied:必須填寫這項申請資訊

1、建立CA所需要的檔案

生成證書索引資料庫檔案

touch /etc/pki/CA/index.txt

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

echo 01 > /etc/pki/CA/serial

2、 生成CA私鑰
cd /etc/pki/CA/
(umask 066; openssl genrsa -out private/cakey.pem 2048)
3、生成CA自簽名證書
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out
/etc/pki/CA/cacert.pem
選項說明:
-new:生成新證書籤署請求
-x509:專用於CA生成自簽證書
-key:生成請求時用到的私鑰檔案
-days n:證書的有效期限
-out /PATH/TO/SOMECERTFILE: 證書的儲存路徑

自簽名證書需要填寫的資料
國家、省份、城市、公司、部門、域名、郵箱
自簽名證書需要與後面發的證書中的3點一致(如果沒有更改策略 更改總策略:policy =policy_anything 或者更改單一策略)
國家、省份、公司

申請證書並頒發證書
1、為需要使用證書的主機生成生成私鑰
(umask 066; openssl genrsa -out /data/test.key 2048)
2、為需要使用證書的主機生成證書申請檔案(需要與前邊CA的3點一致)
openssl req -new -key /data/test.key -out /data/test.csr
3、CA簽署證書
openssl ca -in /data/test.csr -out /etc/pki/CA/certs/test.crt -days 100

4、檢視證書中的資訊:
openssl x509 -in /PATH/FROM/CERT_FILE -noout -text|issuer|subject|serial|dates

檢視指定編號的證書狀態

openssl ca -status SERIAL

吊銷證書
在客戶端獲取要吊銷的證書的serial
openssl x509 -in /PATH/FROM/CERT_FILE -noout -serial -subject
在CA上,根據客戶提交的serial與subject資訊,對比檢驗是否與index.txt檔案中的資訊一致,吊銷證
書:
openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem
指定第一個吊銷證書的編號,注意:第一次建立證書吊銷列表前,才需要執行
echo 01 > /etc/pki/CA/crlnumber
建立更新證書吊銷列表
openssl ca -gencrl -out /etc/pki/CA/crl.pem
檢視crl檔案:
openssl crl -in /etc/pki/CA/crl.pem -noout -text

cento7快速生成證書
cd /etc/pki/tls/certs
make

相關文章