寫這個博客的原因是因爲上個月(2018-02-08),谷歌瀏覽器官方部落格發佈了一個未來更新的消息,原文參考:
https://blog.chromium.org/2018/02/a-secure-web-is-here-to-stay.html (蕃薔)
從2018年7月發佈的谷歌瀏覽器Ver68開始,所有Http站點都將被標記爲不安全網站。
因此對於Tomcat的默認配置,是不能訪問Https協議的,具體配置方法如下:
1、準備
這次使用的Tomcat是9.0.6版本,
2、打開Tomcat的幫助文檔,根據提示進行操作
3、生成密鑰
藉助Java內置的\bin\keytool.exe
參數詳細解釋:http://blog.csdn.net/zlfing/article/details/77648430
創建密鑰庫
keytool -genkey -v -alias tomcat -keyalg RSA -keystore D:\https\key\tomcat.keystore -validity 36500
創建客戶端的證書
keytool -genkey -v -alias client -keyalg RSA -storetype PKCS12 -keystore D:\client.p12 -validity 36500
創建服務端的證書
keytool -export -alias client -keystore D:\client.p12 -storetype PKCS12 -storepass password -rfc -file D:\clientforserver.cer
password爲自己設置的口令密碼
將服務端證書導入密鑰庫
keytool -import -v -file D:\clientforserver.cer -keystore D:\tomcat.keystore
驗證:keytool -list -keystore D:\tomcat.keystore
導入證書
運行d:\client.p12,然後根據提示進行安裝
4、配置server.xml
根據tomcat.keystore的位置,修改keystoreFile
根據口令,修改keystorePass
<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="${user.home}/.keystore" keystorePass="changeit"
clientAuth="false" sslProtocol="TLS"/>
5、啓動Tomcat,startup.bat
7、訪問https鏈接
Https://127.0.0.1:8443