Недостаточная безопасность с RabbitMQ 3.7.15 и Erlang 22.0.1 / 22.0.2 на centOS 7.6 - PullRequest
0 голосов
/ 10 июня 2019

Наблюдение за ошибкой недостаточной безопасности после обновления сервера RabbitMQ до 3.7.15 с Erlang 22.0.1 / 22.0.2 в centOS 7.6.

Исходное состояние системы, в которой было установлено, что работает SSL: выпуск CentOS Linux- 7.5 RMQ - 3.7.7-1.el7 Erlang - 20.3.8.2-1.el7.x86_64

Было установлено, что SSL работает даже при обновлении CentOS до 7.6 и RMQ до 3.7.15.Проверяется после перезагрузки RMQ.Однако когда Erlang был обновлен до erlang-22.0.2-1.el7.x86_64.rpm, SSL перестал работать.(После перезапуска RMQ)

Конфигурация RabbitMQ:

[
  {rabbitmq_management,
  [{listener, [{port,     15671},
               {ssl,      true},
              {ssl_opts, [{cacertfile, "<path>/cacert.pem"},
                          {certfile,   "<path>/cert.pem"},
                          {keyfile,    "<path>/key.pem"}]}
              ]}
  ]},

  {rabbit, [
     {log_levels, [{connection,info}]},
     {tcp_listeners, []},
     {ssl_listeners, [5671]},
     {ssl_options, [{cacertfile,"<path>/all_cacerts.pem"},
                    {certfile,"<path>/cert.pem"},
                    {keyfile,"<path>/key.pem"},
                    {depth, 5},
                    {verify,verify_peer},
                    {fail_if_no_peer_cert,false}]},
    {auth_mechanisms, ['PLAIN','AMQPLAIN','EXTERNAL']},
    {loopback_users, []},
    {ssl_cert_login_from, common_name}
  ]}
].

Подключаемые модули с поддержкой RabbitMQ:

[rabbitmq_auth_mechanism_ssl, rabbitmq_management, rabbitmq_shovel, rabbitmq_shovel_management].help.

Редактировать 1: Обновлен rabbitmq.config таким образом.Аутентификация на основе сертификата теперь работает.

[
      {rabbitmq_management,
      [{listener, [{port,     15671},
                   {ssl,      true},
                  {ssl_opts, [{cacertfile, "<path>/cacert.pem"},
                              {certfile,   "<path>/cert.pem"},
                              {keyfile,    "<path>/key.pem"}]},
                              {ssl, [{versions, ['tlsv1.3', 'tlsv1.2', 'tlsv1.1', 'tlsv1', 'sslv3']},
                              {ciphers, 
                                [{ecdhe_ecdsa,aes_256_gcm,aead,sha384}, {...}]}
                  ]}
      ]},

      {ssl, [{versions, ['tlsv1.3', 'tlsv1.2', 'tlsv1.1', 'tlsv1', 'sslv3']},
      {rabbit, [
         {log_levels, [{connection,info}]},
         {tcp_listeners, [5672]},
         {ssl_listeners, [5671]},
         {ssl_options, [{cacertfile,"<path>/all_cacerts.pem"},
                        {certfile,"<path>/cert.pem"},
                        {keyfile,"<path>/key.pem"},
                        {ssl, [{versions, ['tlsv1.3', 'tlsv1.2', 'tlsv1.1', 'tlsv1', 'sslv3']},
                              {ciphers, 
                                [{ecdhe_ecdsa,aes_256_gcm,aead,sha384}, {...}]},
                        {depth, 5},
                        {verify,verify_peer},
                        {fail_if_no_peer_cert,false}]},
        {auth_mechanisms, ['PLAIN','AMQPLAIN','EXTERNAL']},
        {loopback_users, []},
        {ssl_cert_login_from, common_name}
      ]}
    ].

Однако, экскаваторы с amqps с портом 5671 по-прежнему выдают ошибку.

[error] <0.7391.6> Shovel 'ShovelTest' failed to connect (URI: amqps://<ip>:5671/<blah>): {tls_alert,{insufficient_security,"received SERVER ALERT: Fatal - Insufficient Security"}}

Хотя экскаваторы отлично работают с ampq с портом 5672.

Пожалуйста, помогите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...