SSL Cetificate 生成

首先,理解一下證書的類型。

  SSL證書包括:

  1,CA證書,也叫根證書或者中間級證書。如果是單向https認證的話,該證書是可選的。不安裝CA證書的話,瀏覽器默認是不安全的。

  2,服務器證書,必選項。通過key,證書請求文件csr,再通過CA證書籤名,生成服務器證書。

  3,客戶端證書,可選項。若有客戶端證書則是雙向https驗證。

  以上所有證書都可以自己生成。

  文件後綴
    *.key:密鑰文件,一般是SSL中的私鑰;

    *.csr:證書請求文件,裏面包含公鑰和其他信息,通過簽名後就可以生成證書。

    * .crt, * .cert:證書文件,包含公鑰,簽名和其他需要認證的信息,比如主機名稱(IP)等。

    *.pem:裏面一般包含私鑰和證書的信息。

生成CA 證書

# 創建私鑰   
>openssl genrsa -out ca/ca-key.pem 1024
# 創建證書請求(crt)
>openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem
# 自簽署證書
>openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days 3650
# 將證書導出成瀏覽器支持的.p12格式
>openssl pkcs12 -export -clcerts -in ca/ca-cert.pem -inkey ca/ca-key.pem -out ca/ca.p12

服務器證書生成

# 創建私鑰   
>openssl genrsa -out server/server-key.pem 1024  
# 創建證書請求(crt)
> openssl req -new -out server/server-req.csr -key server/server-key.pem
# 自簽署證書
> openssl x509 -req -in server/server-req.csr -out server/server-cert.pem -signkey server/server-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 3650
# 將證書導出成瀏覽器支持的.p12格式
> openssl pkcs12 -export -clcerts -in server/server-cert.pem -inkey server/server-key.pem -out server/server.p12  

生成client證書

# 創建私鑰   
> openssl genrsa -out client/client-key.pem 1024 
# 創建證書請求(crt)
> openssl req -new -out client/client-req.csr -key client/client-key.pem 
# 自簽署證書
> openssl x509 -req -in client/client-req.csr -out client/client-cert.pem -signkey client/client-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 3650  
# 將證書導出成瀏覽器支持的.p12格式
> openssl pkcs12 -export -clcerts -in client/client-cert.pem -inkey client/client-key.pem -out client/client.p12 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章