1. 程式人生 > 其它 >ubuntu CA安裝 證書申請

ubuntu CA安裝 證書申請

1. 安裝 :apt-get install openssl

2. 修改配置檔案:

注意不同於網上,位置在:/usr/lib/ssl/openssl.cnf,

將以下項改為自己的位置

dir = /home/ubuntu/pki/demoCA # 自己的位置

3. 建立目錄

cd /home/ubuntu/pki/demoCA

mkdircerts、crl、newcerts、private

touch index.txt

echo 01 > serial

4. 首先需要生成自前證書

1) 生成私鑰:

cd private #注意和 openssl.cnf相關,也就是私鑰在private 目錄中

openssl genrsa -out cakey.pem 2048 #cakey.pem 名字在openssl.cnf相關

2)生成證書請求,並自籤

執行以下命令,注意cacert.pem名字和位置與配置檔案相關

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

引數說明:

-new:生成新證書籤署請求

-x509:專用於CA生成自簽證書

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

-days n:證書的有效期限

-out /PATH/TO/SOMECERTFILE:證書的儲存路徑

要輸入國家名、省份名、地區(市)名、組織或公司名、部門名、伺服器名、Email地址

注意 組織,公司名。

5.申請證書

可以建立一個目錄或者另外一臺機器上。

本例:mkdir test

1)建立私鑰:

openssl genrsa -out nginx.key 2048

將建立私鑰檔案:nginx.key

2)生成公鑰

openssl req -new -key nginx.key -out nginx.csr

3) 由CA伺服器簽名

openssl ca -in nginx.csr -out nginx.crt -days 365

簽名時注意不成功錯誤, 組要是組織(Organization Name)等選項要和第4步的自簽證書要一致。

注意:上述1)、2)為客戶端自己生成,3)才是CA伺服器的簽名頒發,因此可以現在客戶端生成**.csr檔案,然後複製(scp)到CA伺服器,再執行第3步。

名詞解釋:

CSR是CertificateSigningRequest的縮寫,即證書籤名請求,這不是證書,可以簡單理解成公鑰,生成證書時要把這個提交給權威的證書頒發機構。

CRT即 certificate的縮寫,即證書

可以使用以下方式將pem轉換為crt:

openssl x509 -outform der -in cacert.pem -out cacert.crt

6. 產生公鑰為橢圓曲線ECC型別的證書1) 產生私鑰:openssl ecparam -out Ecctest.key -name prime256v1 -genkey
2) 

2)生成公鑰

openssl req -new -key Ecctest.key -out Ecctest.csr

3) 由CA伺服器簽名

openssl ca -in Ecctest.csr -out Ecctest.crt -days 365

7 產生dsa型別的證書

openssl dsaparam -genkey 512 -out dsa_test.key
openssl req -new -key dsa_test.key -out Dsa_test.csr
openssl ca -in Dsa_test.csr -out dsa_test.crt -days 365