1. 程式人生 > >Tomcat8配置Https協議,Tomcat配置Https安全訪問,Tomcat Https配置

Tomcat8配置Https協議,Tomcat配置Https安全訪問,Tomcat Https配置

Tomcat8配置Https協議,Tomcat配置Https安全訪問,Tomcat Https配置

 

==============================

©Copyright 蕃薯耀 2017年11月06日

http://www.cnblogs.com/fanshuyao/

 

一、使用Jdk自帶的工具生成數字證書,如下:

 

 

Java程式碼  收藏程式碼

  1. keytool -genkey -v -alias tomcat -keyalg RSA -keystore D:\soft\apache-tomcat-8.0.47-9200\conf\key\tomcat.keystore  -validity  36500  

 keytool.exe 命令位於Java\jdk1.8.0_121\bin的目錄下,如果沒有配置Jdk的環境變數,就要進入目錄再使用。

 

命令引數部分解釋:

D:\soft\apache-tomcat-8.0.47-9200\conf\key\tomcat.keystore :表示數字證書生成後的檔案路徑

36500 :表示有效時間,36500天,預設90天



 

然後根據提示輸入資訊,如上圖所示。

 

需要注意的是:

網上說“名字與姓氏”應該是域名,輸成了姓名,和真正執行的時候域名不符,會出問題。(未知,待測試)

但我用了Mr.Li一樣可以在本地執行,具體情況不清楚,先記錄。

 

 

二、修改Tomcat的server.xml檔案支援Https

 

1、server.xml的Https配置預設是註釋掉的,如下:



 

2、去掉上圖紅色框的註釋,讓配置生效,預設埠為8443。然後再加上數字證書的屬性,如下:

keystoreFile="D:\soft\apache-tomcat-8.0.47-9200\conf\key\tomcat.keystore"

keystorePass="tomcat123",此密碼就是生成證書時的密碼。



 

 

屬性 描述
clientAuth                                                               如果設為true,表示Tomcat要求所有的SSL客戶出示安全證書,對SSL客戶進行身份驗證
keystoreFile 指定keystore檔案的存放位置,可以指定絕對路徑,也可以指定相對於<CATALINA_HOME>(Tomcat安裝目錄)環境變數 的相對路徑。如果此項沒有設定,預設情況下,Tomcat將從當前作業系統使用者的使用者目錄下讀取名為“.keystore”的檔案。
keystorePass 指定keystore的密碼,如果此項沒有設定,在預設情況下,Tomcat將使用“changeit”作為預設密碼。
sslProtocol 指定套接字(Socket)使用的加密/解密協議,預設值為TLS,使用者不應該修改這個預設值。
ciphers 指定套接字可用的用於加密的密碼清單,多個密碼間以逗號(,)分隔。如果此項沒有設定,在預設情況下,套接字可以使用任意一個可用的密碼。

 

三、然後就可以啟動tomcat測試。

1、注意:Https訪問的埠是8443,可以修改成別的埠。

 

效果如下:

IE Edge 瀏覽器:



 

 

 

 

Chrome核心瀏覽器: