MQTT服务器-安装篇(阿里云主机)

接上一篇《ESP32使用MQTT协议通讯(EMQX)-CSDN博客》,上文中使用的是免费的公共 MQTT 服务器 | EMQ,若要运行自己的业务,还是自己搭建一个MQTT服务器比较稳妥。如果你有一台阿里云ECS主机,可以参考本文搭建自己的MQTT服务器。

在阿里云ECS的中安装MQTT服务器,一个流行的开源选择是Mosquitto。以下是安装和配置Mosquitto MQTT服务器的步骤:

步骤 1: 更新系统

在开始之前,确保你的系统是最新的:

bash 复制代码
sudo yum update

步骤 2: 安装EPEL仓库

Mosquitto在标准的CentOS仓库中可能没有,所以你需要安装EPEL(Extra Packages for Enterprise Linux)仓库:

bash 复制代码
sudo yum install epel-release

步骤 3: 安装Mosquitto

接下来,使用yum来安装Mosquitto:

bash 复制代码
sudo yum install mosquitto mosquitto-clients

安装完成后,启动Mosquitto服务。

bash 复制代码
sudo systemctl start mosquitto

为了确保Mosquitto在系统重启后自动启动,可以将其设置为系统服务,随系统启动。

bash 复制代码
sudo systemctl enable mosquitto

步骤 4: 配置Mosquitto

Mosquitto的配置文件通常位于/etc/mosquitto/mosquitto.conf。你可以使用文本编辑器打开它,例如使用vinano

1. 关闭匿名登录

为了安全起见,可以关闭Mosquitto的匿名登录功能,并设置用户名和密码进行认证。

(1)打开/etc/mosquitto/mosquitto.conf文件。

(2)在配置文件中找到allow_anonymous行,并将其设置为false

(3)保存并关闭配置文件。

2. 设置用户名和密码

如果你想添加用户认证,可以使用mosquitto_passwd命令来添加用户:

bash 复制代码
sudo mosquitto_passwd -c /etc/mosquitto/passwdfile your_username

输入两次密码后,并重启服务:

bash 复制代码
sudo systemctl restart mosquitto

步骤 5:开通端口供外网连接

开启防火墙允许MQTT流量,MQTT模式使用1883端口。

bash 复制代码
sudo firewall-cmd --permanent --add-port=1883/tcp
sudo firewall-cmd --reload

另外还需在阿里云后台设置安全组策略,允许1883端口连接。

步骤 6:测试连接

使用MQTTX等客户端连接工具,测试连接即可。

完成以上步骤后,你就应该在阿里云ECS的中成功安装并配置了MQTT服务器。

相关推荐
我科绝伦(Huanhuan Zhou)26 分钟前
华为泰山服务器重启后出现 XFS 文件系统磁盘“不识别”(无法挂载或访问),但挂载点目录仍在且无数据
运维·服务器·华为
匆匆那年9671 小时前
Docker容器中安装MongoDB,导入数据
运维·docker·容器
望获linux1 小时前
【Linux基础知识系列】第四十三篇 - 基础正则表达式与 grep/sed
linux·运维·服务器·开发语言·前端·操作系统·嵌入式软件
万米商云2 小时前
企业物资集采平台解决方案:跨地域、多仓库、百部门——大型企业如何用一套系统管好百万级物资?
大数据·运维·人工智能
挑战者6668882 小时前
CentOS 系统高效部署 Dify 全攻略
linux·运维·centos
网硕互联的小客服4 小时前
服务器经常出现蓝屏是什么原因导致的?如何排查和修复?
运维·服务器·stm32·单片机·网络安全
witton4 小时前
Go语言网络游戏服务器模块化编程
服务器·开发语言·游戏·golang·origin·模块化·耦合
成都极云科技4 小时前
成都算力租赁新趋势:H20 八卡服务器如何重塑 AI 产业格局?
大数据·服务器·人工智能·云计算·gpu算力
喜欢吃豆4 小时前
从零构建MCP服务器:FastMCP实战指南
运维·服务器·人工智能·python·大模型·mcp
刘阿宾4 小时前
【华为昇腾|CUDA】服务器A6000显卡部署LLM实战记录
服务器·华为·语言模型·gpu算力·kylin