Linux搭建MQTT服务器(Mosquitto)

这篇具有很好参考价值的文章主要介绍了Linux搭建MQTT服务器(Mosquitto)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


一、安装依赖

yum install gcc gcc-c++ libstdc++-devel
yum install openssl-devel -y
yum install c-ares-devel -y
yum install uuid-devel -y
yum install libuuid-devel -y

// 通过rpm -qa XXX(依赖名) 检查是否已安装过

二、下载、解压、编译、安装

// 下载
wget https://mosquitto.org/files/source/mosquitto-2.0.8.tar.gz

// 解压
tar -zxvf mosquitto-2.0.8.tar.gz

// 编译、安装
cd mosquitto-2.0.8
make
sudo make install

// 拷贝配置
cd /etc/mosquitto
cp mosquitto.conf.example mosquitto.conf

编译时,若提示fatal error: cjson/cJSON.h: No such file or directory,需要安装cJSON,然后重新安装mosquitto。

yum install cmake
yum -y install git    -- 若之前未安装git需执行此步骤,通过git --version验证是否安装
cd /usr/local/
git clone https://github.com/DaveGamble/cJSON.git
cd cJSON/
mkdir build
cd build/
cmake ..
make
make install
echo "/usr/local/lib64" >> /etc/ld.so.conf
/sbin/ldconfig

三、创建软连接

sudo ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1
ldconfig

若不添加软连接,发布、订阅消息时会提示"error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory"。


四、启动服务

// 创建用户、用户组,否则启动时,提示"Unable to drop privileges to 'mosquitto' ..."
groupadd mosquitto
useradd -g mosquitto mosquitto
chown -R mosquitto:mosquitto /etc/mosquitto/

mosquitto -c /etc/mosquitto/mosquitto.conf -d

五、订阅、发布测试

打开两个服务器连接,分别执行mosquitto_sub、mosquitto_pub命令。
Linux搭建MQTT服务器(Mosquitto)
Linux搭建MQTT服务器(Mosquitto)


六、权限控制

主要涉及/etc/mosquitto/mosquitto.conf文件的三个属性:

  1. allow_anonymous:允许匿名
  2. password_file:密码文件
  3. acl_file:访问控制列表
  • 配置监听端口为1883 (注意服务器的防火墙端口开放)
    Linux搭建MQTT服务器(Mosquitto)

  • 配置密码文件,指向/etc/mosquitto/pwfile
    Linux搭建MQTT服务器(Mosquitto)

// 创建两个用户testa、testb
mosquitto_passwd -c /etc/mosquitto/pwfile testa
mosquitto_passwd -c /etc/mosquitto/pwfile testb
  • 配置用户访问权限(用户testb只能订阅/req/#主题、发布/res/#主题)
    Linux搭建MQTT服务器(Mosquitto)
cp aclfile.example aclfile
vim aclfile

Linux搭建MQTT服务器(Mosquitto)文章来源地址https://www.toymoban.com/news/detail-484436.html

  • 验证
mosquitto_pub -h [IP] -t [topic] -u [user] -P [password] -p [port] -m [message]
mosquitto_sub -h [IP] -t [topic] -u [user] -P [password]

到了这里,关于Linux搭建MQTT服务器(Mosquitto)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在Linux中搭建Mosquitto MQTT协议消息服务端并结合内网穿透工具实现公网访问

    Mosquitto是一个开源的消息代理,它实现了MQTT协议版本3.1和3.1.1。它可以在不同的平台上运行,包括Windows、Linux、macOS等。mosquitto可以用于物联网、传感器、移动应用程序等场景,提供了一种轻量级的、可靠的、基于发布/订阅模式的消息传递机制。 MQTT协议远程访问的好处在于

    2024年02月05日
    浏览(36)
  • 物联网云智能开发—MosQuitto服务器的安装 测试 订阅&发布及加密教程

    官方介绍 Eclipse Mosquitto是一个开放源码(EPL/EDL许可)消息代理,它实现了MQTT协议版本5.0、3.1.1和3.1。mosquitto是轻量级的,适用于所有设备,从低功率单板计算机到全服务器。MQTT协议提供了使用发布/订阅模型执行消息传递的轻量级方法。这使得它适用于物联网消息传递,如低功

    2024年04月28日
    浏览(27)
  • 个人云服务器搭建MQTT服务器

    🔮🔮🔮🔮🔮相关文章🔮🔮🔮🔮🔮 ESP32连接MQ Sensor实现气味反应 🔗 https://blog.csdn.net/ws15168689087/article/details/131365573 ESP32连接云服务器【WebSocket】 🔗 https://blog.csdn.net/ws15168689087/article/details/131406163 ESP32+MQTT+MySQL实现发布订阅【气味数据收集】 🔗 https://blog.csdn.net/ws1516868

    2024年02月15日
    浏览(38)
  • MQTT通信架构 搭建MQTT服务器

    MQ 遥测传输 (MQTT) 是 基于代理 的 发布/订阅 的消息传输协议。 传输屏蔽消息内容 TCP/IP有连接传输(可靠) 小型传输,开销很小,降低网络流量 使用lastwill等机制告知客户端异常中断(本次实验用不到) 三种消息发布服务质量 至多一次:消息发布完全依赖底层TCP/IP网络,会

    2024年02月02日
    浏览(35)
  • 阿里云服务器如何搭建MQTT服务器

    入门教程:链接 将系统配置成Ubuntu18的(因为我只会用这个系统) 在实例处停止当前系统的运行,然后依次选择2,下拉菜单找到3进行更换系统,更换完成以后重启就好了。 如下图,依次点击1-4的按钮,第五步需要重新设置系统的密码 Xshell下载链接 安装完成后打开Xshell按照

    2024年02月03日
    浏览(42)
  • 自己搭建mqtt服务器

            前言:网上资料大部分都是使用的云服务,我是采用自己搭建的服务器来进行试验的,接下来将记录过程。 云服务器有很多种网上也有很多教学在这里不进行过多的解释了,我实验的时候采用的阿里云国内的服务器这里以后还会进行介绍。         本实验主要

    2024年02月03日
    浏览(40)
  • 本地MQTT服务器搭建(EMQX)

    下载地址:EMQ (emqx.com) 打开官网后,选择右边的免费试用按钮 然后单击EMQX Enterprise标签,然后选择下面的EMQX开源版,选择开源版的系统平台为Windows,单击免费下载。 在新页面下单击立即下载 将下载的emqx-5.1.6-windows-amd64.zip解压出来,解压目录不能存在中文、空格、特殊字符

    2024年02月09日
    浏览(33)
  • Windows下搭建MQTT服务器

    MQ遥测传输(MQTT)是轻量级基于代理的发布/订阅的消息传输协议,设计思想是开放、简单、轻量、易于实现。这些特点使它适用于低带宽受限环境。 特点包括以下: 使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合。 对负载内容屏蔽的消息传输。 使用

    2024年02月03日
    浏览(58)
  • mqtt服务器搭建与qt下的mqtt客户端实现

      MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(Io

    2024年02月06日
    浏览(73)
  • 快速搭建个人MQTT服务器(基于EMQX)

    4分钟快速搭建个人MQTT服务器(基于EMQX) 相信看到这篇教程的人应该对MQTT协议有了一定的了解。其实提供MQTT服务的厂商也有很多,比较知名的有EMQX等。EMQX虽然提供了免费的公共MQTT5服务器。 但是对于多个用户利用公共服务器同时订阅或发布同一主题内容时,可能会接收到

    2024年02月03日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包