標籤:參數 led 位置 server table ima tps tls SHA256
一. 建立tomcat認證
這裡使用JDK內建的keytool工具來產生認證
1. 在jdk的安裝目錄\bin\keytool.exe下開啟keytool.exe
2. 在命令列中輸入以下命令:
keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "f:\tomcat.keystore"
二. 配置tomcat伺服器
定位到tomcat伺服器的安裝目錄, 找到conf下的server.xml檔案
找到如下已經被注釋的代碼:
去掉注釋,修改為:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="F:\Keystore\tomcat.keystore" keystorePass="123456"/>
這裡,密碼和認證的位置根據個人的具體環境而設定,屬性參數如下所述:
| 屬性 |
描述 |
| clientAuth |
如果設為true,表示Tomcat要求所有的SSL客戶出示安全性憑證,對SSL客戶進行身分識別驗證 |
| keystoreFile |
指定keystore檔案的存放位置,可以指定絕對路徑,也可以指定相對於<CATALINA_HOME>(Tomcat安裝目錄)環境變數 的相對路徑。如果此項沒有設定,預設情況下,Tomcat將從當前作業系統使用者的使用者目錄下讀取名為“.keystore”的檔案。 |
| keystorePass |
指定keystore的密碼,如果此項沒有設定,在預設情況下,Tomcat將使用“changeit”作為預設密碼。 |
| sslProtocol |
指定通訊端(Socket)使用的加密/解密協議,預設值為TLS,使用者不應該修改這個預設值。 |
| ciphers |
指定通訊端可用的用於加密的密碼清單,多個密碼間以逗號(,)分隔。如果此項沒有設定,在預設情況下,通訊端可以使用任意一個可用的密碼。 |
訪問支援ssl的web網站:
啟動本場tomcat,在瀏覽器中輸入:https://localhost:8443/
註:
訪問支援ssl的web網站:
發現ssl不工作,出現如下資訊:
ERR_SSL_VERSION_OR_CIPHER_MISMATCH
解決方案是修改servlet.xml的檔案:
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="D:\Tools\Web\ssl\tomcat.keystore" keystorePass="tomcat" ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, SSL_RSA_WITH_RC4_128_SHA"/>
或者不要使用ciphers該節點屬性
配置Tomcat使用https協議