## 安装依赖
- RabbitMQ依赖Erlang,需要先安装Erlang。
```bash
#启动EPEL源
sudo yum install epel-release
安装erlang
sudo yum install erlang
```
## 下载并解压安装包
- 先新建一个文件夹,博主喜欢在`/var`下面安装服务器软件
```bash
cd /var
mkdir rabbitmq
cd rabbitmq
```
- 下载rpm
```bash
wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.15/rabbitmq-server-3.6.15-1.el6.noarch.rpm
```
- 下载完成后安装
```bash
yum install rabbitmq-server-3.6.15-1.el6.noarch.rpm
```
## RabbitMQ的一些基本操作
```bash
# 添加开机启动RabbitMQ服务
sudo chkconfig rabbitmq-server on
# 启动服务
sudo /sbin/service rabbitmq-server start
# 查看服务状态
sudo /sbin/service rabbitmq-server status
# 停止服务
sudo /sbin/service rabbitmq-server stop
# 查看当前所有用户
sudo rabbitmqctl list_users
# 查看默认guest用户的权限
sudo rabbitmqctl list_user_permissions guest
# 由于RabbitMQ默认的账号用户名和密码都是guest。为了安全起见, 先删掉默认用户
sudo rabbitmqctl delete_user guest
# 添加新用户
sudo rabbitmqctl add_user username password
# 设置用户tag
sudo rabbitmqctl set_user_tags username administrator
# 赋予用户默认vhost的全部操作权限
sudo rabbitmqctl set_permissions -p / username ".*" ".*" ".*"
# 查看用户的权限
sudo rabbitmqctl list_user_permissions username
```
> 更多关于`rabbitmqctl`的使用,可以参考[帮助手册][1]。
## 开启web管理接口
- RabbitMQ自带了web管理界面,只需要启动插件便可以使用。
```bash
sudo rabbitmq-plugins enable rabbitmq_management
```
- 然后通过浏览器访问
```bash
http://yourhost:15672
```
## 配置RabbitMQ
- 关于每个配置项的具体作用,可以参考[官方文档][2]。
更新配置后,别忘了重启服务哦!
## 开启用户远程访问
- 默认情况下,RabbitMQ的默认的`guest`用户只允许本机访问, 如果想让`guest`用户能够远程访问的话,只需要将配置文件中的`loopback_users`列表置为空即可,如下:
```bash
{loopback_users, []}
```
- 另外关于新添加的用户,直接就可以从远程访问的,如果想让新添加的用户只能本地访问,可以将用户名添加到上面的列表, 如只允许`admin`用户本机访问。
```bash
{loopback_users, ["admin"]}
```
- 更新配置后,需要重启服务
```bash
sudo /sbin/service rabbitmq-server status # 查看服务状态
```
- 进入log文件夹内查看日志
![image-1][image-1]
```bash
cd /var/log/rabbitmq
```
![image-2][image-2]
- 这里显示的是没有找到配置文件,我们可以自己创建这个文件
```bash
cd /etc/rabbitmq/
vim rabbitmq.config
```
- 编辑内容如下:
```bash
[{rabbit, [{loopback_users, []}]}].
```
> 这里的意思是开放使用,rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能是本机访问,localhost或者127.0.0.1,从外部访问需要添加上面的配置。
- 保存配置后重启服务:
```bash
service rabbitmq-server stop
service rabbitmq-server start
```
此时就可以从外部访问了,至此rabbitmq已经搭建完成,去做测试吧WwW
## 后记
记得要开放5672和15672端口
> 5672表示客户端访问端口
>
> 15672表示web界面展示接口
[1]: https://link.jianshu.com/?t=https://www.rabbitmq.com/man/rabbitmqctl.1.man.html
[2]: https://link.jianshu.com/?t=https://www.rabbitmq.com/configure.html
[image-1]: https://s2.ax1x.com/2019/09/05/nmLiZR.png
[image-2]: https://s2.ax1x.com/2019/09/05/nmLFd1.png

Linux下rabbitMQ安装