Tomcat服務器上安裝SSL證書?

Tomcat支持PFX格式和JKS兩種格式的證書,您可根據您Tomcat的版本擇其中一種格式的證書安裝到Tomcat上。

一、 安裝PFX格式證書

1、 根據《證書文件介紹及安裝前準備》文檔轉換證書格式,準備好PFX格式的證書。

2、在Tomcat安裝目錄下新建cert目錄,將證書文件拷貝到cert目錄下。

3、打開Tomcat > conf > server.xml文件,在server.xml文件中添加以下屬性(其中port屬性請根據您的實際情況修改,其中protocol建議爲:

protocol="org.apache.coyote.http11.Http11Protocol”):

<Connector port="443"
    protocol="HTTP/1.1"
    SSLEnabled="true"
    scheme="https"
    secure="true"
    keystoreFile="domain name.pfx"   #此处keystoreFile代表证书文件的路径,请用您证书的文件名替换domain name。
    keystoreType="PKCS12"
    keystorePass="证书密码"   #请用您证书密码替换文件中的内容。
    clientAuth="false"
    SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
    ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
    TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"
/>

4、保存server.xml文件配置。

5、(可選步驟)配置web.xml文件開啓HTTP強制跳轉HTTPS。

#在後添加以下內容:

<login-config> 
    <!-- Authorization setting for SSL --> 
    <auth-method>CLIENT-CERT</auth-method> 
    <realm-name>Client Cert Users-only Area</realm-name> 
</login-config> 
<security-constraint> 
    <!-- Authorization setting for SSL --> 
    <web-resource-collection > 
        <web-resource-name >SSL</web-resource-name> 
        <url-pattern>/*</url-pattern> 
    </web-resource-collection> 
    <user-data-constraint> 
        <transport-guarantee>CONFIDENTIAL</transport-guarantee> 
    </user-data-constraint> 
</security-constraint>

6、重啓Tomcat。

二、 安裝JKS格式證書

1、 轉換證書格式爲JKS:

      1.輸入以下java JDK命令將PFX格式的證書轉換成JKS格式:

keytool -importkeystore -srckeystore domain name.pfx -destkeystore domain name.jks -srcstoretype PKCS12 -deststoretype JKS

說明: Windows系統中,需在 %JAVA_HOME%/jdk/bin目錄下執行該命令。

2、 回車後輸入PFX證書密碼和JKS證書密碼。 說明: JKS證書密碼等同於PFX證書密碼。兩個密碼不同的時候會導致Tomcat重啓失敗。

3、 在Tomcat安裝目錄下新建cert目錄,將證書和密碼文件拷貝到cert目錄下。

4、 打開Tomcat安裝目錄 > conf文件夾 > server.xml文件,在server.xml文件中找到 <Connector port=”443”標籤並添加以下參數:

keystoreFile="cert/domain name.jks” #此處keystoreFile代表證書文件的路徑,請用您證書的文件名替換cert/後面的內容。

keystoreType="PKCS12”

keystorePass="證書密碼” #請輸入您的證書密碼。

參考以下完整配置(其中port屬性請根據您的實際情況修改):

<Connector port="443"
    protocol="HTTP/1.1"
    SSLEnabled="true"
    scheme="https"
    secure="true"
    keystoreFile="cert/domain name.jks"
    keystoreType="PKCS12"
    keystorePass="证书密码"
    clientAuth="false"
    SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
    ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,
    TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
    TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"
/>

5、 保存server.xml文件配置。

6、 重啓Tomcat。