MQTT 协议相关
Summary: Author: 张亚飞 | Read Time: 2 minute read | Published: 2015-09-23
Filed under
—
Categories:
Linux
—
Tags:
Note,
MQTT
协议相关
MQTT
服务器
使用 emqttd
broken
emqttd
使用以下命令调试输出
/opt/data/
wget http://emqtt.com/static/brokers/emqttd-ubuntu16.04-v2.0.2.zip
unzip emqttd-ubuntu16.04-v2.0.2.zip
cd emqttd
./bin/emqttd console
如果没有打印输出日志信息,可以参考取消 rel/files/emqttd.config.production
或 ./etc/emqttd.config
中对 %%{lager_console_backend, info}
的注释
EMQ Dashboard
后台证书配置
编辑配置 etc/plugins/emq_dashboard.conf
到 wss
相应的域名证书:
dashboard.listener.https = 18084
dashboard.listener.https.acceptors = 2
dashboard.listener.https.max_clients = 512
dashboard.listener.https.access.1 = allow all
dashboard.listener.https.keyfile = /etc/letsencrypt/archive/mus.0.sw.iirii.com/privkey.pem
dashboard.listener.https.certfile = /etc/letsencrypt/archive/mus.0.sw.iirii.com/cert.pem
重启访问测试:
http://103.37.147.250:18083/#/websocket
https://mus.0.sw.iirii.com:18084/#/websocket
EMQ WSS
证书配置
编辑配置 etc/emq.conf
到 wss
相应的域名证书:
#listener.wss.external.keyfile = etc/certs/key.pem
listener.wss.external.keyfile = /etc/letsencrypt/archive/mus.0.sw.iirii.com/privkey.pem
#listener.wss.external.certfile = etc/certs/cert.pem
listener.wss.external.certfile = /etc/letsencrypt/archive/mus.0.sw.iirii.com/cert.pem
## listener.wss.external.cacertfile = etc/certs/cacert.pem
listener.wss.external.cacertfile = /etc/letsencrypt/archive/mus.0.sw.iirii.com/ca.pem
使用后台 wss
连接测试
使用 mqtt.js
连接测试
// you add a ws:// url here
var client = mqtt.connect('wss://mus.0.sw.iirii.com:8084/mqtt');
注意:
Android
配置连接方式wss
需要服务器端配置listener.wss.external.cacertfile
.
EMQ MQTT SSL
证书配置
生成 ca
证书:
cd /etc/letsencrypt/archive/mus.0.sw.iirii.com/
cat /etc/ssl/certs/DST_Root_CA_X3.pem chain.pem > ca.pem
编辑配置 etc/emq.conf
到 mqtt
相应的域名证书:
listener.ssl.external = 8883
listener.ssl.external.acceptors = 16
listener.ssl.external.max_clients = 1024
listener.ssl.external.access.1 = allow all
listener.ssl.external.handshake_timeout = 15s
listener.ssl.external.keyfile = /etc/letsencrypt/archive/mus.0.sw.iirii.com/privkey.pem
listener.ssl.external.certfile = /etc/letsencrypt/archive/mus.0.sw.iirii.com/cert.pem
listener.ssl.external.cacertfile = /etc/letsencrypt/archive/mus.0.sw.iirii.com/ca.pem
重启访问测试:
tcp://103.37.147.250:1883
ssl://mus.0.sw.iirii.com:8883
注意:
Android
配置连接方式ssl
需要服务器端配置listener.ssl.external.cacertfile
.
- Using Let’s Encrypt Certificates in EMQ
- EMQ + Letsencrypt #765
- Using Let’s Encrypt certificates with mosquitto
Comments