rabbitmq使用ldap进行身份验证,内部用于2节点集群中的授权无效

时间:2017-11-13 14:13:18

标签: ldap rabbitmq

上午,

我集群了两台服务器,它正在使用只使用ldap后端的rabbitmq.config。我试图改变它,所以它只使用ldap进行身份验证,内部进行授权,我可以登录第一台服务器上的管理控制台(rabbitmq01p)。但是,如果我尝试访问第二台服务器(rabbitmq02p)管理控制台,它现在会抛出:

获得了带身体的回复代码500

即使使用我创建的测试内部用户radmin,也会发生这种情况。 我不确定需要改变什么。

rabbitmq.config:

[
  {rabbit, [
    {loopback_users, []},
    {auth_backends, [{rabbit_auth_backend_ldap, 
rabbit_auth_backend_internal}, rabbit_auth_backend_internal]},
    {log_levels, [{channel, info}, {connection, info}, {federation, info}, 
    mirroring, info}]},
    {tcp_listen_options,
         [binary,
         {packet,        raw},
         {reuseaddr,     true},
         {backlog,       128},
         {nodelay,       true},
         {exit_on_close, false}]
    },
    {default_user, <<"radmin">>},
    {default_pass, <<"radmin">>}

  ]},
  {kernel, [

  ]}
,
  {rabbitmq_management, [
    {listener, [
      {port, 15672}
    ]}
  ]}
   %% {listener, [{port,     12345},
   %%             {ip,       "127.0.0.1"},
   %%             {ssl,      true},
   %%             {ssl_opts, [{cacertfile, "/path/to/cacert.pem"},
   %%                         {certfile,   "/path/to/cert.pem"},
   %%                         {keyfile,    "/path/to/key.pem"}]}]},
,
{rabbitmq_auth_backend_ldap, [
    {other_bind, {"CN=LDAP Demo,OU=Generic and Shared 
Accounts,OU=Admin,dc=usa,dc=company,dc=com", "password"}},
    {servers, ["ldap-server.company.com"]},
    {user_dn_lookup_attribute, "sAMAccountName"},
    {dn_lookup_base, "ou=User Accounts,ou=USA,DC=company,DC=com" },
    {user_dn_pattern, "${username}@usa.company.com" },
    {use_ssl, false},
    {port, 3268},
    {log,true},
    {group_lookup_base, "ou=Groups,dc=usa,dc=company,dc=com"},
    {tag_queries, [{administrator, {in_group, "CN=Server 
Team,OU=Groups,DC=usa,DC=company,DC=com"}},
                   {management,    {constant, true}}]}
   ]
  }
].

日志中的错误:

=错误报告==== 2017年11月13日:: 09:03:26 === Ranch监听器rabbit_web_dispatch_sup_15672已经以cowboy_protocol:start_link / 4&lt; 0.1234.0&gt;开始连接过程。退出原因:{[{reason,{badmatch,undefined}},{mfa,{rabbit_mgmt_wm_whoami,is_authorized,2}},{stacktrace,[{rabbit_auth_backend_ldap,env,1,[{file,“src / rabbit_auth_backend_ldap.erl” },{线,580}]},{rabbit_auth_backend_ldap,日志,2,[{文件, “SRC / rabbit_auth_backend_ldap.erl”},{线,721}]},{rabbit_auth_backend_ldap,user_login_authentication,2,[{文件,” SRC / rabbit_auth_backend_ldap.erl “},{线,74}]},{rabbit_access_control,try_authenticate,3,[{文件,” SRC / rabbit_access_control.erl“},{线,88}]},{rabbit_access_control,' - check_user_login /2-fun-0-',4,[{file,"src/rabbit_access_control.erl"},{line,65}]},{lists,foldl,3,[{file,"lists.erl“}, {线,1248}]},{rabbit_mgmt_util,is_authorized,6,[{文件, “SRC / rabbit_mgmt_util.erl”},{线,160}]},{cowboy_rest,呼叫,3,[{文件,“SRC / cowboy_rest.erl“},{线,976}]}]},{REQ,[{插座,#端口&LT; 0.25192&GT;},{运输,ranch_tcp},{连接,保持活动},{PID,&LT; 0.1234。 0 GT;},{方法,&LT;&LT; “GET” &GT;&GT;},{版本, 'HTTP / 1.1'},{对等体,{{10,2,2,144},52823}},{主机,&LT ;&LT;“esrabbitmq0 2p.usa.company.com “&GT;&GT;},{host_info,未定义},{端口,15672},{路径,&LT;&LT;”/ API / WHOAMI“&GT;&GT;},{PATH_INFO,未定义} {QS,&LT;&LT;&GT;&GT;},{qs_vals,[]},{绑定,[]},{标头,[{&LT;&LT; “宿主” &GT;&GT;,&LT;&LT;” esrabbitmq02p.usa.company.com:15672">>},{<<"connection">>,<<"keep-alive">>},{<<” user-agent“&gt;&gt;,&lt;&lt;”Mozilla / 5.0(Windows NT 10.0; Win64平台; x64)AppleWebKit / 537.36(KHTML,与Gecko一样)Chrome / 61.0.3163.100 Safari / 537.36“&gt;&gt;},{&lt;&lt;”授权“&gt;&gt;,&lt;&lt;”基本cmFkbWpzOnJhZG1pbg ==“&gt ;&GT;},{&LT;&LT; “内容类型” &GT;&GT;,&LT;&LT; “应用程序/ JSON” &GT;&GT;},{&LT;&LT; “接受” &GT;&GT;,&LT; &LT; “ / ” &GT;&GT;},{&LT;&LT; “参照” &GT;&GT;,&LT;&LT; “http://esrabbitmq02p.usa.company.com:15672/” &GT;&GT;},{&LT ;&lt;“accept-encoding”&gt;&gt;,&lt;&lt;“gzip,deflate”&gt;&gt;},{&lt;&lt;“accept-language”&gt;&gt;,&lt;&lt;“en- US,连接; q = 0.8 “&GT;&GT;},{&LT;&LT;” 曲奇 “&GT;&GT;,&LT;&LT;” _ SI_VID_1.681cceba2200012815576dcc = 3bafef640f2a946d6f48e512; _vwo_uuid_v2 = 5707BE963C1A8F85D47ABE721862DCD2 | e694e7c388bfb2dd860621dc71c082fc; _ceg.s = ow9umn; _ceg.u = ow9umn; RDTC = 1; __utmz = 234506268.1505479911.21.2.utmcsr = favorites.usa.company.com | utmccn =(引荐)| utmcmd =转诊| utmcct = /; _SI_VID_3.681cceba2200012815576dcc = 3bafef640f2a946d6f48e512; LPVID = lmMWNkODgyOWJiMDYzN2Jk; rxVisitor = 15053163485147G3CS2HA9NUHJFVP185Q0ASL8J4DDIV2; amlbcookie = 03; iPlanetDirectoryPro = AQIC5wM2LY4Sfcyx28ueXpdDc1glrOUlOpBpriQ5JrEN_3Y AAJTSQACMDIAAlNLABMtNjg0NTczODcxNTgzMTczMjU1AAJTMQACMDM 。。; __utma = 234506268.404039322.1499344780.1509745463.1510321495.40; __utmc = 234506268; _ga = GA1.2.404039322.1499344780; M = 2258:cmFkbWluOnJhZG1pbg%253D%253D “&GT;&GT;}]},{p_headers,[{&LT;&LT;” 连接 “&GT;&GT;,并[d&LT;” 保持活动“&GT;&GT;] }]},{饼干,未定义},{元,[]},{body_state,等待},{缓冲器,&LT;&LT;&GT;&GT;},{多,未定义},{resp_compress,TRUE},{resp_state ,等待},{resp_headers,[{&LT;&LT; “变化” &GT;&GT;,&LT;&LT; “原点” &GT;&GT;}]},{resp_body,&LT;&LT;&GT;&GT;},{ onresponse,#趣味}]},{状态,{上下文中,未定义的,无,未定义}}],[{cowboy_rest,is_authorized,2,[{文件, “SRC / cowboy_rest.erl”},{线,150}] },{cowboy_protocol,执行,如图4所示,[{文件, “SRC / cowboy_protocol.erl”},{线,442}]}]}

1 个答案:

答案 0 :(得分:0)

我不确定何时/如何错过它,但我必须跑(重新运行?)

rabbitmq-plugins启用rabbitmq_auth_backend_ldap

此后,身份验证工作正常。

相关问题