全新安装后无法访问RabbitMQ Web管理界面

时间:2014-04-03 23:01:09

标签: rabbitmq

我根据the instructions on the official site.

在新的Centos 5.10 VM上安装了最新的RabbitMQ服务器(rabbitmq-server-3.3.0-1.noarch.rpm)

我在开发之前已经多次这样做了,从来没有遇到任何问题。但是,这次我无法使用默认的guest / guest用户登录管理Web界面。

在日志中,我看到以下内容:

=ERROR REPORT==== 4-Apr-2014::00:55:15 ===
webmachine error: path="api/whoami"
"Unauthorized"

导致这种情况的原因是什么?

5 个答案:

答案 0 :(得分:518)

自3.3.0版本以来的新功能 http://www.rabbitmq.com/release-notes/README-3.3.0.txt

server
------

...
25603 prevent access using the default guest/guest credentials except via
      localhost.

如果要启用来宾用户,请先阅读this或此RabbitMQ 3.3.1 can not login with guest/guest

# remove guest from loopback_users in rabbitmq.config like this
[{rabbit, [{loopback_users, []}]}].
# It is danger for default user and default password for remote access
# better to change password 
rabbitmqctl  change_password guest NEWPASSWORD

如果您想创建一个具有admin grants的新用户:

rabbitmqctl add_user test test
rabbitmqctl set_user_tags test administrator
rabbitmqctl set_permissions -p / test ".*" ".*" ".*"

现在您可以使用测试测试进行访问。

答案 1 :(得分:49)

对于谁来到这个线程,但仍然无法在全新安装后访问管理控制台,我的问题是管理控制台未启用,我通过此命令解决了它:< / p>

  1. 转到rabbitMq命令提示符
  2. 类型:

    rabbitmq-plugins enable rabbitmq_management
    

答案 2 :(得分:11)

刚刚发生在我身上的事情让我感到头疼:

我已经设置了一个新的Linux RabbitMQ服务器并使用shell脚本来设置我自己的自定义用户(而不是guest!)。

该脚本有几个&#34;代码&#34;块:

rabbitmqctl add_user test test
rabbitmqctl set_user_tags test administrator
rabbitmqctl set_permissions -p / test ".*" ".*" ".*"

非常类似Gabriele's answer中的那个,所以我采用他的代码并且不需要编辑密码。

我仍然无法登录管理控制台。然后我注意到我在Windows中创建了安装脚本(CR + LF行结束)并将文件转换为Linux(仅限LF),然后重新启动Linux服务器上的安装脚本。

...并且仍然无法登录,因为我又花了15分钟直到我意识到反复调用add_user无法修复损坏的密码(可能以CR字符结束)。我不得不为每个用户调用change_password来修复我之前的错误:

rabbitmqctl change_password test test

(另一种解决方案是删除所有用户,然后再次调用脚本)

答案 3 :(得分:0)

如果您使用的是Mac OS,则需要打开/usr/local/etc/rabbitmq/rabbitmq-env.conf,然后 设置NODE_IP_ADDRESS=,它曾经是127.0.0.1。然后添加另一个用户作为建议的接受答案。 之后,重新启动RabbitMQ brew services restart rabbitmq

答案 4 :(得分:0)

如果在 Windows 上使用 Chocolatey 安装,请确保防火墙允许默认端口:

netsh advfirewall firewall add rule name="RabbitMQ Management" dir=in action=allow protocol=TCP localport=15672
netsh advfirewall firewall add rule name="RabbitMQ" dir=in action=allow protocol=TCP localport=5672

用于远程访问。