51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 837|回复: 0
打印 上一主题 下一主题

[原创] 带你走进远程访问及管理页面配置---Rabbitmq-2

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-9-14 15:58:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 草帽路飞UU 于 2022-9-14 15:59 编辑

1.开启后台管理页面  

查看Rabbitmq当前是否为运行状态,如果不是运行状态,需要先启动。

 # /sbin/rabbitmqctl status


  # /sbin/service rabbitmq-server start


启动成功后查看插件列表:


 [root@localhost rabbitmq]# rabbitmq-plugins list


   Configured: E = explicitly enabled; e = implicitly enabled


   | Status: * = running on rabbit@localhost


   |/



  ...

  [  ] rabbitmq_management               3.7.8


  [  ] rabbitmq_management_agent         3.7.8


  ...


开启:


 [root@localhost rabbitmq]# rabbitmq-plugins enable rabbitmq_management


  The following plugins have been configured:


    rabbitmq_management


    rabbitmq_management_agent


    rabbitmq_web_dispatch


  Applying plugin configuration to rabbit@localhost...


  The following plugins have been enabled:


    rabbitmq_management


    rabbitmq_management_agent


    rabbitmq_web_dispatch


  started 3 plugins.


  [root@localhost rabbitmq]#


2.创建用户及授权

  Rabbitmq从3.3.0开始默认用户(guest/guest)只能通过除localhost的访问,我们自己创建登录用户并授权管理员登录。

  创建用户admin(用户名/密码:admin/admin),命令行输入命令 rabbitmqctl 可查看语法。


//语法 rabbitmqctl add_user <username> <password>


  [root@localhost rabbitmq]# rabbitmqctl add_user admin admin


  Adding user "admin" ...


给用户admin授管理员(administrator)角色:


//语法  rabbitmqctl set_user_tags <username> <tag> [...]


  [root@localhost rabbitmq]# rabbitmqctl set_user_tags admin administrator


  Setting tags for user "admin" to [administrator] ...


  [root@localhost rabbitmq]# rabbitmqctl list_users


  Listing users ...


  admin[administrator]


  guest[administrator]


给用户admin设置权限(开启远程访问)(如果需要远程连接,例如java项目中需要调用mq,则一定要配置,否则无法连接到mq);


  设置用户admin具有/vhost1这个virtual host中所有资源的配置、写、读权限以便管理其中的资源。


//给用户admin权限


  [root@localhost rabbitmq]# rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"


  Setting permissions for user "admin" in vhost "/" ...


  //查看权限


  [root@localhost rabbitmq]# rabbitmqctl list_permissions -p /


  Listing permissions for vhost "/" ...


  admin.*.*.*



  guest.*.*.*

此时,还不能通过远程IP:port访问,因为防火墙的原因。


  3.开启防火墙端口



//查看已开放的端口(默认不开放任何端口)

  firewall-cmd --list-ports


  //开启15672端口


  firewall-cmd --zone=public --add-port=15672/tcp --permanent


  //重启防火墙


  firewall-cmd --reload


  //再查看端口是否开通,如下说明端口开启了


  [root@localhost rabbitmq]# firewall-cmd --list-ports


  15672/tcp


  //其他防火墙操作命令


  //停止防火墙


  systemctl stop firewalld.service


  //禁止防火墙开机启动


  systemctl disable firewalld.service


  //删除(关闭端口)


  firewall-cmd --zone= public --remove-port=15672/tcp --permanent


此时浏览器输入地址: http://IP:15672  ,然后可使用用户(admin/admin)登录。


  4.客户端远程连接配置


 [root@localhost rabbitmq]# whereis rabbitmq.config


  rabbitmq: /usr/lib/rabbitmq /etc/rabbitmq


默认情况下/etc/rabbitmq是没有rabbitmq.config文件的,我们需要从安装目录拷贝一份到该路径下:


[root@localhost rabbitmq]# cd /etc/rabbitmq


  //拷贝文件


  [root@localhost rabbitmq]# cp /usr/share/doc/rabbitmq-server-3.7.8/rabbitmq.config.example /etc/rabbitmq/


  //重命名


  [root@localhost rabbitmq]# mv rabbitmq.config.example rabbitmq.config


修改rabbitmq.config,加入配置[{rabbit, [{tcp_listeners, [5672]}, {loopback_users, ["admin"]}]}]


[root@localhost rabbitmq]# vi rabbitmq.config


  %% -*- mode: erlang -*-


  %% ----------------------------------------------------------------------------


  %% RabbitMQ Sample Configuration File.


  %%


  %% Related doc guide:  
http://www.rabbitmq.com/configure.html.See

  %%
http://rabbitmq.com/documentation.html for documentation ToC.

  %% ----------------------------------------------------------------------------


  [


   {rabbit,


    [%%


     %% Networking


     %% ====================


     %%


     %% Related doc guide:
http://www.rabbitmq.com/networking.html.

     %% By default, RabbitMQ will listen on all interfaces, using


     %% the standard (reserved) AMQP port.


     %%


     %% {tcp_listeners, [5672]},


  %% 下面这行是加入的,其他的不用修改


  {tcp_listeners, [5672]},{loopback_users, ["admin"]}


     %% To listen on a specific interface, provide a tuple of {IpAddress, Port}.


保存退出,重启Rabbitmq。


# /sbin/service rabbitmq-server restart



















分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /2 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-7-3 18:44 , Processed in 0.073188 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表