1. 程式人生 > >使用docker搭建高併發網站架構實踐9--Tomcat證書部署及域名繫結

使用docker搭建高併發網站架構實踐9--Tomcat證書部署及域名繫結

1 獲取證書

如果申請證書時有填寫私鑰密碼,下載可獲得Tomcat資料夾,其中有金鑰庫 www.domain.com.jks;

如果沒有填寫私鑰密碼,不提供Tomcat證書檔案的下載,需要使用者手動轉換格式生成。

可以通過 Nginx 資料夾內證書檔案和私鑰檔案生成jks格式證書

轉換工具:https://www.trustasia.com/tools/cert-converter.htm

使用工具時注意填寫 金鑰庫密碼 ,安裝證書時配置檔案中需要填寫。

2 證書安裝

配置SSL聯結器,將www.domain.com.jks檔案存放到conf目錄下,然後配置同目錄下的server.xml檔案:

<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"

    maxThreads="150" scheme="https" secure="true"

    keystoreFile="conf\www.domain.com.jks"

    keystorePass="123456"

clientAuth="false" sslProtocol="TLS" />

3 http自動跳轉https的安全配置

到conf目錄下的web.xml。在</welcome-file-list>後面,</web-app>,也就是倒數第二段裡,加上這樣一段

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

這步目的是讓非ssl的connector跳轉到ssl的connector去。所以還需要前往server.xml進行配置:

<Connector port="8080" protocol="HTTP/1.1"

    connectionTimeout="20000"

    redirectPort="443" />

redirectPort改成ssl的connector的埠443,重啟後便會生效。

Web.xml配置:

Server.xml配置: