即使设置了 cookie,RabbitMQ 身份验证也会失败

Posted

技术标签:

【中文标题】即使设置了 cookie,RabbitMQ 身份验证也会失败【英文标题】:Getting RabbitMQ authentication failing even with cookie is set 【发布时间】:2018-11-18 11:04:27 【问题描述】:

我最近在 lattePanda 上运行的 Windows 10 上安装了带有 ErlanOTP 的 rabbitmq

我运行 rabbitmqctl status 得到以下错误:

C:\Program Files\RabbitMQ 服务器\rabbitmq_server-3.7.5\sbin>rabbitmqctl 状态 节点rabbit@DESKTOP-V6GQ6RF的状态 ... 错误:无法在节点“rabbit@DESKTOP-V6GQ6RF”上执行操作。请参阅下面的诊断信息和建议。

最常见的原因是:

目标节点无法访问(例如,由于主机名解析、TCP 连接或防火墙问题) CLI 工具无法通过服务器进行身份验证(例如,由于 CLI 工具的 Erlang cookie 与服务器的不匹配) 目标节点未运行

除了以下诊断信息:

请参阅 http://rabbitmq.com/documentation.html 上的 CLI、集群和网络指南以了解更多信息 节点rabbit@DESKTOP-V6GQ6RF查询服务器日志

诊断

尝试联系:['rabbit@DESKTOP-V6GQ6RF']

兔子@DESKTOP-V6GQ6RF:

连接到 DESKTOP-V6GQ6RF 上的 epmd(端口 4369) epmd 报告节点“兔子”使用端口 25672 进行节点间和 CLI 工具流量 TCP 连接成功,但 Erlang 分发失败 身份验证失败(被远程节点拒绝),请检查 Erlang cookie

当前节点详情:

节点名称:'rabbitmqcli2@DESKTOP-V6GQ6RF' 有效用户的主目录:C:\Users\LattePanda Erlang cookie 哈希:8Kq9f/AaeixMvahU4G2v8A==

如何让 RabbitMQ 启动并运行?

在解决问题时我发现了这个帖子https://groups.google.com/forum/#!topic/rabbitmq-users/a6sqrAUX_Fg

并将环境变量设置为我在%HOMEDRIVE%%HOMEPATH%\.erlang.cookie 中找到的 Erlang Cookie,但它似乎仍然不起作用。

【问题讨论】:

【参考方案1】:

RabbitMQ 团队会监控 the rabbitmq-users mailing list,并且有时只会在 *** 上回答问题。


从正确的位置复制 cookie 很重要。 This document 根据 Erlang 版本和 Windows 版本解释它的位置。你没有提到你正在使用哪个 Erlang 版本,但我怀疑你会想要将 C:\WINDOWS\system32\config\systemprofile\.erlang.cookie 文件复制到 %HOMEDRIVE%%HOMEPATH%\.erlang.cookie。您不必设置任何环境变量,因此如果有,我建议您删除它们并重新启动服务器。

【讨论】:

以上是关于即使设置了 cookie,RabbitMQ 身份验证也会失败的主要内容,如果未能解决你的问题,请参考以下文章

即使在设置 SameSite=None 之后,Safari 也不发送 cookie;安全的

禁用 cookie 时如何验证用户身份?

Cookie 与基本身份验证

摘要身份验证返回未经授权的

rabbitmq 启动问题整理

Symfony2 - 没有会话 cookie 的有状态 API 密钥认证