Security rabbitmq管理插件HTTP API-安全问题

Security rabbitmq管理插件HTTP API-安全问题,security,http,rabbitmq,Security,Http,Rabbitmq,我想在我的生产环境中启用RabbitMQ管理插件,但我不确定这可能带来的安全问题。 我已经有一些应用程序连接到RMQ,因此现在无法更改凭据(我使用默认设置) 有人能解释一下吗?我想知道我可能需要担心的所有事情,以及我可以做些什么来减少脆弱性 谢谢 管理插件使用凭证,这在大多数情况下都足够了,除非您希望从外部访问它。在这种情况下,iptables是您的朋友。此外,您还可以通过nginx(或apache)代理HTTP api和管理接口,并使用附加的安全层,如basic auth 如果你有点偏执(像我

我想在我的生产环境中启用RabbitMQ管理插件,但我不确定这可能带来的安全问题。 我已经有一些应用程序连接到RMQ,因此现在无法更改凭据(我使用默认设置)

有人能解释一下吗?我想知道我可能需要担心的所有事情,以及我可以做些什么来减少脆弱性


谢谢

管理插件使用凭证,这在大多数情况下都足够了,除非您希望从外部访问它。在这种情况下,iptables是您的朋友。此外,您还可以通过nginx(或apache)代理HTTP api和管理接口,并使用附加的安全层,如basic auth

如果你有点偏执(像我一样),你可以结合所有3种方法以获得更多保护(当流量控制应用到服务器上时,可以从机场的免费wifi区域等非常规位置轻松访问管理界面,但这是非常不寻常的情况)

UPD:

注意:如果您的应用程序设计不好,并且在同一帐户下将日常工作与管理工作混为一谈,您可能会遇到一些麻烦。我建议你进一步阅读

通常,从安全角度来看,为应用程序和管理工作使用单独的帐户,以及禁用默认来宾帐户(仅限外部或一般情况下)是最佳选择

如果您被迫使用默认的
guest
帐户,您可以禁用该帐户的管理插件,并仅为管理创建单独的帐户。事实上,在最近的RabbitMQ版本中,它被禁止从外部访问

为此,首先创建管理用户(带有
administrator
tag的帐户),确保它工作,然后通过删除所有标签来更新
guest
use(实际上,删除
administrator
标签是默认情况下为
guest
帐户设置的唯一标签)

这是一张默认
客户
账户的图片,并注明要删除的内容


谢谢!至于凭据,我使用的是默认用户名和密码,现在无法真正更改,因为应用程序使用它们-将此添加到我的问题中。还有iptables,是的,这也是我一直在考虑的一件事。你可以为默认的guest/guest禁用管理插件(事实上,在最近的RabbitMQ版本中,它被禁止从外部访问),并且只为管理创建单独的帐户。我似乎不知道如何为guest禁用插件。你能帮我个忙吗?用简短的方法补充我的答案。但是,对于应用程序和管理任务,只使用单独的帐户会更安全,并且完全不使用guest。如果我删除guest的admin标记,它不会影响使用它的应用程序吗?我的意思是,这是否意味着来宾用户不能创建队列,等等?