国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 操作系統(tǒng) > 正文

OpenSSL 自建CA及簽發(fā)證書

2024-06-28 16:02:13
字體:
供稿:網(wǎng)友

ref: http://rhythm-zju.blog.163.com/blog/static/310042008015115718637/

利用 OpenSSL 建立 CA 及自行簽發(fā)證書。

1. 創(chuàng)建CA目錄結(jié)構(gòu)

在CA的配置文件中,有說明默認(rèn)CA的目錄。 這里寫圖片描述 創(chuàng)建默認(rèn)CA下的目錄及文件如下圖(.old文件和.attr文件是簽發(fā)證書后自動生成的文件)。 這里寫圖片描述

其中, newcerts目錄用于存放CA簽署(頒發(fā))過的數(shù)字證書(證書備份目錄)。 PRivate目錄用于存放CA的私鑰。 文件serial和index.txt分別用于存放下一個證書的序列號和證書信息數(shù)據(jù)庫。 文件serial填寫第一個證書序列號(如10000001),之后每前一張證書,序列號自動加1。

2. 生成CA 證書的 RSA 密鑰對

genrsa——用于生成 RSA 密鑰對的 OpenSSL 命令。

openssl genrsa -des3 -out ./demoCA/private/cakey.pem 2048

這里寫圖片描述

-des3 使用 3-DES 對稱加密算法加密密鑰對,該參數(shù)需要用戶在密鑰生成過程中輸入一個口令用于加密。今后使用該密鑰對時,需要輸入相應(yīng)的口令。如果不加該選項,則不對密鑰進(jìn)行加密。

3. 生成CA證書請求

req——用于生成證書請求的 OpenSSL 命令。

openssl req -new -days 365 -key ./demoCA/private/cakey.pem -out careq.pem

這里寫圖片描述

-new 生成一個新的證書請求。該參數(shù)將令 OpenSSL 在證書請求生成過程中要求用戶填寫一些相應(yīng)的字段。

-days 365 從生成之時算起,證書時效為 365 天。

-key ./demoCA/private/cakey.pem 指定 ./demoCA/private/cakey.pem 為證書所使用的密鑰對文件。

-out careq.pem 令生成的證書請求保存到文件 careq.pem 。

4. 對 CA 證書請求進(jìn)行自簽名

ca——用于執(zhí)行 CA 相關(guān)操作的 OpenSSL 命令。 OpenSSL 使用證書請求中附帶的密鑰對對該請求進(jìn)行簽名,也就是所謂的“ self sign ”(自簽名)。

openssl ca -selfsign -in careq.pem -out cacert.pem

這里寫圖片描述

-selfsign 使用對證書請求進(jìn)行簽名的密鑰對來簽發(fā)證書。

-in careq.pem 指定 careq.pem 為證書請求文件。

-out cacert.pem 指定 cacert.pem 為輸出的CA根證書。

3&4. 一步完成 CA 證書生成及簽名

第三步和第四步,可以用一條命令來完成。

openssl req -new -x509 -days 365 -key ./demoCA/private/cakey.pem -out cacert.pem

這里寫圖片描述

關(guān)鍵參數(shù):-x509

5. 生成用戶密鑰對

openssl genrsa -des3 -passout pass:123456 -out userkey.pem 1024

這里寫圖片描述

-passout arg: arg為對稱加密的密碼(使用這個參數(shù)就省去了console交互提示輸入密碼的環(huán)節(jié))

6. 生成用戶證書請求文件

openssl req -new -days 365 -key userkey.pem -out userreq.pem

這里寫圖片描述

7.對用戶證書簽名

openssl ca -in userreq.pem -out usercert.pem

這里寫圖片描述

原因:CA根證書找不到,第4步生成的根證書放的位置不對。把4步生成的cacert.pem移動到./demoCA目錄下即可。 這里寫圖片描述

仍然失敗,原因:證書請求文件的單位名稱和CA根證書的證書請求文件的單位名稱不一致。而在Openssl的配置文件中,要求一致。 這里寫圖片描述 將[policy_match]的 organizationName = match 改為:organizationName = optional 再次簽名成功了。 這里寫圖片描述

8. 查看證書的內(nèi)容

openssl x509 -in usercert.pem -text -noout

這里寫圖片描述

將證書文件后綴名改為crt,在Windows中可以直接查看。 這里寫圖片描述 這里寫圖片描述


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 达州市| 哈巴河县| 武威市| 天津市| 科尔| 安徽省| 恭城| 濉溪县| 兴文县| 长岭县| 山西省| 呼伦贝尔市| 鱼台县| 南阳市| 鸡西市| 平遥县| 德清县| 噶尔县| 梅河口市| 额敏县| 满城县| 定西市| 宣城市| 大渡口区| 清原| 昂仁县| 志丹县| 游戏| 东城区| 阳高县| 宝鸡市| 滨州市| 东港市| 丁青县| 莱西市| 宜川县| 罗甸县| 西安市| 普定县| 清苑县| 宜川县|