警告:SSL 引擎不支援指定的密碼

警告:SSL 引擎不支援指定的密碼

我有一個正在運行的 Web 服務,Apache Tomcat 7其中包含以下連接器元素server.xml

<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol" 
 SSLEnabled="true" 
 maxThreads="150"
 scheme="https" 
 secure="true" 
 clientAuth="false"  
 keystoreFile="C:\Java\myhost.keystore" 
 keystorePass="importkey" 
 sslProtocol="TLS"
/>

這多年來一直運作良好,但現在Logjam出現了新的安全威脅,我正在嘗試使用為 TLS 部署 Diffie-Hellman 指南指示。

因此,我將以下行添加到<connector>元素中:

密碼=“ECDHE-RSA-AES128-GCM-SHA256、ECDHE-ECDSA-AES128-GCM-SHA256、ECDHE-RSA-AES256-GCM-SHA384、ECDHE-ECDSA-AES256-GCM-SHA384、DHERSA -SHA256,DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:EC -RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA、ECDHE-ECDSA-AES256-SHA、DHE-RSA-AES128-SHA256、DHE-RSA-AES128-RSA -AES128-SHA256、DHE-RSA-AES256-SHA256、DHE-DSS-AES256-SHA、DHE-RSA-AES256-SHA、AES128-GCM-SHA256、AES256-GCM-SHA384、AES128-GCM-SHA256、AES256-GCM-SHA384、AES128-SHA256、AES256-GCM-SHA384、AES128-256 -SHA、AES256-SHA、AES、CAMELLIA、DES-CBC3-SHA”

Tomcat 重新啟動正常,但我無法再連線到我的 Web 服務。

檢查日誌後,我注意到這一行:

警告:SSL 引擎不支援指定的密碼:ECDHE-RSA-AES128-GCM-SHA256、ECDHE-ECDSA-AES128-GCM-SHA256、ECDHE-RSA-AES256-GCM-SHA384、ECDHE-ECDSA-AESES25- GCM DHE-RSA-AES128-GCM-SHA256、DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSAAESDHE-EC ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA,ECDHE-ECDSA-AES256-SHA,DHE-RSA-AES128-RSA256,DSHA-256 AES128-SHA、DHE-DSS-AES128-SHA256、DHE-RSA-AES256-SHA256、DHE-DSS-AES256-SHA、DHE-RSA-AES256-SHA、AES128-GCM-SHA256、AES256-GCM-8 、AES128-SHA256、AES256-SHA256、AES128-SHA、AES256-SHA、AES、CAMELLIA、DES-CBC3-SHA

我在嘗試讓 Tomcat 僅使用這些密碼時缺少什麼?

如何讓 SSL 引擎支援它們?

答案1

正如所解釋的這裡您可能必須ciphers像這樣設定清單:

sslProtocols = "TLS"
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_25‌​6_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA,SSL_RSA_WITH_RC4_128_SHA"

第一部分 ECDHE 指定應使用哪種金鑰交換演算法。 [...]

接下來是身份驗證演算法 RSA。 [...]

批次密碼 AES128-GCM 是主要加密演算法,用於加密所有流量。 [...]

最後一部分 SHA256 標識正在使用的訊息摘要,用於驗證訊息的真實性。

相關內容