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。