tomcat 添加 ssl 證書



1. 將證書提供方給的證書(server.crt)及密鑰文件(server.key)上傳到服務器 tomcat 的 conf 目錄

2. 在tomcat conf 目錄下執行以下命令

(1) 生成P12證書(須要設置密碼)

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

OpenSSL是一個安全套接字層密碼庫,其包括經常使用的密碼算法、經常使用的密鑰生成和證書封裝管理功能及SSL協議,並提供了豐富的應用程序以供測試。web

(2) 經過P12證書,生成jks 文件(包含密鑰和證書信息,也許輸入p12證書密碼,以及設置jks的密碼)

# keytool -importkeystore -srckeystore server.p12 -srcstoretype PKCS12 -destkeystore server.jks

Keytool是一個Java數據證書的管理工具 ,Keytool將密鑰(key)和證書(certificates)存在一個稱爲keystore的文件中。 
在keystore裏,包含兩種數據: 
① 密鑰實體(Key entity)——密鑰(secret key)又或者是私鑰和配對公鑰(採用非對稱加密) 
② 可信任的證書實體(trusted certificate entries)——只包含公鑰算法

3. tomcat7 配置SSL 證書

(1) 修改conf/server.xml 配置文件

其中 KeystorePass 爲生成jks文件時,設置的密碼shell

(2) 配置強制跳轉(http -> https):修改配置文件 conf/web.xml

在:</welcome-file-list>下面添加:tomcat

<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>

4. 重啓tomcat服務,完成

5. 參考資料

本文檔基於Linux tomcat7.0.70版本編寫整理。測試

相關文章
相關標籤/搜索