MQTT/WebSocket with SSL 监听器 - 8084
MQTT/WebSocket with SSL 监听端口:
listener.wss.external = 8084
接收池大小:
listener.wss.external.acceptors = 4
最大并发连接数:
listener.wss.external.max_connections = 16
每秒最大创建连接数:
listener.wss.external.max_conn_rate = 1000
TCP 数据接收速率限制:
## listener.wss.external.rate_limit = 1024,4096
监听器使用的 Zone:
listener.wss.external.zone = external
挂载点:
## listener.wss.external.mountpoint = devicebound/
访问控制规则:
listener.wss.external.access.1 = allow all
是否验证协议头是否有效:
listener.wss.external.verify_protocol_header = on
EMQ X 集群部署在 NGINX 或 HAProxy 之后,使用 X-Forward-For 来识别原始 IP:
## listener.wss.external.proxy_address_header = X-Forwarded-For
EMQ X 集群部署在 NGINX 或 HAProxy 之后,使用 X-Forward-Port 来识别原始端口:
## listener.wss.external.proxy_port_header = X-Forwarded-Port
EMQ X 集群部署在 HAProxy 或 Nginx 时,是否启用代理协议 V1/2:
## listener.wss.external.proxy_protocol = on
代理协议超时时间:
## listener.wss.external.proxy_protocol_timeout = 3s
TLS 版本,防止 POODLE 攻击:
## listener.wss.external.tls_versions = tlsv1.2,tlsv1.1,tlsv1
包含用户私钥的文件的路径:
listener.wss.external.keyfile = etc/certs/key.pem
包含用户证书的文件的路径:
listener.wss.external.certfile = etc/certs/cert.pem
包含 CA 证书的文件的路径:
## listener.wss.external.cacertfile = etc/certs/cacert.pem
包含 dh-params 的文件的路径:
## listener.ssl.external.dhfile = etc/certs/dh-params.pem
配置 verify 模式,服务器只在 verify_peer 模式下执行 x509 路径验证,并向客户端发送一个证书请求:
## listener.wss.external.verify = verify_peer
服务器为 verify_peer 模式时,如果客户端没有要发送的证书,服务器是否返回失败:
## listener.wss.external.fail_if_no_peer_cert = true
SSL cipher suites:
## listener.wss.external.ciphers = ECDHE-ECDSA-AES256-GCM-SHA384,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-ECDSA-AES256-SHA384,ECDHE-RSA-AES256-SHA384,ECDHE-ECDSA-DES-CBC3-SHA,ECDH-ECDSA-AES256-GCM-SHA384,ECDH-RSA-AES256-GCM-SHA384,ECDH-ECDSA-AES256-SHA384,ECDH-RSA-AES256-SHA384,DHE-DSS-AES256-GCM-SHA384,DHE-DSS-AES256-SHA256,AES256-GCM-SHA384,AES256-SHA256,ECDHE-ECDSA-AES128-GCM-SHA256,ECDHE-RSA-AES128-GCM-SHA256,ECDHE-ECDSA-AES128-SHA256,ECDHE-RSA-AES128-SHA256,ECDH-ECDSA-AES128-GCM-SHA256,ECDH-RSA-AES128-GCM-SHA256,ECDH-ECDSA-AES128-SHA256,ECDH-RSA-AES128-SHA256,DHE-DSS-AES128-GCM-SHA256,DHE-DSS-AES128-SHA256,AES128-GCM-SHA256,AES128-SHA256,ECDHE-ECDSA-AES256-SHA,ECDHE-RSA-AES256-SHA,DHE-DSS-AES256-SHA,ECDH-ECDSA-AES256-SHA,ECDH-RSA-AES256-SHA,AES256-SHA,ECDHE-ECDSA-AES128-SHA,ECDHE-RSA-AES128-SHA,DHE-DSS-AES128-SHA,ECDH-ECDSA-AES128-SHA,ECDH-RSA-AES128-SHA,AES128-SHA
是否启动更安全的 renegotiation 机制:
## listener.wss.external.secure_renegotiate = off
是否允许客户端重用一个已存在的会话:
## listener.wss.external.reuse_sessions = on
是否强制根据服务器指定的顺序而不是客户端指定的顺序设置密码:
## listener.wss.external.honor_cipher_order = on
使用客户端证书中的 CN、EN 或 CRT 字段作为用户名。注意,“verify” 应该设置为 “verify_peer”:
## listener.wss.external.peer_cert_as_username = cn
挂起连接的队列的最大长度:
listener.wss.external.backlog = 1024
TCP 发送超时时间:
listener.wss.external.send_timeout = 15s
发送超时时是否关闭 TCP 连接:
listener.wss.external.send_timeout_close = on
用于 MQTT 连接的 TCP 接收缓冲区(os 内核):
## listener.wss.external.recbuf = 4KB
用于 MQTT 连接的 TCP 发送缓冲区(os 内核):
## listener.wss.external.sndbuf = 4KB
驱动程序使用的用户级软件缓冲区的大小,不要与选项 sndbuf 和 recbuf 混淆, 它们对应于内核套接字缓冲区。建议使用 val(buffer) >= max(val(sndbuf),val(recbuf)) 来避免不必要的复制带来的性能问题。当设置 sndbuf 或 recbuf 值时,val(buffer) 自动设置为上述最大值:
## listener.wss.external.buffer = 4KB
是否设置 TCP_NODELAY 标志。如果启用该选项,发送缓冲区一旦有数据就会尝试发送:
## listener.wss.external.nodelay = true
是否压缩 Websocket 消息:
## listener.wss.external.compress = true
Websocket deflate 选项:
## listener.wss.external.deflate_opts.level = default
## listener.wss.external.deflate_opts.mem_level = 8
## listener.wss.external.deflate_opts.strategy = default
## listener.wss.external.deflate_opts.server_context_takeover = takeover
## listener.wss.external.deflate_opts.client_context_takeover = takeover
## listener.wss.external.deflate_opts.server_max_window_bits = 15
## listener.wss.external.deflate_opts.client_max_window_bits = 15
最大空闲时间:
## listener.wss.external.idle_timeout = 2h
最大报文大小,0 表示没有限制:
## listener.wss.external.max_frame_size = 0