摘要:本文介绍在Centos7上离线安装RabbitMQ
目录
一、安装RabbitMQ
1、下载rpm安装包
2、安装rpm包
二、开放相应端口白名单
1、停止 Firewall
2、打开iptables配置文件
3、追加相应端口的配置内容
4、重启iptables
三、配置并启动RabbitMQ
1、开启用户远程访问
2、 启动RabbitMQ服务
3、开启管理UI
4、设置开机自启
5、给rabbitmq添加用户
5.1 通过命令添加用户
5.2 查看用户列表
5.3 通过管理页面添加用户
RabbitMQ是有Erlang语言开发的,所以需要安装erlang环境,RabbitMQ与Erlang版本兼容可参考: RabbitMQ Erlang Version Requirements — RabbitMQ
这里我选择的RabbitMQ版本3.8.23 ,Erlang版本 23.3.4.8
http://rpmfind.net/linux/rpm2html/search.php?query=rabbitmq-server
以下是全部的安装包:
按照如下顺序安装,glibc的包需同时安装,最好分开一个个安装:
rpm -ivh openssl-libs-1.0.2k-19.el7.x86_64.rpm
rpm -ivh glibc-2.17-317.el7.x86_64.rpm glibc-common-2.17-317.el7.x86_64.rpm
rpm -ivh erlang-23.3.4.8-1.el7.x86_64.rpm
rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm
rpm -ivh rabbitmq-server-3.8.23-1.el7.noarch.rpm
安装成功后默认服务名称 rabbitmq-server
$suto systemctl stop firewalld
$suto vim /etc/sysconfig/iptables
注意:iptables规则链执行顺序,是从从规则表中从上至下顺序执行的 INPUT -> FORWARD -> OUTPUT
所以以下配置内容必须在【-A FORWARD -j REJECT --reject-with icmp-host-prohibited】内容之前。
#rabbitmq 相关端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5672 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 15672 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 25672 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 4369 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 35179 -j ACCEPT
$sudo service iptables restart
step1. 新增配置文件
$sudo vim /etc/rabbitmq/rabbitmq.config
step2.按 insert 键进入编辑模式,填写如下内容,按Esc退出编辑,输入:wq!退出保存
[{rabbit, [{loopback_users, []}]}].
默认情况下,RabbitMQ的默认的guest用户只允许本机访问, 如果想让guest用户能够远程访问的话,只需要将配置文件中的loopback_users列表置为空即可,如下图:
关于新添加的用户,直接就可以从远程访问的,如果想让新添加的用户只能本地访问,可以将用户名添加到上面的列表, 如只允许admin用户本机访问。即:
[{rabbit, [{loopback_users, [admin]}]}].
$sudo service rabbitmq-server start
执行下面命令开启管理页面,然后再浏览器中访问测试。
URL: http://{服务器ip}:15672 用户名密码:guest/guest (默认)
$sudo rabbitmq-plugins enable rabbitmq_management
$sudo chkconfig rabbitmq-server on
rabbitmq添加用户命令为:rabbitmqctl add_user {用户名} {密码}
设置权限为:rabbitmqctl set_user_tags {用户名} {权限}
我们给rabbitmq添加一个用户,并且设置管理员权限,这样就可以使用这个账号登陆web页面来查看和使用rabbitmq的功能了,安装后会自动生成guest账号,但是guest账号只能在本机登陆。
rabbitmqctl add_user admin admin
rabbitmqctl set_user_tags admin administrator
rabbitmqctl list_users
通过guest/guest登录管理页面也可完成新增用户并配置权限的功能。