上海古都建筑设计集团,上海办公室装修设计公司,上海装修公司高质量的内容分享社区,上海装修公司我们不是内容生产者,我们只是上海办公室装修设计公司内容的搬运工平台

RabbitMQ安装、端口修改、简单的角色介绍

guduadmin211小时前

前提

本文介绍RabbitMQ安装的环境是CentOS7版本的Linux云服务器。

官网:https://www.rabbitmq.com/

RabbitMQ的安装

由于RabbitMQ是使用Erlang语言开发的,所以我们在安装RabbitMQ之前需要在服务器中安装Erlang语言的环境。在Linux中执行下面命令:

yum install -y epecurl -s 
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash

在执行完上面语句后,我们就可以安装RabbitMQ了,也是比较简单的执行命令:

yum install rabbitmq-server

最后使用下面这个命令启动RabbitMQ,

systemctl enable rabbitmq-server.service
systemctl start rabbitmq-server.service

最后用下面这条命令,检查RabbitMQ的执行状态

systemctl status rabbitmq-server.service

当Active状态为active(running)的时候说明成功了,可以参考下图:

RabbitMQ安装、端口修改、简单的角色介绍,在这里插入图片描述,第1张

需要注意的是,使用命令“systemctl enable rabbitmq-server.service”就意味着,服务器系统重启的时候会自动启动RabbitMQ。
如果不想这样,就跳过这一句即可,这样你在关闭与服务器的会话的时候,RabbitMQ的服务自己就会被关闭了

RabbitMQ管理界面的启用

在安装RabbitMQ后,我们还需要启动一个可视化的管理服务,以便于我们后续在浏览器中能访问并管理RabbitMQ

只需要执行下面的命令就可以开启了

rabbitmq-plugins enable rabbitmq_managemen

开启后重启一下服务

systemctl restart rabbitmq-server

管理服务界面的预览图将在下面修改端口介绍后进行查看

RabbitMQ端口号意义说明

  • 5672:RabbitMQ的通讯端口
  • 25672:RabbitMQ的节点间的CLI通讯端口
  • 15672:RabbitMQHTTP_API的端口,管理员用户才能访问,用于管理RabbitMQ,需要启动Management插件。
  • 1883,8883:MQTT插件启动时的端口。
  • 61613、61614:STOMP客户端插件启用的时候的端口。
  • 15674、15675:基于webscoket的STOMP端口和MOTT端口

    修改RabbitMQ端口

    问题:为什么要修改端口?

    回答:在云服务器中,当我们需要开发某个端口时,需要到控制台的防火墙(腾讯云)或者安全组(阿里云)中去进行开放,但是开放就意为着,所有人都可以对你这个端口进行访问(前提是他们知道你这个端口开发的情况下),但是这时候就会遇到一个问题,像我们这些知名的端口号例如3306、6379、5672、8080端口等,都是被大部分人所知道的,不法分子只要拿着你的ip:端口的方式就能访问到服务,所以就会有一个不安全的情况出现,比如说,不法分子顺着你的端口摸到你服务器里面去搞破坏,这样你的服务器可能就要面临重载(我身边的朋友都遇到了),所以我们必须修改了端口号再放出去,虽然也有风险,但是起码较为更安全了,所以修改端口非常有必要!!!

    如果要修改RabbitMQ的服务端口,那么我们需要到 /etc/rabbitmq目录下找到 rabbitmq.config,如下图所示:

    RabbitMQ安装、端口修改、简单的角色介绍,在这里插入图片描述,第2张

    在开始修改前,我们先对这个文件进行备份,防止出现问题后,没办法恢复配置文件了,执行下面命令对该文件进行一个复制备份:

    cp rabbitmq.config rabbitmq.config.default
    

    使用vim编辑器打开rebbitmq.config,效果如图所示:

    RabbitMQ安装、端口修改、简单的角色介绍,在这里插入图片描述,第3张

    打开后,我们可以发现有许多东西都是注释状态的,所以删掉是没有关系的,需要注意的是:里面的配置文件数据格式是JSON格式的,所以我们在后面修改端口的时候也要格外的注意。

    接下来就把里面的内容全部删除掉就好了,直接粘贴上下面的这些配置信息,粘贴完后记得检测一下!!!

    [
    {
        rabbit,
            [{
                tcp_listeners,[{"0.0.0.0",端口号}]
    		}]
    },
    {
        rabbitmq_management,
            [{
              listener,
                      [
                      {port,端口号},
                      {ip,"0.0.0.0"},
                      {ssl,false}
                      ]
    		}]
    }].
    

    tcp_listeners是RabbitMQ的服务启动端口

    listener是RabbitMQ的管理服务界面的启动端口

    这样就修改完成了,接下了就是重新启动服务的问题了,执行命令

    systemctl restart rabbitmq-server.service
    

    检测是否启动成功:

    systemctl status rabbitmq-server.service
    

    出现Running就说明成功了

    访问RabbitMQ管理服务页面

    通过 IP:管理服务端口号来对管理页面进行访问,成功会出现下面这个登录页面:RabbitMQ安装、端口修改、简单的角色介绍,在这里插入图片描述,第4张

    默认账号和密码都是:guest

    登录出现下面这个页面说明登录成功了

    RabbitMQ安装、端口修改、简单的角色介绍,在这里插入图片描述,第5张

    RabbitMQ中五种的角色

    我们可以在RabbitMQ里面有五种不同的角色,如下:

    none

    不能访问management plugin

    management

    • 列出自己可以通过AMQP登入的虚拟机
    • 查看自己的虚拟机节点 virtual hosts的queues,exchanges和bindings- 信息
    • 查看和关闭自己的channels和connections
    • 查看有关自己的虚拟机节点virtual hosts的统计信息。包括其他用户在这个节点virtual hosts中的活动信息。

    Policymaker

    • 列出自己可以通过AMQP登入的虚拟机
    • 查看自己的虚拟机节点 virtual hosts的queues,exchanges和bindings信息
    • 查看和关闭自己的channels和connections
    • 查看有关自己的虚拟机节点virtual hosts的统计信息。包括其他用户在这个节点virtual hosts中的活动信息。

    Monitoring

    • 列出自己可以通过AMQP登入的虚拟机
    • 查看自己的虚拟机节点 virtual hosts的queues,exchanges和bindings信息
    • 查看和关闭自己的channels和connections
    • 查看有关自己的虚拟机节点virtual hosts的统计信息。包括其他用户在这个节点virtual hosts中的活动信息。

    Administrator

    • 最高权限
    • 可以创建和删除virtual hosts
    • 可以查看,创建和删除users
    • 查看创建permisssions
    • 关闭所有用户的connections

    添加管理用户角色命令:

    rabbitmqctl add_user 账号 密码
    rabbitmqctl set_user_tags 账号 administrator
    rabbitmqctl change_password Username Newpassword 修改密码
    rabbitmqctl delete_user Username 删除用户 
    rabbitmqctl list_users 查看用户清单
    rabbitmqctl set_permissions -p / 用户名 ".*" ".*" ".*" 为用户设置administrator角色
    rabbitmqctl set_permissions -p / root ".*" ".*" ".*"
    
    **感谢阅读**

网友评论

搜索
最新文章
热门文章
热门标签