製作Tomcat SSL憑證

1. 產生SSL Server金鑰方法:
keytool -genkeypair -keystore m.test.com.tw.keystore -alias tomcat -keyalg RSA -keysize 2048 -validity 36600 -storepass changeit
輸入以下資訊:
您的名字與姓氏為何?
[Unknown]: m.test.com.tw
您的組織單位名稱為何?
[Unknown]: Information Management Office
您的組織名稱為何?
[Unknown]: Taipei Test General Company
您所在的城市或地區名稱為何?
[Unknown]: Taipei
您所在的州及省份名稱為何?
[Unknown]: Taiwan
此單位的兩個字母國別代碼為何?
[Unknown]: TW
CN=m.test.com.tw, OU=Information Management Office, O=Taipei Veterans General
Hospital, L=Taipei, ST=Taiwan, C=TW 正確嗎?
[否]: y
2. 產生請求檔
keytool -certreq -keystore m.test.com.tw.keystore -alias tomcat -file m.test.com.tw.csr -storepass changeit
=======================================================================
後續等待 認證過的.cer鏈結檔,然後匯入原本的.keystore。

下載政府根憑證:http://gca.nat.gov.tw/repository/Certs/GCA2.cer

匯入根憑證以及 鏈結檔.cer 到keystore
cd “C:\Users\Arthur\Documents\my key\伺服器SSL"

更改檔案名稱為GCA2_root.cer,然後匯入至.keystore
keytool -import -alias root -trustcacerts -file ./GCA2_root.cer -keystore ./m.test.com.tw.keystore -storepass changeit
匯入寄來認證過的.cer鍊結檔將自己的憑證和根憑證鍊結在一起。
keytool -import -alias tomcat -keystore ./m.test.com.tw.keystore -file ./m_final.cer -storepass changeit

如果當初有不小心設錯-alias ,一定要改回tomcat才可以。
keytool -changealias -alias m.test.com.tw -destalias tomcat -keypass changeit -keystore ./m.test.com.tw.keystore -storepass changeit

如果需要檢查資訊
keytool -list -v -keystore ./m.test.com.tw.keystore

如果需要 Yale 的 CAS Server, 那麼還需要下面的兩個步驟:
依照第一步驟中所生成的 .keystore , 來產生jre8/lib/security/目錄下的 .crt 檔案
keytool -export -file $JAVA_HOME/jre/lib/security/server.crt -keystore $CATALINA_HOME/.keystore -alias tomcat -storepass changeit

導入剛剛產生的 .crt 檔案, 到 cacert 裡面
keytool -import -file $JAVA_HOME/jre/lib/security/server.crt -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit

上述兩步驟其實還可以用另外一招代替:

但是如果這個Server 不是你管的該怎麼辦?其實可以利用InstallCert.java這隻程式,去匯入Self-sign SSL Certificate。
也就是透過程式去連線HTTPS的網站,然後自動把它的certificate 下載下來,然後再另外儲存成java可以看的懂得cert檔,
最後再匯入client 端的 keystore,所以整個步驟就會簡化成:
java InstallCert [host]:[port]
keytool -exportcert -keystore jssecacerts -storepass changeit -file output.cert
keytool -importcert -keystore %JAVA_HOME%/jre/lib/security/cacerts -file output.cert

廣告

About fenjj

Perfect !!??...
本篇發表於 Uncategorized。將永久鏈結加入書籤。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s