創建CA

創建CA和申請證書

創建私有CA:

首先在CA服務器端創建CA。

先去看openssl的配置文件: /etc/pki/tls/openssl.cnf

一般我們不會去更改這個配置文件,但是要去看一下。我們是根據這個文件創建的CA.

這個文件里是openssl的配置文件,我們打開后只觀察與CA有關的文件。

在文本中可以看出一個主機中可以有多個CA,并且指定出默認CA為CA_default。


三種策略要求:

match匹配
supplied支持
optional可選

匹配指要求申請填寫的信息跟CA設置信息必須一致, 支持指必須填寫這項申請信息, 可選指可有可無。

要想改變策略可以直接更改該文件。

前面文檔了解之后我們就開始創建了。
首先我們先創建一個私鑰。

生成私鑰

(umask 066; openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)

我們可以查看一下目錄結構看看是否生成秘鑰文件。

tree /etc/pki/CA/


創建好私鑰后我們要自簽名證書

CA自簽證書

創建CA和申請證書,生成自簽名證書

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: 證書的保存路徑


我們可以查看一下生成的證書

openssl x509 -in /etc/pki/CA/cacert.pem -noout -text

文件里顯示的證書的詳盡信息,頒發者,有效時間什么的。

申請證書

CA自簽名做好之后要用客戶端去申請證書

申請證書前,客戶端也要先生成私鑰文件。

(umask 066;openssl genrsa -out /app/RA/service.key 4096)

然后生成證書申請文件

openssl req -new -key /app/RA/service.key -out /app/RA/service.csr

將證書請求文件傳輸給CA

scp /app/RA/service.csr 172.16.251.18:/etc/pki/CA/

為了方便管理,在CA端的/etc/pki/CA下創建msc文件并把文件請求放到文件夾里


CA簽署證書,并將證書頒發給請求者

openssl ca -in /etc/pki/CA/csr/service.csr -out /etc/pki/CA/certs/service.crt -days 365

這里報錯是因為服務器創建CA的時候沒有創建數據可文件。所以這一要創建一下這個文件。

touch /etc/pki/CA/index.txt

但是只有這個文件還是不行的,還序號文件沒有開始序號。所以這也要創建。
并且序號只能是兩位,如果不是就會報錯。

echo 01> /etc/pki/CA/serial

當然這兩步也在創建CA是就做是最好的。
然后重新頒發證書試試。


注意:默認國家,省,公司名稱三項必須和CA一致

同意之后我們可以查看一下我們剛創建的數據庫有變化沒。


這是就已經有新文件產生。數據庫發生變化。
到此申請證書結束。

我們可以查看證書的信息

openssl x509 -in certs/service.crt -noout -text

吊銷證書

在CA上,根據客戶提交的serial與subject信息,對比檢驗是否與index.txt文件中的信息一致,吊銷證書:

openssl ca -revoke newcerts/91.pem

然后擦汗一下數據庫



可以看見證書前面狀態是R ,代表已經吊銷。
然后指定第一個吊銷證書的編號
注意:第一次更新證書吊銷列表前,才需要執行

echo 01 > /etc/pki/CA/crlnumber

更新證書吊銷列表

openssl ca -gencrl -out /etc/pki/CA/crl/crl.pem

查看crl文件:

openssl crl -in /etc/pki/CA/crl/crl.pem -noout -text
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容