Невозможно подключиться к консоли управления rabbitmq, когда включен ssl - док-станция centos - PullRequest
0 голосов
/ 06 июля 2018

Я установил rabbitmq в док-контейнер. Я использовал centos: последнее изображение для создания этого контейнера. Для установки rabbitmq я следовал следующим шагам:

  1. yum -y обновление && yum -y установить epel-release && yum -y установить wget logrotate
  2. wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-3.6.1-1.noarch.rpm
  3. об / мин - импорт https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
  4. yum install rabbitmq-server-3.6.1-1.noarch.rpm
  5. служба rabbitmq-сервер запуска
  6. rabbitmqctl add_user admin admin
  7. rabbitmqctl set_user_tags Администратор-администратор
  8. rabbitmqctl set_permissions -p / admin ". " ". " ". *"
  9. rabbitmq-plugins включить rabbitmq_management

На данный момент я могу без проблем получить доступ к консоли управления, используя URL http://localhost:15672

Затем я добавил пользовательский файл конфигурации /etc/rabbitmq/rabbitmq.config. Содержимое, если этот файл выглядит следующим образом:

[
{ rabbit, [
    { loopback_users, [ ] },
    { tcp_listeners, [ ] },
    { ssl_listeners, [ 5671 ] },
    { ssl_options, [
        { cacertfile, "/path/to/cacert" },
        { certfile, "/path/to/cert" },
        { fail_if_no_peer_cert, false },
        { keyfile, "/path/to/key" },
        { verify, verify_peer }
    ] },
    { hipe_compile, false }
] },
{ rabbitmq_management, [ { listener, [
    { port, 15672 },
    { ssl, true },
    { ssl_opts, [
        { cacertfile, "/path/to/cacert" },
        { certfile, "/path/to/cert" },
        { keyfile, "/path/to/key.pem" },
        { fail_if_no_peer_cert, false },
        { verify, verify_none }
    ] }
] } ] }
].

затем я перезапустил rabbitmq-сервис и попытался подключиться, используя url https://localhost:15672. Но это не подключение,

Следующие журналы ошибок были в файле журнала rabbitmq,

=ERROR REPORT==== 6-Jul-2018::07:35:18 ===
application: mochiweb
"Accept failed error"
"{'EXIT',\n    {{function_clause,\n         [{ssl_cipher,hash_algorithm,\"\\b\",\n              [{file,\"ssl_cipher.erl\"},{line,1175}]},\n          {ssl_handshake,'-dec_hello_extensions/2-blc$^0/1-1-',1,\n              [{file,\"ssl_handshake.erl\"},{line,1649}]},\n          {ssl_handshake,'-dec_hello_extensions/2-blc$^0/1-1-',1,\n              [{file,\"ssl_handshake.erl\"},{line,1650}]},\n          {ssl_handshake,dec_hello_extensions,2,\n              [{file,\"ssl_handshake.erl\"},{line,1649}]},\n          {tls_handshake,decode_handshake,3,\n              [{file,\"tls_handshake.erl\"},{line,182}]},\n          {tls_handshake,get_tls_handshake_aux,3,\n              [{file,\"tls_handshake.erl\"},{line,153}]},\n          {tls_connection,next_state,4,\n              [{file,\"tls_connection.erl\"},{line,454}]},\n          {gen_fsm,handle_msg,7,[{file,\"gen_fsm.erl\"},{line,505}]}]},\n     {gen_fsm,sync_send_all_state_event,[<0.500.0>,{start,20000},infinity]}}}"

В чем может быть причина этой ошибки? любая идея. Заранее спасибо.

1 Ответ

0 голосов
/ 06 июля 2018

Ошибка {function_clause, [{ssl_cipher,hash_algorithm,"\b", [{file,"ssl_cipher.erl"},{line,1196}]} возникает из-за несовместимости между старыми версиями приложения SSL в Erlang и современными веб-браузерами. Обновите Erlang до версии не ниже 18.0, чтобы избавиться от этой проблемы.

Эта проблема имеет идентификатор OTP-12829, а в заметках о выпуске она описана как:

   OTP-12829  Gracefully ignore proprietary hash_sign algorithms
...