RabbitMQ - 用户'guest'拒绝访问虚拟主机'XXX'

Posted

技术标签:

【中文标题】RabbitMQ - 用户\'guest\'拒绝访问虚拟主机\'XXX\'【英文标题】:RabbitMQ - access to vhost 'XXX' refused for user 'guest'RabbitMQ - 用户'guest'拒绝访问虚拟主机'XXX' 【发布时间】:2018-12-14 03:44:00 【问题描述】:

我使用的是 RabbitMQ 3.0.3 版本。该服务在过去 4-5 年中运行良好。最近在服务器上安装了一些更新补丁,服务停止响应。这就是正在发生的事情:

    RabbitMQ 服务(Windows 服务)正在运行但没有响应。 在日志文件中我看到错误access to vhost 'XXX' refused for user 'guest' 管理控制台抛出站点无法访问错误

我在这里有什么选择?由于我的代码开始失败,我无法更新 RabbitMQ 版本。我没有尝试重新安装服务。

我正在使用 RabbitMQ 3.0.3 - 我如何请求 guest 帐户即使从远程机器也可以访问。 rabbitmq.conf文件仅在3.7.0版本后出现

【问题讨论】:

你知道你是否依赖 RabbitMQ 来存储你的队列和消费者配置吗?或者应用程序可以在空白 MQ 中重新创建它吗?该错误表明访客帐户不允许进入您的色情虚拟主机,或者它可能不存在。 我以前在虚拟主机不存在时得到了这个。 听起来您的 vhost 要么不存在,要么用户 guest 无权访问它。通常来宾仅由 RMQ 限制为 localhost。使用真实的用户帐户。 @Davesoft:应用程序创建队列。就像我说的那样,这个设置已经工作了很长时间并且没有被触及。该问题出现在两台机器上。即使访客帐户在这台机器上被阻止或被删除,管理控制台也应该继续工作。如何重新创建用户帐户? @KevinSmith 如何创建 Vhost?您是如何解决这个问题的? 【参考方案1】:

我并不是说这是正确的答案,但这是我为解决此问题所做的。

令人困惑的部分: RabbitMQ 说Guest 帐户不允许从远程机器访问 RabbitMQ。我正在使用 RabbitMQ 3.0.3,我可以使用 Guest 帐户从远程机器访问 RabbitMQ。我不确定他们是否在更高版本中进行了此更改。

我应用的修复:

    已打开 RabbitMQ 管理控制台。 点击虚拟主机 创建了虚拟主机(命名并单击添加虚拟主机按钮)。 The name of Virtual host was same as the one I saw in error message "access to vhost 'XXX' refused for user 'guest'" 将该虚拟主机的权限授予访客帐户。

【讨论】:

这是正确的。在未来的版本中,guest 仅限于 localhost-only 连接。请参阅 RabbitMQ 文档中的 loopback_users 设置。

以上是关于RabbitMQ - 用户'guest'拒绝访问虚拟主机'XXX'的主要内容,如果未能解决你的问题,请参考以下文章

shutdown -s -m 为啥拒绝访问?

无法连接到 amqp://guest:**@127.0.0.1:5672//: [Errno 111] 连接被拒绝

如何为rabbitmq管理重置用户

禁止Guest用户啥意思?

(转)rabbitmq的web管理界面无法使用guest用户登录

rabbitmq guest用户远程登录