Tomcat配置 https SSL證書

HTTP與HTTPS的區別:HTTP協議傳輸的數據都是未加密的,也就是明文的,所以使用HTTP協議傳輸隱私信息很是不安全,爲了保證這些隱私數據能加密傳輸,因而網景公司設計了SSL(Secure Sockets Layer)協議用於對HTTP協議傳輸的數據進行加密,從而就誕生了HTTPS。簡單來講,HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,要比http協議安全。java

小程序訪問的域名配置必須是配置ssl證書的合法域名,如今阿里雲上買了個域名,備案過了,也申請了免費的ssl 證書,下載了tomcat的證書文件。下面是記錄配置過程:web

下載的證書文件,解壓後是這個樣子:只有兩個文件的,一個是pfx格式的證書,一個是密碼文本。apache

1、使用java jdk將PFX格式證書轉換爲JKS格式證書小程序

在命令行界面輸入如下代碼:vim

1.切換到證書解壓文件 的路徑:tomcat

pushd F:\1569577_wwwXXXX_tomcat安全

(這是個人文件路徑)網絡

2.使用命令:dom

keytool -importkeystore -srckeystore 你的證書名稱.pfx -destkeystore domains.jks -srcstoretype PKCS12 -deststoretype JKS工具

domains.jks是生成的jks格式證書名稱。

回車,會提示你輸入三次密碼,建議三次都是輸入密碼文本的密碼,成功後會再文件夾下生成domains.jks文件

 

 命裏行界面截圖:

2、配置server.xml

先把domains.jks證書上傳到服務上的Tomcat的conf文件夾下,我用的是FlashFXP工具上傳。

切換到conf目錄下編輯server.xml  (Linux命令)

  • cd /usr/tomcat/apache-tomcat-8.5.11/conf  注意改爲本身對應文件路徑
  • vim server.xml

 找到:

修改爲如下代碼:(443爲https默認訪問端口)

<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
              maxThreads="150" scheme="https" secure="true"
              keystoreFile="conf/domains.jks"
              keystorePass="80ISkH7c"   //證書密鑰 ,密碼文本那個
              clientAuth="false" sslProtocol="TLS" />

爲了讓http訪問自動跳轉爲https訪問,這裏順便把這兩個標籤也改了,

 

注意:若最後啓動tomcat時候報:Catalina.start using conf/server.xml: Element type "Connector" must be followed by either attribute ,請注意不要分行,每一個屬性間隔一個空格保存就好。本人遇到事這樣解決的。

找到:

改爲:

 

找到:

改爲:

保存,退出。

3、配置web.xml

編輯web.xml

  • vim web.xml

在該文件</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>

保存,退出,重啓tomcat.

測試:成功

相關文章
相關標籤/搜索