在云服务器上搭建MQTT服务器(超详细,一步到位)

一:引言

        本文旨在分享如何搭建一个属于自己的MQTT云服务器,这里我们是以阿里云的云服务器举例(腾讯云,OneNet大同小异)。

二:选择云服务器

        首先搜索阿里云官网,在官网下依次点击,进入云服务器的选项页面。

        这里朋友们可以根据自己的需要选择,如果只是学习测试使用,需求量不大的话,可以试试阿里云的云服务器试用,试用期有三个月。

        这里我因为不是第一次使用,所以买的是99/年的ECS服务器来做示范,在购买或拿到试用资源后,需要进行相关配置。这里可以选择使用ubuntu18.04的操作系统。

三:配置云服务器相关信息

       

        配置完成后,我们可以点击右上角的控制台按钮,进入控制台界面。

                进入控制台后,我们可以看到自己的公网IP,这是我们后面连接MQTT的关键点,注意不要随意泄露。        接下来我们需要配置我们要用到的端口号,依次点击。

        来到安全组配置页面,手动添加我们要监听的端口号,这里总共有6个:1883、8883、8083、8084、8081、18083(每输完一个按回车即可在同一窗口输入下一个),源我们可以选择所有的IPV4,最后点击保存。

其中18083:EMQX服务器控制台网页端口
        1883:一般客户端访问EMQX服务器的端口(例如:PC桌面应用程序、ESP8266)
        8083:WebSocket客户端访问EMQX服务器的端口,这个要注意WebSocket访问的端口不一样

        添加完毕后,我们就可以开始连接我们的云服务器了,这里我提供两种远程连接方式(使用控制台自带的远程连接和使用Xshell工具来进行连接)

四:远程连接云服务器进行MQTT相关文件的下载和启用 

      1.连接云服务器的两种方法

        使用控制台自带的远程连接

        回到我们的实例页面,点击远程连接

               

        点击立即登录,在弹出的登录界面输入密码即可完成登录(密码的设置在最初创建云服务器那里进行的设置)

        这样就成功连接了我们的云服务器了。

       使用Xsheel等工具进行远程连接

        1.Xshell的下载链接

        2.打开Xsheel,新建会话属性

3.输入我们的云服务的用户名和密码(如果忘记密码,可以去控制台重置密码,用户名一般为root)

输入用户名和密码正确后,显示如下界面,即连接成功。

      2.下载MQTT相关文件和检查

        前面我们已经远程连接了云服务器,接下来,我们只需要在服务器的命令行中,将下面的命令复制执行一次。

wget https://www.emqx.com/zh/downloads/broker/5.0.8/emqx-5.0.8-ubuntu18.04-amd64.tar.gz

        下载完成后,依次执行下列命令

mkdir -p emqx && tar -zxvf emqx-5.0.8-ubuntu18.04-amd64.tar.gz -C emqx
./emqx/bin/emqx start

        出现如图所示,则MQTT服务器已经启动成功了。

        接下来,我们打开服务器的EMQX 网页端。在电脑浏览器输入公网IP+18083,如:111.229.82.106:18083

      3.配置EMQX 

        进入EMQX的配置页面,第一次进入EMQX,默认用户名是:admin,默认密码是:public,进入界面后可以修改用户名和密码。

         根据以下步骤完成客户端与用户的创建(基本就一直点下一步就好啦)

  

        这里输入我们自己想要的用户名和密码,可以勾选上这个超级用户,方便验证。创建两个用户,这样方便我们验证MQTT的功能是否成功

      4.测试MQTT功能是否可用

        下面我们可以下载MQTTX软件,来进行测试,这里提供MQTTX下载链接

        下载好后,运行软件,点击新建连接,按照顺序填写。这里我们需要把服务器的IP改为自己的公网IP。

像这样添加了两个连接(两个连接不同点就是用户名和密码,其余都一样)

        然后一个连接订阅主题,另一个连接发布主题,只要订阅主题的连接能正确接收到消息,就说明MQTT已经完全没问题了。

        订阅主题:(这里我随便订阅了一个主题:/62)根据大家的实际需求订阅就好了。

        发布主题:

好了,到此,如果能正常接收,那我们的云服务器搭建MQTT就正式完成了,如果想要使用Qt来使用我们搭建好的云服务器的话,可以使用我下面提供的简单demo,进行测试(注意修改一下,自己的用户名和密码)。

QT的MQTT测试代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值