一、云服务器环境准备
选择阿里云、华为云等主流云平台,创建ECS实例时建议使用Ubuntu 18.04或更高版本操作系统。确保实例具备公网IP地址,并完成基础系统更新:
- 通过控制台获取实例公网IP
- 使用SSH工具连接云服务器
- 执行
sudo apt update && sudo apt upgrade
更新系统
二、安装与启动MQTT服务
推荐采用EMQX作为MQTT服务器,通过以下两种方式安装:
- Apt安装方式:
- 执行
curl -s https://assets.emqx.com/scripts/install-emqx-deb.sh | sudo bash
- 运行
sudo apt-get install emqx
- 启动服务
emqx start
- 执行
- Docker部署方式:
- 拉取镜像
docker pull emqx/emqx
- 启动容器
docker run -dit --name emqx -p 1883:1883 -p 18083:18083 emqx/emqx
- 拉取镜像
三、安全组与端口配置
在云平台控制台配置安全组规则,开放以下核心端口:
端口 | 协议 | 用途 |
---|---|---|
1883 | TCP | MQTT协议通信 |
8883 | TCP | SSL加密通信 |
18083 | HTTP | Web管理界面 |
配置时需设置源地址为0.0.0.0/0(测试环境)或指定IP段(生产环境)
四、服务验证与功能测试
通过浏览器访问http://公网IP:18083
进入EMQX管理界面,使用默认账号admin/public登录。客户端测试建议:
- 使用MQTT.fx工具创建TCP连接
- 订阅/发布测试主题验证消息路由
- 在Dashboard查看实时连接状态
五、安全优化建议
生产环境需执行以下加固措施:
- 修改默认管理员密码
- 启用TLS证书加密通信
- 配置ACL访问控制列表
- 设置防火墙白名单规则
通过上述步骤,可在云主机快速搭建高可用的MQTT服务器。建议定期检查服务日志与安全组规则,结合业务需求调整QoS等级和会话保持策略。不同云平台操作细节存在差异,但核心配置逻辑相通