Linux环境下 RabbitMQ 详细安装教程
Linux服务器下直接执行下载命令
一定要按顺序!!!
rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm

rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm

rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm
3 修改配置

RabbitMQ的核心配置文件(显然就是个JSON格式文件),在这里可以查看到rabbitmq默认监听的端口号是5672

找到loopback_users配置项,去除guest,然后保存退出

4 RabbitMQ 基本命令
启动服务

停止服务的
rabbitmqctl stop
查看进程:lsof -i:5672
管理插件:rabbitmq-plugins enable rabbitmq-management
5 RabbitMQ 管控台
启用管控台

默认启用端口是15672,通过ip+端口进行访问,如

最好先关闭下iptables规则

访问成功后需要输入用户名和密码进行登录,统一输入guest即可.
但是在该版本,发现网上此法并不行!
rabbitmq的web控制台使用默认账户guest登录失败——login failed
问题背景
rabbitmq的默认账户和密码都是guest,安装完rabbitmq之后可以使用guest/guest登录。
而通过web控制台登录有以下两种形式:
本地登陆(即在rabbitmq安装的机器上登陆——地址栏输入http://localhost:15672)
远程登陆(即在其他机器上通过指定IP地址登陆——地址栏输入http://:15672)
但是,在rabbitmq3.3.0之后,出于安全性考虑,默认情况下rabbitmq的guest/guest账户将不能实现远程登录,只能在本地登录.
解决方案
新建一个用户
默认的guest账户无法远程登陆,并不意味着其他用户也无法远程登录.
所以,可以通过如下命令新增用户、设定用户角色以及赋予用户权限实现远程登陆:
新增用户
$ rabbitmqctl add_user Username Password
设定用户administrator角色
用户角色可以分为超级管理员administrator、监控者monitoring、策略制定者policymaker、普通管理者management等
$ rabbitmqctl set_user_tags 用户名 administrator
修改密码

查看用户列表
删除账户

赋予用户权限

用户权限包括配置权限、读权限和写权限
配置权限会影响到exchange、queue的声明和删除。读写权限会影响到从queue里取消息、向exchange发送消息以及queue和exchange的绑定操作
比如,将queue绑定到某个exchange上,需要具有queue的写权限以及exchange的读权限;向exchange发送消息需要具有exchange的写权限;从queue里取消息需要具有queue的读权限。
查看用户授权

清除权限信息
rabbitmqctl clear_permissions [-p VHostPath] ymq
rabbitmqctl clear_permissions -p / JavaEdge
Clearing permissions for user JavaEdge in vhost /
此时,就可以通过你添加的新用户/密码来进行rabbitmq的远程登录了
3 修改配置

RabbitMQ的核心配置文件(显然就是个JSON格式文件),在这里可以查看到rabbitmq默认监听的端口号是5672

找到loopback_users配置项,去除guest,然后保存退出

4 RabbitMQ 基本命令
启动服务

停止服务的
rabbitmqctl stop
查看进程:lsof -i:5672
管理插件:rabbitmq-plugins enable rabbitmq-management
5 RabbitMQ 管控台
启用管控台

默认启用端口是15672,通过ip+端口进行访问,如

最好先关闭下iptables规则

访问成功后需要输入用户名和密码进行登录,统一输入guest即可.
但是在该版本,发现网上此法并不行!
rabbitmq的web控制台使用默认账户guest登录失败——login failed
问题背景
rabbitmq的默认账户和密码都是guest,安装完rabbitmq之后可以使用guest/guest登录。
而通过web控制台登录有以下两种形式:
本地登陆(即在rabbitmq安装的机器上登陆——地址栏输入http://localhost:15672)
远程登陆(即在其他机器上通过指定IP地址登陆——地址栏输入http://:15672)
但是,在rabbitmq3.3.0之后,出于安全性考虑,默认情况下rabbitmq的guest/guest账户将不能实现远程登录,只能在本地登录.
解决方案
新建一个用户
默认的guest账户无法远程登陆,并不意味着其他用户也无法远程登录.
所以,可以通过如下命令新增用户、设定用户角色以及赋予用户权限实现远程登陆:
新增用户
$ rabbitmqctl add_user Username Password
设定用户administrator角色
用户角色可以分为超级管理员administrator、监控者monitoring、策略制定者policymaker、普通管理者management等
$ rabbitmqctl set_user_tags 用户名 administrator
修改密码

查看用户列表
删除账户

赋予用户权限

用户权限包括配置权限、读权限和写权限
配置权限会影响到exchange、queue的声明和删除。读写权限会影响到从queue里取消息、向exchange发送消息以及queue和exchange的绑定操作
比如,将queue绑定到某个exchange上,需要具有queue的写权限以及exchange的读权限;向exchange发送消息需要具有exchange的写权限;从queue里取消息需要具有queue的读权限。
查看用户授权

清除权限信息
rabbitmqctl clear_permissions [-p VHostPath] ymq
rabbitmqctl clear_permissions -p / JavaEdge
Clearing permissions for user JavaEdge in vhost /
此时,就可以通过你添加的新用户/密码来进行rabbitmq的远程登录了