Tomcat的Https設置及Http自動跳轉Https


Https相關介紹
    Https是由NetScape公司設計的一個基於Http的加密傳輸協議,可以這樣理解Https = Http +SSL(安全套接層),Https的端口為443,而且還需要申請CA數字證書認證。

3.Https的設置
①申明CA數字證書

這里推薦一個免費的阿里平台的CA數字證書,點擊申請 點擊Symantec>選擇證書類型增強型OV SSL,然后就會出現免費DV SSL。

 

進入證書控制台>點擊申請簽發證書>填寫申請信息,證書綁定你自己的域名:www.f8xn.top,等待申核。SSL證書:幾分鍾-幾小時左右可簽發。
域名授權驗證
RAM訪問控制,同意授權
授權系統自動添加TXT解析記錄,自動完成域名授權驗證(會在域名解析中自動增加一條txt記錄)。
數字證書有效期是在審核通過之后的1年內有效。免費證書只參綁定一個域名。

tomcat也可配置手動生成的SSL證書,這里不再介紹。
SSL證書安裝/配置
Tomcat6之前支持JKS格式證書,從Tomcat7之后開始支持PFX格式證書
審核通過后到證書控制台下載SSL證收, 包含PFX格式證書和密碼文件。
阿里雲的服務器,只支持端口443!,所以我們配置<Connector port="8443 />"節點時,填端口改成443。
並在阿里雲上面添加開放443端口,才可以用https訪問Tomcat的網站(重點)。開放端口時選擇協議類型https443。
在你的tomcat目錄下,新建目錄/apache-tomcat-8/conf/cert,把你的證書_www..com.pfx拷貝進來。
修改server.xml
vim /apache-tomcat-8/conf/cert/server.xml

HTTP證書路徑keystoreFile建議使用絕對路徑/apache-tomcat-8/conf/cert/_www.com.pfx
證書密碼填寫剛才pfx-password.txt里的密碼keystorePass="yKmbolin"。


在protocol中建議使用“org.apache.coyote.http11.Http11Protocol”,這樣對性能有最大的優化。(但是這樣會不支持中文URIEncoding="UTF-8"。)

<Connector port="443" 
     protocol="org.apache.coyote.http11.Http11Protocol" 
     SSLEnabled="true" 
     scheme="https" 
     secure="true" 
     keystoreFile="/apache-tomcat-8/conf/cert/***_www.***.com.pfx" 
     keystoreType="PKCS12" 
     keystorePass="yKmbolin" 
     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"/>

tomcat6 JKS格式證書

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
  maxThreads="150" scheme="https" secure="true"
  clientAuth="false"
  keystoreFile="/apache-tomcat-8/ssl/server.jks" keystorePass="123456" truststoreFile="/apache-tomcat-8/ssl/server.jks" truststorePass="123456" sslProtocol="TLS" />

clientAuth=”true”,則開啟雙向認證,客戶端訪問需要有客戶端證書;
keystoreFile trustStroreFile 傳入您制作好的 JKS 文件的路徑,示例中以 server.jks 為例;
keystorePass trustStrorePass 傳入您的 JKS 的密碼,示例中以 jks 的密碼 123456 為例。

Http自動跳轉Https

①編輯conf/web.xml文件

②在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> 
然后 :wq保存並退出。

③重啟Tomcat服務

 輸入  ./startup.sh

 

保存退出。重啟tomcat即可。
/apache-tomcat-85/bin/shutdown.sh
/apache-tomcat-8/bin/startup.sh

打開測試 https://www.***.com
查看網站的安全證書,在開發者工具上
按F12>Security>View certificate。

注意tomcat和jdk版本要各自支持

 

來自:https://www.cnblogs.com/f8xn/articles/10217768.html

   https://blog.csdn.net/gary_yan/article/details/77981303


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM