物联网云智能开发—MosQuitto服务器的安装 测试 订阅&发布及加密教程

简介: 物联网云智能开发—MosQuitto服务器的安装 测试 订阅&发布及加密教程

 

Eclipse Mosquitto是一个开放源码(EPL/EDL许可)消息代理,它实现了MQTT协议版本5.0、3.1.1和3.1。mosquitto服务器是轻量级的,适用于所有设备,从低功率单板计算机到全服务器。

目录

MosQuitto服务器简介

安装MosQuitto服务器

测试MosQuitto服务器

消息的订阅&发布

消息订阅

消息发布

多订阅者消息接收

设置用户名&密码


Hello,你好哇,我是灰小猿!一个努力赚钱买生发水的程序猿。

在物联网云智能开发中,MQTT协议是最为常用的协议之一,之前在一篇文章中和大家简要的介绍了MQTT协议的基本概念,感兴趣的小伙伴可以移步这篇文章“浅谈物联网开发最热协议-MQTT协议”。

我们知道MQTT协议是基于服务器的订阅/发布式通信协议,所以该协议的实现一定是基于服务器而成立的。所以这一篇大灰狼就来和大家分享一下在Windows环境下搭建/测试MosQuitto服务器的教程。

MosQuitto服务器简介

关于MosQuitto服务器的官方介绍是这样的:

官方介绍

Eclipse Mosquitto是一个开放源码(EPL/EDL许可)消息代理,它实现了MQTT协议版本5.0、3.1.1和3.1。mosquitto是轻量级的,适用于所有设备,从低功率单板计算机到全服务器。MQTT协议提供了使用发布/订阅模型执行消息传递的轻量级方法。这使得它适用于物联网消息传递,如低功耗传感器或手机、嵌入式计算机或微控制器等移动设备。mosquitto项目还提供了一个用于实现MQTT客户机的C库,以及非常流行的mosquitto_pub和mosquitto_sub命令行MQTT客户机。

从这个官方说明中我们基本也就可以了解到MosQuitto服务器基本作用。

安装MosQuitto服务器

接下来就是关于该服务器的下载和安装过程。

官方下载地址

之后在页面中找到Windows环境下的EXE版本下载,

image.gif编辑

之后找到我们下载好的文件点击进行安装,然后我们就可以在对应的安装文件夹下看到这样的诸多文件:

image.gif编辑

关于这几个主要文件的作用介绍如下:

模块

功能

mosquitto.conf

mosquitto服务器的配置文件

mosquitto

用来开启broker

mosquitto_passwd

用来设置用户的账号与密码

mosquitto_pub

用来发布消息

mosquitto_sub

用来订阅消息

pwfile.example

通过mosquitto_passwd来存储用户的账号密码的文件

测试MosQuitto服务器

在下载安装完成MosQuitto服务器之后,当然要对其进行测试,看其是否安装成功,

测试方法为打开cmd命令行,找到我们安装MosQuitto服务器的文件路径下,之后输入如下的命令行:

mosquitto -c mosquitto.conf

image.gif

若没有任何输出,则表示MosQuitto服务器启动成功!

效果如下:

image.gif编辑

消息的订阅&发布

在确定我们的MosQuitto服务器安装并启动没有问题之后,我们就可以尝试使用该服务器进行MQTT协议中消息的订阅和发布试验了,在MQTT协议中订阅和发布都是在客户端进行的,所以我们这里称为订阅者和发布者,

消息订阅

订阅者订阅的方法为:重新打开cmd命令行,同样找到MosQuitto服务器所在的文件夹下,按照如下的命令行格式进行输入:

mosquitto_sub -v -t {topic}

image.gif

其中的“topic”为消息主题,可以根据实际应用自行命名,在关于MQTT协议概念中有对其相关的介绍,

如下所示:

image.gif编辑

消息发布

发布者发布消息的方法为:再次打开一个cmd命令行,同样找到MosQuitto服务器所在的文件夹下,按照如下的命令行格式进行输入:

mosquitto_pub -t {topic} -m {Hello}

image.gif

其中的“topic”为发布的消息的主题,和上面订阅者订阅的主题是同一个概念,第二个大括号中的内容为将要发布的消息,在这里要注意的是,在使用cmd命令行发布消息时,消息中间不应该有空格,否则会发送失败!

如下所示:

image.gif编辑

之后如上图所示,我们在订阅者界面就可以接收到相应的主题发送来的消息。

多订阅者消息接收

我们知道MQTT协议中的消息订阅者可以存在多个,所以我们可以在新的cmd命令行中继续订阅该发布者的topic主题消息,之后我们再通过发布者发布,在另一个订阅者中就可以接收到发布者之后发送的消息了!

如下所示:

image.gif编辑

设置用户名&密码

关于设置服务器用户名和密码的官方介绍如下,

mosquitto.conf man page

其中mosquitto_passwd是一个为mosquitto MQTT代理管理密码文件的工具。并且用户名不能包含":"。密码以与crypt(3)相似的格式存储。

我们可以使用cmd命令行在MosQuitto服务器所在的文件夹下,按照如下的命令行格式进行输入:

mosquitto_passwd [ -c | -D ] passwordfile username

image.gif

关于其中具体的使用可以查看官方文档。

例如下所示:

image.gif编辑

由于密码是加密的,所以我们无法看到。之后我们可以在相应的文件下找到我们保存用户名和密码的该文件,打开之后就可以看到如下所示的我们设置的用户名和被加密后的密码。

image.gif编辑

之后修改mosquitto.conf中的 password_file  pwfile.example, 将其修改成我们刚刚创建的passwordfile使即可生效。

好了,关于MosQuitto服务器的搭建和使用暂且和大家分享到这里,折后也会继续分享关于其更加详细深入的学习。

觉得不错记得点赞关注哟!

大灰狼陪你一起进步!

image.gif编辑

相关实践学习
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
8月前
|
人工智能 运维 调度
机房服务器快喘不过气?智能负载管理才是救命稻草
机房服务器快喘不过气?智能负载管理才是救命稻草
276 1
|
12月前
|
物联网
(手把手)在华为云、阿里云搭建自己的物联网MQTT消息服务器,免费IOT平台
本文介绍如何在阿里云搭建自己的物联网MQTT消息服务器,并使用 “MQTT客户端调试工具”模拟MQTT设备,接入平台进行消息收发。
3659 42
|
JavaScript 数据可视化 Docker
简易制作MCP服务器并测试
本文介绍了如何简易制作并测试MCP服务器,包括环境搭建、代码实现及Docker部署。首先通过uv包创建项目,在main.py中定义MCP服务器及其工具和资源函数。接着详细说明了在Windows上安装uv、配置Docker镜像加速、生成requirements.txt文件以及编写Dockerfile的过程。最后,通过构建和运行Docker容器部署MCP服务器,并使用Node.js工具测试其功能,确保服务器正常工作。此教程适合初学者快速上手MCP服务器的开发与部署。
4556 63
|
11月前
|
C# 图形学 开发者
Unity开发中使用UnityWebRequest从HTTP服务器下载资源。
总之,UnityWebRequest就是游戏开发者手中的万能钓鱼竿,既可以获取文本数据,也能钓上图片资源,甚至是那声音的涟漪。使用UnityWebRequest的时候,你需要精心准备,比如确定URL、配置请求类型和头信息;发起请求;巧妙处理钓获的数据;还需要机智面对网络波澜,处理各种可能出现的错误。按照这样的过程,数据的钓取将会是一次既轻松愉快也效率高效的编程钓鱼之旅。
644 18
|
12月前
|
物联网
如何在腾讯云等平台搭建自己的物联网MQTT服务器Broker
物联网技术及MQTT协议被广泛应用于各种场景。本文介绍物联网MQTT服务助手下载,如何搭建自己的物联网平台,并使用 “MQTT客户端调试工具”模拟MQTT设备,接入平台进行消息收发。
873 37
|
10月前
|
运维 Prometheus 监控
“服务器又宕了?”别急,智能运维教你如何未卜先知!
“服务器又宕了?”别急,智能运维教你如何未卜先知!
240 0
|
Go API 定位技术
MCP 实战:用 Go 语言开发一个查询 IP 信息的 MCP 服务器
随着 MCP 的快速普及和广泛应用,MCP 服务器也层出不穷。大多数开发者使用的 MCP 服务器开发库是官方提供的 typescript-sdk,而作为 Go 开发者,我们也可以借助优秀的第三方库去开发 MCP 服务器,例如 ThinkInAIXYZ/go-mcp。 本文将详细介绍如何在 Go 语言中使用 go-mcp 库来开发一个查询 IP 信息的 MCP 服务器。
803 2
|
安全 应用服务中间件 网络安全
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
924 60
|
存储 人工智能 自然语言处理
ChatMCP:基于 MCP 协议开发的 AI 聊天客户端,支持多语言和自动化安装 MCP 服务器
ChatMCP 是一款基于模型上下文协议(MCP)的 AI 聊天客户端,支持多语言和自动化安装。它能够与多种大型语言模型(LLM)如 OpenAI、Claude 和 OLLama 等进行交互,具备自动化安装 MCP 服务器、SSE 传输支持、自动选择服务器、聊天记录管理等功能。
2946 16
ChatMCP:基于 MCP 协议开发的 AI 聊天客户端,支持多语言和自动化安装 MCP 服务器
|
监控 前端开发 应用服务中间件
小游戏源码开发搭建技术栈和服务器配置流程
近些年不同场景游戏层出不穷,现就小游戏开发技术应用及功能详细剖析!

相关产品

  • 物联网平台