TOMCAT導入通過第三方證書機構獲取的證書


通常,在創建HTTPS的服務器的時候都需要一個網站的SSL證書文件,但是在網上找到的文檔基本上都是在介紹怎麼自己用keytools創建一個證書,但是這種方法申請的證書根本不會被廣大網民的瀏覽器認證,所以想要創建一個大家都能訪問的HTTPS服務,則從一個受信任的機構去申請一個證書。

而從認證網站上下載的證書中並不會包括TOMCAT可以使用的jks證書文件,那麼必須要先將證書轉換爲TOMCAT可以使用的格式。


一般來說,我們拿到的證書文件如下:(temp是文件名同樣也是我們以下示例中的證書名)


1.  temp.crt(自己網站的證書文件)

2.  temp.key (可選,私鑰,可以自己通過crt生成)

3.  root.crt(可選,證書認證機構自己的根證書)


第一步:

合併證書,生成temp.p12文件

命令行輸入:

openssl pkcs12 -export -in temp.crt -inkey temp.key -out temp.p12 -name temp

此時會提示你創建自己的密鑰和重複輸入,這個密碼請記住,下面我們還會使用


第二步:

生成 keystore 文件(jks) 需要輸入上一步的導出密碼,及指定新的 keystore 密碼   後面幾步的導入需要用到這個密碼。

<pre name="code" class="plain">keytool -importkeystore -srckeystore temp.p12 -srcstoretype PKCS12 -destkeystore temp.jks

此時會提示你輸入第一步的密碼,並且輸入新的  keystore 密碼


第三步 (可選):

生成公鑰

<pre name="code" class="plain">openssl rsa -in temp.key -out temp_public.key


第四步(可選) :

合併頒發機構的根證書(即添加信任) 

alias:信任的證書的描述

ca.crt:要添加的信任證書  同樣可以是pem等格式

<pre name="code" class="plain">keytool -keystore temp.jks -import -trustcacerts -alias alias -file ca.crt


附錄:

TOMCAT配置:

/data/app/test/temp.jks:你證書文件

123456:你的證書密碼

 <Connector port="8080" protocol="HTTP/1.1"  
               SSLEnabled="true" maxThreads="25" scheme="https"
               secure="true" clientAuth="true" sslProtocol="TLS"
               keystoreFile="/data/app/test/temp.jks" keystorePass="123456" />





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章