准备深入学习MQTT协议,在本机搭建了一个EMQTT服务器,用WireShark抓包,MQTT.fx模拟客户端,很正常的一个过程。但遗憾的是客户端和服务器在一台电脑上,WireShark抓不出来(可能能设置,但我也没有搜)。偶然想到去年某日,买了个阿里云ECS服务器,何不在那上边搭建一个?
想法是好的,搭建起来应该也不难。因为之前在ECS上搭建了个人博客,也在本机搭建了EMQTT服务器,一结合不就完了?!我的ECS是CentOS7.04(64位)版本,在EMQTT官网下载了与系统匹配的版本,如下图:
参考文档安装,和本机一样的步骤cd emqx && ./bin/emqx console
弹出的信息也很正常,在ECS界面(我装了个桌面),用内网访问“Web 管理控制台(Dashboard)”,能正常访问,但是用外网访问,就出问题了,在网上(包括阿里官网)找了很多资料,都没有解决,和阿里技支聊了大半天,才把问题解决,把这个过程记录一下:
1. 首先怀疑是安全组配置问题,一查安全组,妥妥的设置,开放了与EMQTT相关的端口。
2. 阿里ECS技支测试发现端口不通,建议:ss -tnlup、iptables -vnL、systemctl status firewalld、getenforce,发现防火墙异常,很奇怪,阿里云防火墙功能我都没开通,怎么会出问题呢?没办法,开通了临时版的防火墙(正式版要收钱的),禁用防火墙,未果。。。
3. iptables规则配置有问题,用iptables -F指令清空规则(其实我没有配置过iptables 规则,完全不知道这是啥,所以直接清了),再启动EMQTT服务器,终于可以外网访问了!
最终解决的方法很简单,当然我也没有深入去了解这个东西,我关心能用就行了,具体服务器的设置还真没深入探究。
作者: peng36933_557691152, 来源:面包板社区
链接: https://mbb.eet-china.com/blog/uid-me-1594631.html
版权声明:本文为博主原创,未经本人允许,禁止转载!
443955496_148404734 2019-3-15 15:20