**问题:**
在使用 EMQX 时,常见端口如 8083、8084、8883、18083 各自的作用分别是什么?如何正确配置这些端口以支持 MQTT 服务、管理控制台和安全通信?例如,8083 通常用于 MQTT WebSocket 通信,8883 用于 MQTT SSL/TLS 加密连接,而 18083 用于 Dashboard 管理界面。实际部署中,如何通过配置文件(如 emqx.conf)修改这些端口,并确保防火墙和安全策略允许相应流量?此外,8084 端口常用于 WebSocket over SSL(WSS),如何为其配置有效的证书以保障安全通信?
1条回答 默认 最新
祁圆圆 2025-08-02 23:20关注EMQX 常见端口解析与配置指南
1. EMQX 端口概述
在使用 EMQX 作为 MQTT 消息中间件时,理解其默认端口的功能是部署和运维的基础。EMQX 提供多种协议支持和管理功能,每种功能通常绑定在特定端口上。
端口号 协议/功能 用途说明 8083 MQTT WebSocket 用于基于 WebSocket 的 MQTT 客户端连接,适用于浏览器端的 MQTT 通信 8084 WebSocket Secure (WSS) 用于加密的 WebSocket 连接,需配置 SSL/TLS 证书 8883 MQTT over SSL/TLS 用于加密的 MQTT 客户端连接,提供端到端的安全通信 18083 Dashboard 管理界面 用于访问 EMQX 的 Web 管理控制台,进行监控、配置、用户管理等操作 2. 配置 EMQX 端口
EMQX 的配置文件通常为
emqx.conf,位于etc/目录下。以下是常见端口的配置项示例:- MQTT WebSocket 端口 8083:
listener.ws.external = 8083 - WSS 端口 8084:
listener.wss.external = 8084 - MQTT SSL/TLS 端口 8883:
listener.ssl.external = 8883 - Dashboard 端口 18083:
dashboard.listener.http = 18083
3. 防火墙与安全策略配置
在实际部署中,需确保服务器的防火墙规则允许对应端口的流量。以
ufw为例:sudo ufw allow 8083/tcp sudo ufw allow 8084/tcp sudo ufw allow 8883/tcp sudo ufw allow 18083/tcp此外,若部署在云平台(如 AWS、阿里云),还需在安全组中开放相应端口,并限制访问源 IP 以增强安全性。
4. 配置 WSS 端口 8084 的 SSL/TLS 证书
为确保 WebSocket Secure (WSS) 通信的安全性,需在配置文件中指定证书路径:
listener.wss.external.keyfile = /etc/emqx/certs/server.key listener.wss.external.certfile = /etc/emqx/certs/server.crt listener.wss.external.cacertfile = /etc/emqx/certs/ca.crt证书文件应为 PEM 格式,且证书域名需与客户端连接地址一致。建议使用 Let's Encrypt 等可信 CA 签发的证书。
5. 部署流程图
graph TD A[安装 EMQX] --> B[修改 emqx.conf 配置端口] B --> C[配置防火墙/安全组] C --> D[部署 SSL/TLS 证书(如 8084 和 8883)] D --> E[启动 EMQX 服务] E --> F[访问 Dashboard 验证服务状态]本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报- MQTT WebSocket 端口 8083: