簡體   English   中英

SSL 連接被 NEED_WRAP 拒絕

[英]SSL connection refused with NEED_WRAP

現在的情況。 在同一個內部網絡上有 2 個節點(我們稱它們為 Bus 和 Broker)。 內部 CA 已簽署了 2 周前提出的請求。 此簽名證書已正確插入到 Broker 的“密鑰庫”以及總線的“信任庫”中。 已經驗證兩個節點的軟件都使用了適當的存儲。

當嘗試使用 JMS(或 AMQP)建立安全連接時,總線的輸出如下:

TID: [] [] [2021-06-16 11:47:08,949] ERROR {org.wso2.andes.transport.network.mina.MinaNetworkHandler} -  Exception caught by Mina {org.wso2.andes.transport.network.mina.MinaNetworkHandler}
javax.net.ssl.SSLException: Improper close state: Status = OK HandshakeStatus = NEED_WRAP

經紀人方面的錯誤是:

ERROR {org.wso2.andes.transport.network.mina.MinaNetworkHandler} -  Exception caught by Mina but without protocol engine to handle it
java.lang.NullPointerException

到目前為止我們排除的事情:

  • 證書是有效的,以及它的鏈(它仍然在到期日之前)
  • 信任庫和密鑰庫中條目的序列號匹配
  • 軟件上用於解密條目的密碼是正確的
  • 正在使用實際正確的商店(商店中有另一個鍵匹配另一個有效的服務)
  • 密鑰庫條目用於完全正確的域(並且有 2 個備選方案)
  • 證書的副本全部從信任庫中刪除

還使用 openssl 工具驗證證書。 CRT/Key/CSR 的 MD5 哈希值都匹配。

任何提示/線索表示贊賞。

所以在支持的幫助下想通了。 如果代理配置文件的代理配置中沒有明確提及,代理將回退到 TLS 1.0 。 在 Java 版本 1.8.0_292 中,TLS 1 和 1.1 已被棄用,導致通信協議非法。

通過在代理配置中添加以下行解決了這個問題:

<sslEnabledProtocols>TLSv1.2</sslEnabledProtocols>

將此添加到 broker.xml 下的 sslConnection 標記中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM