簡體   English   中英

從amqp客戶端到Rabbitmq服務器的Java 8 SSL握手失敗

[英]Java 8 SSL handshake failure from amqp client to rabbitmq server

請閱讀上一篇文章的內容。 該問題已解決。 重新創建隊列並重新連接到rabbitMQ

現在,我正在嘗試在Rabbitmq服務器和Rabbit客戶端之間設置啟用ssl的連接。 我正在將Spring Boot與Spring Cloud Bus一起使用。 沒有SSL,一切都會完美無缺。

  • 用於運行Java Rabbit客戶端。

>版本

Java 1.8

spring-cloud-starter-bus-amqp => 1.3.1發布

Spring Boot父=> 1.5.9.RELEASE

須藤java -Djavax.net.debug = all -Dhttps.protocols = TLSv1 -jar target / rabbit-client-0.0.1-SNAPSHOT.jar

也嘗試過-Dhttps.cipherSuites = TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

  • 我在下面的命令中使用了它,其結果與“已驗證” [確定]相同。 這告訴我,rabbitmq服務器已使用證書正確配置。
 openssl s_client -connect my.rabbitmq.com:5671 -cert nonprod.crt -key nonprod.key -CAfile nonprod-chain.crt -tls1 -prexit 
  • 我可以從Chrome瀏覽器訪問rabbitmq managemnet門戶,它信任證書,因為我將其添加為鑰匙串信任。
  • 我已將證書和CA證書添加到Java密鑰存儲區並信任它。
  • Amqp客戶端無法建立連接,並且在啟用SSL的情況下失敗。

鏈接以查看錯誤和調試日志

參見以下故障。

我認為這可能是問題,但不確定。

TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLSv1.1出現在不受支持的密碼列表中,可能是Rabbitmq服務器要求作為加密套件。

TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384不支持???

問題是Erlang OTP由於無效的密鑰用法字段將證書拒絕為不良證書。 請遵循以下准則來創建證書。 http://erlang.org/documentation/doc-5.7.4/lib/ssl-3.10.7/doc/html/pkix_certs.html

暫無
暫無

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

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