文章目录
背景问题
- guest这个用户只能使用localhost登录,而不能使用IP地址登录:
amqp://guest:[email protected]:5672/rabbitVHost
远程无法连接amqp://guest:[email protected]:5672/rabbitVHost
- 可以建立一个新的用户,用于远程链接
1. 创建用户
原来的guest用户只能用于本地(安装了RabbitMQ的服务器)访问,我们需要添加一个用户
(教程中说需要修改用户的配置文件,但我发现不修改,直接在terminal管理界面中添加也可以)
添加用户的操作
直接输入
rabbitmqctl
可以查看rabbitmqctl help相关命令
# 添加用户 rabbitmqctl add_user "username" "password"
~ sudo rabbitmqctl add_user test1
Adding user "test"...
# 设置用户为管理者 rabbitmqctl set_user_tags "username" "权限administrator"
~ sudo rabbitmqctl set_user_tags test administrator
Setting tags for user "test" to [administrator]...
# 权限添加sudo rabbitmqctl set_permissions -p"/"test".*"".*"".*"
Setting permissions for user "test"in vhost "/"...
# 查看所有用户权限信息
yang@VM ~ sudo rabbitmqctl list_permissions
Listing permissions for vhost "/"...
user configure writeread
guest .* .* .*
test .* .* .*
2. 关闭防火墙开启端口
- Ubuntu的防火墙和之前的相比有改动
- 远程访问,需要开启RabbitMQ使用的端口
关闭防火墙
Ubuntu的防火墙关闭打开
类似教程2
# 关闭防火墙
sudo ufw disable
Firewall stopped and disabled on system startup
# 加载防火墙启动防火墙
sudo ufw enable
Firewall is active and enabled on system startup
# 开放端口sudo ufw allow 80#tcp和udp 80sudo ufw allow 80/tcp #仅tcp 80sudo ufw allow 7100:7200/tcp #端口范围# 查看已经开放的端口sudo ufw status
Status: inactive # 防火墙不活跃:没开放
yang@VM ~ sudo ufw status
Status: active # 开放# 下面显示的已经开放的端口
To Action From
-- ------ ----
15672 ALLOW Anywhere
15672(v6) ALLOW Anywhere (v6)
3. 测试远程访问
远程访问方法:
在可以访问服务器的Client浏览器输入地址:
http://IP:15672
,然后可使用用户(test/1(username/password))登录。
IP地址是安装运行RabbitMQ的服务器地址
如下Guest用户显示无法登录,只能通过localhost(RabbitMQ对应的Server登录)
下面使用 “test” 用户登录成功
参考链接
RabbitMQ远程访问
版权归原作者 死美子 所有, 如有侵权,请联系我们删除。