首页/安全/安全加固速查/RabbitMQ 管理界面与 guest 账号
服务与端口收敛50 条

RabbitMQ 管理界面与 guest 账号

15672 管理界面默认 guest/guest(仅限 localhost 使用):一旦放开远程或弱口令,消息与队列可被完全接管。

安全加固速查安全更新于 2026-10-13

管理插件与 guest 账号

RabbitMQ 的管理插件默认监听 15672,内置 guest/guest 账号默认只允许本机登录。一旦为了图方便把这条限制改掉,或者给 guest 设了弱口令,管理界面就能被远程接管:消息、队列、用户都可任意增删。消息中间件常常是业务数据流的咽喉,被接管的影响远不止一个服务。

基本信息

适用平台Linux 与 Windows(RabbitMQ)
相关端口15672 管理界面、5672 AMQP、25672 集群通信
风险等级高
基线要求guest 不用于远程,管理面限制来源
核查工具rabbitmqctl

典型使用场景

  • 消息队列管理面的暴露面核查
  • 排查 guest 账号是否被改成可远程登录
  • 新建运维账号并按最小权限收敛
  • 收到中间件弱口令告警后的处置
  • 集群端口与插件启用情况盘点

核查与处置

核查与处置
ss -tlnp | grep -E ':15672|:5672 '        # 确认管理界面与 AMQP 端口
rabbitmqctl list_users 2>/dev/null        # 列出用户与标签
rabbitmqctl list_permissions 2>/dev/null  # 查看权限分配
rabbitmqctl add_user ops <强口令>          # 新建最小权限运维账号
rabbitmqctl set_user_tags ops monitoring  # 只授予监控标签
rabbitmqctl delete_user guest 2>/dev/null # 确认不需要后删除默认账号

复核必查项

检查项含义注意点
15672管理插件的监听端口限制来源,不对不可信网段开放
5672AMQP 协议端口同样需要账号与来源控制
loopback_usersguest 是否只允许本地登录改动过要立刻复查
用户与标签账号及其权限级别运维账号只给必要标签
插件启用状态管理插件是否开启启用即登记进暴露面清单
guest 账号仅限本地这条限制很容易被人为改掉而无人记得:任何配置变更之后都要复查 loopback_users 的实际取值。
管理界面加固了不等于协议端口安全:5672 同样需要独立账号、最小权限与来源限制,两者要分别核查。
默认虚拟主机与权限分配也要一起看:即使账号收敛好了,如果某个用户被授予了过宽的虚拟主机权限,他照样能读写与自己业务无关的队列和交换机。

易错点

  • 为图方便改掉 guest 仅限本地的限制,之后没人记得,管理面长期可远程登录
  • 只加固 15672 不管 5672,协议端口上的弱口令依旧可以直接读写队列
  • 给运维账号授予 administrator 标签图省事,权限远超实际需要
  • 启用管理插件时没有登记暴露面,后续端口盘点时把它当成未知服务

数据来源与参考

  • RabbitMQ 官方文档:Access Control
  • CIS Benchmark:消息中间件条目

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌