全部產品
Search
文件中心

Certificate Management Service:在CentOS系統下的Tomcat8.5或9安裝SSL認證

更新時間:Jun 30, 2024

本文介紹如何在CentOS系統下的Tomcat8.5或9伺服器配置SSL認證,具體包括下載和上傳認證檔案的方法,在Tomcat上配置認證檔案、認證密碼等參數介紹,以及安裝認證後效果的驗證。成功配置SSL認證後,您將能夠通過HTTPS加密通道安全訪問Tomcat伺服器,確保資料轉送的安全性。

環境準備

  • 作業系統:CentOS 7.6 64位

  • Web伺服器:Tomcat 8.5或9

說明

Tomcat伺服器需要提前安裝JDK環境變數,請前往Tomcat官網查看推薦的JDK相容配置。

前提條件

  • 已通過數位憑證管理服務控制台簽發認證。具體操作,請參見購買SSL認證提交認證申請

  • SSL認證綁定的網域名稱已完成DNS解析,即您的網域名稱與主機IP地址相互映射。您可以通過DNS驗證認證工具,檢測網域名稱DNS解析是否生效。具體操作,請參見DNS生效驗證

  • 已在Web伺服器開放443連接埠(HTTPS通訊的標準連接埠)。

    如果您使用的是阿里雲ECS伺服器,請確保已經在安全性群組規則入方向添加TCP 443連接埠。具體操作,請參見添加安全性群組規則

步驟一:下載SSL認證

  1. 登入數位憑證管理服務控制台

  2. 在左側導覽列,選擇認證管理 > SSL認證管理

  3. SSL 憑證頁面,定位到目標認證,在操作列,單擊下載

  4. 伺服器類型為Tomcat的操作列,單擊下載

    image..png

  5. 解壓縮已下載的SSL認證壓縮包。

    根據您在提交認證申請時選擇的CSR產生方式,解壓縮獲得的檔案不同,具體如下表所示。in

    CSR產生方式

    認證壓縮包包含的檔案

    系統產生

    • 認證檔案(PFX格式):預設以認證ID_認證綁定網域名稱命名。

    • 密碼檔案(TXT格式):預設以認證格式-password命名

      重要

      每次下載認證時都會產生新的密碼,該密碼僅匹配本次下載的認證檔案。

    手動填寫

    • 如果您填寫的是通過數位憑證管理服務控制台建立的CSR,下載後包含的認證檔案與系統產生的一致。

    • 如果您填寫的不是通過數位憑證管理服務控制台建立的CSR,下載後只包括認證檔案(PEM格式),不包含認證密碼或私密金鑰檔案。您可以通過認證工具,將認證檔案和您持有的認證密碼或私密金鑰檔案轉換成所需格式。轉換認證格式的具體操作,請參見認證格式轉換

步驟二:在Tomcat伺服器安裝認證

  1. 將解壓後的認證檔案和密碼檔案上傳到Tomcat伺服器的conf目錄。

    說明

    您可以使用遠程登入工具附帶的本地檔案上傳功能,上傳檔案。例如PuTTy、Xshell或WinSCP等。如果您使用的阿里雲Elastic Compute Service,上傳檔案具體操作,請參見上傳或下載檔案(Windows)上傳檔案到Linux雲端服務器

  2. 進入tomcat安裝根目錄,執行以下命令,開啟server.xml檔案。

    vim ./conf/server.xml 
  3. 在server.xml檔案中,定位到以下配置項,按照配置樣本進行配置。

    • 配置項一:

      image..png

      配置樣本:

      <Connector port="80" protocol="HTTP/1.1" #將Connector port修改為80
                     connectionTimeout="20000"
                     redirectPort="443"  #將redirectPort修改為SSL預設連接埠443,讓HTTPS請求轉寄到443連接埠。
                     maxParameterCount="1000"
                     />
    • 配置項二。

      image..png

      配置樣本(需去掉<!- - 和 - ->注釋符):

      <Connector port="443"   #將Tomcat中預設的HTTPS連接埠修改為443。8443連接埠不可通過網域名稱直接存取、需要在網域名稱後加上連接埠號碼。
                              #443連接埠是HTTPS的預設連接埠,可通過網域名稱直接存取,無需在網域名稱後加連接埠號碼。
                     protocol="org.apache.coyote.http11.Http11NioProtocol" #Connector port有兩種運行模式NIO和APR,請選擇NIO模式。
                     maxThreads="150" SSLEnabled="true"
                     maxParameterCount="1000"
                     >
              <SSLHostConfig>
                      <Certificate certificateKeystoreFile="conf/xxx.pfx" #修改為認證檔案路徑。
                                   certificateKeystorePassword="xxxxxx" #填寫認證檔案密碼。
                               type="RSA" />
              </SSLHostConfig>
      </Connector>
    • 配置項三:

      image..png

      配置樣本(需去掉<!- - 和 - ->注釋符):

      <Connector protocol="AJP/1.3"
                     address="::1"
                     port="8009"
                     redirectPort="443" ##將redirectPort修改為443,讓HTTPS請求轉寄到443連接埠。
                     maxParameterCount="1000"
                     />
  4. 可選:在/conf/web.xml檔案,配置HTTP請求自動跳轉HTTPS。

    1. 進入tomcat安裝根目錄,執行以下命令,開啟web.xml檔案。

      vim ./conf/web.xml 
    2. 在web.xml檔案<web-app>標籤內添加以下配置項。

      <security-constraint> 
               <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>
  5. 進入Tomcat的bin目錄,執行以下命令,停止Tomcat並重啟。

    ./shutdown.sh #停止Tomcat服務
    ./startup.sh #重啟Tomcat服務

步驟三:驗證SSL認證是否安裝成功

認證安裝完成後,您可通過訪問認證的綁定網域名稱驗證該認證是否安裝成功。

https://yourdomain   #需要將yourdomain替換成認證綁定的網域名稱。

如果網頁地址欄出現小鎖標誌,表示認證已經安裝成功。

image..png