2016-04-06 2 views
0

Ich bin diese tutorial von RabbitMQ mit SSL-Verbindungen folgen.Handshake Timeout ERROR mit SSL-Verbindung in RabbitMQ

Ich habe den 5672-Port für SSL-Verbindungen konfiguriert und ich starten OpenSSL-Tool

zum Testen der Verbindung zum Hafen in lokalen (Ist ein offical Docker Behälter von RabbitMQ).

Mein rabbitmq.config ist:

[{rabbit, [ {loopback_users, []}, 
     {tcp_listeners, [5671]}, 
     {ssl_listeners, [5672]}, 
     {auth_mechanisms, ['EXTERNAL','PLAIN']}, 
     {handshake_timeout, 60000}, 
     {ssl_options, [ 
     {cacertfile, "/etc/rabbitmq/ssl/ca/cacert.pem" }, 
     {certfile, "/etc/rabbitmq/ssl/server/server.cert.pem" }, 
     {keyfile, "/etc/rabbitmq/ssl/server/server.key.pem" }, 
     {verify, verify_peer}, 
     {ssl_cert_login_from, common_name}, 
     {fail_if_no_peer_cert, true }]}]}]. 

Dann habe ich diesen Befehl ausführen:

openssl s_client -connect localhost:5672 -cert ../client/client.pem -key ../client/client.key.pem -CAfile ../ca/cacert.pem 

Und ich diesen Fehler in den RabbitMQ Protokolle:

=INFO REPORT==== 6-Apr-2016::14:16:06 === 
accepting AMQP connection <0.696.0> (127.0.0.1:34977 -> 127.0.0.1:5672) 

=ERROR REPORT==== 6-Apr-2016::14:16:06 === 
closing AMQP connection <0.696.0> (127.0.0.1:34977 -> 127.0.0.1:5672): 
{handshake_timeout,handshake} 

Antwort

1

Wenn Sie sehen, {handshake_timeout, handshake} bedeutet dies normalerweise, dass etwas den AMQP-Handshake verhindert (im Gegensatz zur TCP-Hand) schütteln) vom Abschluss. Wenn Sie den Netzwerkverkehr mit Wireshark verfolgen, erhalten Sie möglicherweise eine Vorstellung davon, an welcher Stelle des Handshake-Prozesses Sie versagen.