Наблюдение за ошибкой недостаточной безопасности после обновления сервера 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.
Пожалуйста, помогите.