1. 程式人生 > >使用openSSL製作SSL證書

使用openSSL製作SSL證書

1.將openSSL的bin目錄設定為環境變數

2.set OPENSSL_CONF=E:\OpenSSL-Win32\bin\openssl.cfg

3.以管理員身份執行命令視窗

以下內容均擷取於這篇文章

新建資料夾用於存放證書,如“D:\keystore”,在命令提示符視窗切換到這個路徑,執行以下命令

1.生成伺服器的私鑰:

openssl genrsa -out server.key 1024

2.生成簽署申請(注意除Common Name以外可以為空,Common Name必須為伺服器的ip或域名):

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

3.生成CA私鑰

openssl genrsa  -out ca.key 1024

4.利用CA的私鑰產生CA的自簽署證書(注意除Common Name和organizationName以外可以為空,Common Name必須為伺服器的ip或域名(內外網區分), organizationName必須和上一次一致):

openssl req  -new -x509 -days 365 -key ca.key -out ca.crt

5. 在當前目錄建立demoCA,裡面建立檔案index.txt和serial,serial內容為01,index.txt為空,以及資料夾newcerts。

   CA為網站伺服器簽署證書:

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

6.把服務端程式碼轉換瀏覽器可以識別的PCS12格式,密碼使用上面輸入的密碼。

openssl pkcs12 -export -in server.crt -inkey server.key -out server.p12   

7.使用jetty中的PKCS12Import工具類完成轉換,密碼同上.(jetty-5.1.10.jar在當前資料夾中)

java -cp jetty-5.1.10.jar org.mortbay.util.PKCS12Import server.p12  server.jks  

8.使用下面命令檢視jks檔案中包含的證書資訊

keytool -v -list -keystore server.jks    


至此客戶端證書ca.crt以及tomcat伺服器證書server.jks已經生成完畢。