1. 程式人生 > >網站的Http請求轉為Https請求

網站的Http請求轉為Https請求

一、申請Https證書

二、安裝證書

Tomcat支援JKS格式證書,從Tomcat7開始也支援PFX格式證書,兩種證書格式任選其一。

檔案說明:

  1. 證書檔案214193373120488.pem,包含兩段內容,請不要刪除任何一段內容。

  2. 如果是證書系統建立的CSR,還包含:證書私鑰檔案214193373120488.key、PFX格式證書檔案214193373120488.pfx、PFX格式證書密碼檔案pfx-password.txt。

1、證書格式轉換

在Tomcat的安裝目錄下建立cert目錄,並且將下載的全部檔案拷貝到cert目錄中。如果申請證書時是自己建立的CSR檔案,附件中只包含214193373120488.pem檔案,還需要將私鑰檔案拷貝到cert目錄,命名為214193373120488.key;如果是系統建立的CSR,請直接到第2步。

到cert目錄下執行如下命令完成PFX格式轉換命令,此處要設定PFX證書密碼,請牢記:

openssl pkcs12 -export -out 214193373120488.pfx -inkey 214193373120488.key -in 214193373120488.pem
2、PFX證書安裝

找到安裝Tomcat目錄下該檔案server.xml,一般預設路徑都是在 conf 資料夾中。找到

<Connector port="8443"
    protocol="HTTP/1.1"
    SSLEnabled="true"
    scheme="https"
    secure
="true" keystoreFile="cert/214193373120488.pfx" 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"
/>

3、JKS證書安裝(幫助)

( 1 ) 使用java jdk將PFX格式證書轉換為JKS格式證書(windows環境注意在%JAVA_HOME%/jdk/bin目錄下執行)

keytool -importkeystore -srckeystore 214193373120488.pfx -destkeystore your-name.jks -srcstoretype PKCS12 -deststoretype JKS
回車後輸入JKS證書密碼和PFX證書密碼,強烈推薦將JKS密碼與PFX證書密碼相同,否則可能會導致Tomcat啟動失敗。

( 2 ) 找到安裝 Tomcat 目錄下該檔案Server.xml,一般預設路徑都是在 conf 資料夾中。找到

<Connector port="8443"
    protocol="HTTP/1.1"
    SSLEnabled="true"
    scheme="https"
    secure="true"
    keystoreFile="cert/your-name.jks"
    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"/>

( 注意:不要直接拷貝所有配置,只需新增 keystoreFile,keystorePass等引數即可,其它引數請根據自己的實際情況修改 )

4、 重啟 Tomcat。

5、 通過 https 方式訪問您的站點,測試站點證書的安裝配置,如遇到證書不信任問題,請檢視幫助視訊。

三、域名或者“http://”強制跳轉到“https://服務”

1.在tomcat裡找到conf資料夾下的web.xml檔案
2. 找到如下程式碼片段(在最下面)

 <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>

3.在 /welcome-file-list 下面新增

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