共计 1204 个字符,预计需要花费 4 分钟才能阅读完成。
导读 | 刚刚安装过的 rabbitmq 消息队列,并启用了插件管理功能,3.3.1 版中,处于安全的考虑,guest 这个默认的用户只能通过 http://localhost:15672 来登录,其他的 IP 无法直接使用这个账号。这对于服务器上没有安装桌面的情况是无法管理维护的,除非通过在前面添加一层代理向外提供服务,这个又有些麻烦了,这里通过配置文件来实现这个功能。 |
只要编辑 /etc/rabbitmq/rabbitmq.config 文件,添加以下配置就可以了。
[{rabbit, [{tcp_listeners, [5672]}, {loopback_users, [“asdf”]}]}
].
现在添加了一个新授权用户 asdf,可以通过外网使用这个用户名和密码访问.(记得要先用命令添加这个命令才行, #rabbitmqctl add_user asdf pwd123456) 我是通过在管理平台里直接添加的用户和密码的,我的测试环境装有桌面的。
# rabbitmqctl add_user asdf pwd123456
# rabbitmqctl list_users
Listing users ...
asdf
guest [administrator]
# rabbitmqctl set_permissions -p "/" asdf ".*" ".*" ".*"
# rabbitmqctl list_permissions -p /
Listing permissions in vhost "/" ...
asdf .* .* .*
guest .* .* .*
可以看到添加用户成功了,但不是 administrator 角色,这里我们也将 asdf 用户设置为 administrator 角色.
# rabbitmqctl set_user_tags asdf administrator
Setting tags for user "asdf" to [administrator] ..
# rabbitmqctl list_users
Listing users ...
asdf [administrator]
guest [administrator]
我用 rpm 包安装的 rabbitmq,所以提供默认的配置参考文件 (/usr/share/doc/rabbitmq-server-3.5.0/rabbitmq.config.example), 如果你使用源码编译的话,可以找到一个默认的配置文件 rabbitmq.config.example, 点击这里下载此文件 rabbitmq.config
$sudo rabbitmqctl set_permissions -p /vhost1 user_admin '.*' '.*' '.*'
该命令使用户 user_admin 具有 /vhost1 这个 virtual host 中所有资源的配置、写、读权限以便管理其中的资源。
正文完
星哥玩云-微信公众号