Não é possível ligar ao Rabbitmq usando o SSL

Tenho tentado ligar-me a Rabbitmq via SSL. Os passos que segui são os seguintes:

  1. Os certificados gerados e o ficheiro pem no servidor, usando tls-gen

    os ficheiros gerados foram os seguintes:

    • Server_key.pem

    • Server_certificate.pem

    • cliente.pem

    • Client_certificate.pem

    • Ca_key.pem

    • Ca_certificate.pem

  2. a seguir a esta ligação ao activar o ssl rabbitmq , criei um ficheiro chamado rabbitmq.config em /etc/rabbitmq, copiei um ficheiro de configuração por omissão e não comentei as linhas:

    [ {rabbit, [ {tcp_listeners, [5671]}, {ssl_listeners, [5672]}, {auth_mechanisms, ['EXTERNAL','PLAIN']}, {ssl_options, [{cacertfile,"/path/to/ca_certificate.pem"}, {certfile,"/path/to/server_certificate.pem"}, {keyfile,"/path/to/server_key.pem"}, {verify,verify_peer}, {fail_if_no_peer_cert,false}]} ]} ].

  3. copiei as chaves do cliente da máquina que estou a tentar ligar ao rabbitmq de e estou a usar os seguintes paramters:

    RABBITMQ_CONNECTION_PARAMETERS = {'host': 'rabbitmqHost', 'port': 5671, 'heartbeat_interval': 0, 'ssl': True, 'ssl_options': {'certfile':'client_certificate.pem', 'keyfile': 'client_key.pem', } }

de acordo com os parâmetros especificados nesta ligação

Sem SSL ativado e usando credenciais simples eu sou capaz de conectar ao servidor rabbitmq. No entanto, usando a configuração acima, eu recebo o erro abaixo na conexão:

depuração: pika.callback: adicionado: {'callback':>, 'only': None, 'one_shot': False,' arguments': None} 2017-03-10 16: 00: 23 [pika .callback] DEBUG: adicionado: {'callback':>, 'only': None, 'one_shot': False,' arguments': None} Depuração: pika.callback: adicionado: {'callback':>, 'only': None, 'one_shot': True, 'arguments': None,' calls': 1} 2017-03-10 16: 00: 23 [pika .callback] DEBUG: adicionado: {'callback':>, 'only': None, 'one_shot': True, 'arguments': None,' calls': 1} INFO: pika.adaptador.ligação de base: ligação ao rabbitmqSever: 5672 com SSL 2017-03-10 16: 00: 23 [pika .adaptador.base_connection] INFO: ligação ao rabbitmqSever: 5672 com SSL Aviso: pika.adaptador.base_connection: Connection to rabbitmqSever: 5672 failed: [Errno 336265218] _ssl.c: 355: erro: 140B0002: rotinas SSL: Ssl_ctx_use_ Privatekey_ file: system lib 2017-03-10 16: 00: 23 [pika .adaptador.base_connection] WARNING:Connection to rabbitmqSever: 5672 failed: [Errno 336265218] _ssl.c: 355: erro: 140B0002: rotinas SSL: Ssl_ctx_use_ Privatekey_ file: system lib Aviso: pika.ligação: não foi possível ligar, faltam 0 tentativas 2017-03-10 16: 00: 23 [pika .aviso da ligação: não foi possível ligar, 0 tentativas à esquerda Depuração: pika.callback: processamento 0: _on_ ligação _ erro 2017-03-10 16: 00: 23 [pika .callback] DEBUG: a processar 0: _on_ ligação _ erro Depuração: pika.callback : Calling > para "0: _on_ ligação _ erro" 2017-03-10 16: 00: 23 [pika .callback] DEBUG: invocando > para "0: _on_ ligação _ erro" Erro não tratado em diferido: Crítico: torcido: erro não tratado em diferido: 2017-03-10 16: 00: 23 [twisted] CRITICAL: Unhandled error in Deferred:

actualizar:

Se eu usar openssl para me ligar:

openssl s_client -connect server:5671 -cert client_certificate.pem -key client_key.pem

tenho o seguinte:

CONNECTED(00000003) 140243320723104:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:795: no peer certificate available No client certificate CA names sent SSL handshake has read 7 bytes and written 295 bytes New, (NONE), Cipher is (NONE) Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE

E os registos do rabbitmq mostram uma ligação, mas do ssl porta 5672, diz que a connect recusou.

por favor, note: eu estou conectando a rabbitmq de um scrapy spider

Author: Vaulstein, 2017-03-10