建立私有CA及證書頒布詳解

2021-08-07 20:18:41 字數 4221 閱讀 8251

一、ca證書簡介

二、建立私有ca

1、 建立私有ca方式:

小範圍測試使用openssl

大範圍維護大量證書企業使用openca(對openssl進行了二次封裝,更加方便使用)

2、基於openssl建立ca證書

(1)配置檔案

(2)建立步驟

以centos6作為ca主機,ip位址為192.168.159.138和centos7作為證書請求主機,ip為192.168.159.139。

在centos6

(a)建立所需要的檔案

[root@centos6/etc/pki/ca]#touch index.txt#資料庫索引檔案

[root@centos6/etc/pki/ca]#echo 01 >serial

[root@centos6/etc/pki/ca]#cat serial

01(b)建立私有金鑰

[root@centos6/etc/pki/ca]#(umask 077;openssl genrsa -out private/cakey.pem 2048)#生成金鑰檔案,加密長度為2048

[root@centos6/etc/pki/ca]#openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 666#生成ca自簽證書

-new  生成新證書簽署請求

-x509 專用於ca生成自簽證書

-key 生成請求用到的私鑰檔案

-days # 證書的有效期限

-out /path/to/somefile 證書儲存路徑

注意:上述劃紅線的地方必須與請求主機的資訊相對應,必須是乙個簽證機構的資訊。在請求證書的主機上

為了使http加密傳輸步驟如下:

(a)建立存放金鑰和ca證書的目錄

(b)生成金鑰檔案

(c)生成證書請求檔案

圖中畫圓圈的必須與上述圖中的相對應,否則簽證不成功。

(d)將生成請求的證書檔案傳送到ca主機上簽署

在centos6 ca主機中簽署證書

[root@centos6/etc/pki/ca]#ls certs/

http.csr#檢視是否成功傳送到指定目錄下

[root@centos6/etc/pki/ca]#openssl ca -in certs/http.csr -out certs/http.crt#對證書進行簽署

[root@centos6/etc/pki/ca]#scp certs/http.crt [email protected]:/etc/httpd/ssl/#將簽署證書回傳至證書請求主機中

在centos 7 請求主機上檢視是否回傳成功

[root@centos7/etc/httpd/ssl]#rm -rf http.key#為了安全,可以刪除此檔案

如果我們想對此證書吊銷如何操作呢?

在centos 6 ca主機上

(a)獲取吊銷證書的serial

-in 輸入證書檔案

-noout 證書不輸出

-serial 列印serial值

-subject 列印證書擁有者名字

(b)先根據客戶提交的serial與subject資訊對比檢驗是否與index.txt檔案資訊是否一致。如果一致吊銷證書。

[root@centos6/etc/pki/ca]#openssl ca -revoke newcerts/01.pem

(c)生成吊銷證書標號

注意:只有第一次吊銷證書時才執行此命令。

[root@centos6/etc/pki/ca]#echo 01 >crlnumber

(d)更新證書吊銷列表

[root@centos6/etc/pki/ca]#openssl ca -gencrl -out thisca.crl

(e)檢視證書吊銷列表檔案

如何給子ca頒發證書?

在上述過程中,centos7 給子ca頒發證書步驟如下:

(a)在centos 7中建立秘鑰

[root@centos7~]#cd /etc/pki/ca/

[root@centos7/etc/pki/ca]#openssl genrsa -out private/cakey.pem 2048

(b)生成ca請求

[root@centos7/etc/pki/ca]#openssl req -new -key private/cakey.pem -out subca.csr

(c)將ca請求複製到主 ca上

[root@centos7/etc/pki/ca]#scp subca.csr 192.168.159.138:/etc/pki/ca/certs/

(d)在cnetos 6上簽署

[root@centos6/etc/pki/ca]#openssl ca -in certs/subca.csr -out certs/subca.crt -days 100

(e)將簽署過的返回給centos 7

[root@centos6/etc/pki/ca]#scp certs/subca.crt 192.168.159.139:/etc/pki/ca/cacert.pem

(g)在centos 7上簽署並返還

[root@centos7/etc/pki/ca]#openssl ca -in certs/ftp.csr -out ftp.crt -days 20

這樣就完成了證書的簽發,就可以安裝證書並且使用了。

建立私有CA實現證書頒發指令碼

bin bash read p 指定ca證書名稱 name 安裝expect命令 rpm q expect dev null yum y install expect dev null 建立所需檔案if d etc pki ca then mkdir p etc pki ca fifor dirin...

建立私有CA實現證書申請頒發

openssl配置檔案 etc pki tls openssl.cnf三種策略 match匹配 optional可選 supplied提供 match 要求申請填寫的資訊跟ca設定資訊必須一致 optional 可有可無,跟ca設定資訊可不一致 supplied 必須填寫這項申請資訊 建立私有ca ...

建立私有CA並進行證書申請

由於很多時候做實驗需要用到證書,就需要自己搭建乙個私有ca來給自己頒發證書。同時通過整理建立ca和申請證書 吊銷證書的過程加深自己的理解.pki publilc key infrastructure 公鑰基礎設施 簽證機構 ca 序號產生器構 ra 證書吊銷列表 crl 證書訪問庫 建立私有ca所需...