blQn
blQn

Reputation: 31

Cannot established ssl connection with rabbitmq

I am trying to establish ssl connection with rabbitmq broker. I follow this page to help me and I find my bug, but I don't know who to resolve it. I am stuck at the test connection with the broker :

openssl s_client -connect localhost:5671 -cert client/cert.pem -key client/key.pem -CAfile testca/cacert.pem

CONNECTED(00000003)
write:errno=104
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 289 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol  : TLSv1.2
Cipher    : 0000
Session-ID: 
Session-ID-ctx: 
Master-Key: 
Key-Arg   : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1470206187
Timeout   : 300 (sec)
Verify return code: 0 (ok)
---

And I have no log but I need accepting AMQP connection.

#Rabbimq.conf
[
  {rabbit, [
     {ssl_listeners, [5671]},
     {ssl_options, [{cacertfile,".../testca/cacert.pem"},
                    {certfile,".../server/cert.pem"},
                    {keyfile,".../server/key.pem"},
                    {ciphers,  [{rsa,aes_256_cbc,sha256}]},
                    {verify,verify_peer},
                    {fail_if_no_peer_cert,false}]}
   ]}
].

The certificates that I use are validated, verified and created with the doc.

I think is this issue that does not allow me to perform a ssl connection.

Thanks

Edit: I created the certificates at /var/lib/rabbitmq with the user rabbitmq and like this permissions goes right and the server can access to the certs.

Upvotes: 3

Views: 4161

Answers (2)

TIll Wegmüller
TIll Wegmüller

Reputation: 1

Adding to the error case above. If you are running inside Kubernetes make sure the content of the files is not base64 encoded

Upvotes: 0

ArkadiBernov
ArkadiBernov

Reputation: 578

Everything worked for me after I replaced in rabbitmq.config

{certfile,".../server/cert.pem"},

to full file path.

{certfile,"/data/server/cert.pem"}

The rabbitmq says nothing when it can't find or can't read certificate file.

Check permissions for certificate files!

Upvotes: 1

Related Questions