linux下利用openssl來實現證書的頒發(詳細步驟)


1、首先需要安裝openssl,一個開源的實現加解密和證書的專業系統。在centos下可以利用yum安裝。

 

2、openssl的配置文件是openssl.cnf,我們一般就是用默認配置就可以。如果證書有特殊要求的話,可以修改配置適應需求。這樣必須把相關的文件放到配置文件指定的目錄下面。

 

3、首先需要利用openssl生成根證書,以后的服務器端證書或者客戶端證書都用他來簽發,可以建立多個根證書,就像對應不同的公司一樣

   #生成根證書的私鑰 

openssl genrsa -out /home/lengshan/ca.key

  #利用私鑰生成一個根證書的申請,一般證書的申請格式都是csr。所以私鑰和csr一般需要保存好

openssl req -new -key /home/lengshan/ca.key -out /home/lengshan/ca.csr

  #自簽名的方式簽發我們之前的申請的證書,生成的證書為ca.crt

openssl x509 -req -days 3650 -in /home/lengshan/ca.csr -signkey /home/lengshan/ca.key -out /home/lengshan/ca.crt

  #為我們的證書建立第一個序列號,一般都是用4個字符,這個不影響之后的證書頒發等操作

echo FACE > /home/lengshan/serial

  #建立ca的證書庫,不影響后面的操作,默認配置文件里也有存儲的地方

touch /home/lengshan/index.txt

  #建立證書回收列表保存失效的證書

openssl ca -gencrl -out /home/lengshan/ca.crl -crldays 7

已上就完成了根證書的相關操作,下一步可以頒發證書了。

 

4、生成和簽發服務器身份驗證證書,注意證書是自簽名的,瀏覽器會提示不受信任

  #建立服務器驗證證書的私鑰

openssl genrsa -out /home/lengshan/server.key

  #生成證書申請文件

openssl req -new -key /home/lengshan/server.key -out /home/lengshan/server.csr

  #利用根證書簽發服務器身份驗證證書

openssl ca -in /home/lengshan/server.csr -cert /home/lengshan/ca.crt -keyfile /home/lengshan/ca.key -out /home/lengshan/server.crt

至此,服務器端身份認證證書已經完成,可以利用證書和私鑰生成pfx格式的證書給微軟使用,命令如下:

openssl pkcs12 -export -clcerts -in /home/lengshan/server.crt -inkey /home/lengshan/server.key -out 

 

5、簽發客戶端身份認證證書

  #生成私鑰

openssl genrsa -des3 -out /home/lengshan/users/1/1.key 1024

  #生成證書請求文件

openssl req -new -key /home/lengshan/users/1/1.key -out /home/lengshan/users/1/1.csr

  #簽發證書

openssl ca -in /home/lengshan/users/1/1.csr -cert /home/lengshan/ca.crt -keyfile /home/lengshan/users/1/1.crt

  #生成pfx格式

openssl pkcs12 -export -clcerts -in /home/lengshan/users/1/1.crt -inkey /home/lengshan/users/1/1.key -out /home/lengshan/users/1/1.p12

客戶端證書完成,注意如果在web服務器上使用客戶端證書,需要在web服務器上使用根證書對客戶端進行驗證,切記!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM