RabbitMQ 2.1.0 可以远程允许来宾用户吗?

Can RabbitMQ 2.1.0 allow guest user remotely?

我是 运行 旧版本的 RabbitMQ (2.1.0) 并尝试使用默认用户名和密码 guest 从远程服务器连接。似乎不允许访问。我已尝试 RabbitMQ's page 上的建议,将 rabbitmq.conf 设置为 [{rabbit, [{loopback_users, []}]}]. 但这不适用于我的版本。

我需要能够允许 guest 远程访问(在内部网络上)。在您回应“不要这样做不安全”或 'Upgrade' 之前,这些并不是真正的选项,因为这是在生产中并且此时还有其他依赖项。

以下是我从 Bunny/Rails/Ruby

收到的错误消息
   ERROR -- #<Bunny::Session:11821160     guest@X.X.X.X:5672, vhost=/, hosts=[###]>: Got an exception when receiving data: IO timeout when reading 7 bytes (Timeout::Error)
   WARN -- #<Bunny::Session:11821160 guest@X.X.X.X:5672, vhost=/, hosts=[####]>: Recovering from a network failure...

您需要为来宾用户设置密码

rabbitmqctl change_password guest NEW_PASSWORD

然后为您需要的虚拟主机设置权限(在您的情况下看起来像/)

rabbitmqctl set_permissions -p / ".*" ".*" ".*"    # this is full access

远程连接用户:guest 密码:NEW_PASSWORD

事实证明这不是 RabbitMQ 问题,而是 Bunny Gem 版本。从 1.6 降级到 1.4 解决了这个问题。

https://github.com/ruby-amqp/bunny#supported-rabbitmq-versions