网站备案用座机租用办公空间设计主题名称
news/
2025/9/28 17:47:08/
文章来源:
网站备案用座机租用,办公空间设计主题名称,excel做网站链接,qq网站登录#x1f449;原文阅读 #x1f4a1;章前提示
本文采用8084端口进行连接#xff0c;是EMQX 默认提供了四个常用的监听器之一#xff0c;如果需要添加其他类型的监听器#xff0c;可参考官方文档#x1f517;管理 | EMQX 文档。
本文使用自签名CA#xff0c;需要提前在L… 原文阅读 章前提示
本文采用8084端口进行连接是EMQX 默认提供了四个常用的监听器之一如果需要添加其他类型的监听器可参考官方文档管理 | EMQX 文档。
本文使用自签名CA需要提前在Linux系统上安装OpenSSL具体安装教程请自行搜索。
本文采用SSL/TLS连接需要提前在EMQX上启用可参考开启 SSL/TLS 连接| EMQX 文档 目录 [原文阅读](https://b1ankc-mov.github.io/posts/emqx_mqtt_ssl_wss/)章前提示 正文开始使用OpenSSL获取证书CA文件Server文件小贴士 Client文件 登录EMQX平台配置服务器注意 使用MQTTX客户端测试连接单向认证的SSL/TLS连接双向认证的SSL/TLS连接 正文开始
使用OpenSSL获取证书
CA文件
打开Linux系统终端操作窗口输入以下指令查看OpenSSL是否安装如果有则会显示版本信息。
openssl version生成私钥my_root_ca.key
openssl genrsa -out my_root_ca.key 2048使用该密钥生成根CA证书my_root_ca.pem
openssl req -x509 -new -nodes -key my_root_ca.key -sha256 -days 3650 -out my_root_ca.pem系统会提示以下信息对应含义如下根据下面的内容填就可以了#后面的不需要填
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ., the field will be left blank.
-----
Country Name (2 letter code) [AU]: CN # 国家/地区
State or Province Name (full name) [Some-State]:Zhejiang # 省/市
Locality Name (eg, city) []:Hangzhou # 城市
Organization Name (eg, company) [Internet Widgits Pty Ltd]:EMQX # 组织机构或公司名如 EMQ
Organizational Unit Name (eg, section) []:EMQX # 机构部门如 EMQX
Common Name (e.g. server FQDN or YOUR name) []:none # 通用名称此处应当设置为服务器域名如 mqtt.emqx.com
...Server文件
生成EMQX服务器端的私钥emqx.key
openssl genrsa -out emqx.key 2048使用 vi命令创建配置文件openssl.cnf
vi openssl.cnf文件内容如下BROKER_ADDRESS 修改为 EMQX 服务器实际的 IP 或 DNS 地址
例如IP.1 127.0.0.1或 DNS.1 broker.xxx.com可以只填IP把域名DNS那一行删掉
[req]
default_bits 2048
distinguished_name req_distinguished_name
req_extensions req_ext
x509_extensions v3_req
prompt no
[req_distinguished_name]
countryName CN
stateOrProvinceName Zhejiang
localityName Hangzhou
organizationName EMQX
commonName Server certificate
[req_ext]
subjectAltName alt_names
[v3_req]
subjectAltName alt_names
[alt_names]
IP.1 BROKER_ADDRESS
DNS.1 BROKER_ADDRESS 最后Esc:wq 保存并退出。
使用上面的密钥和配置文件签发证书请求emqx.csr
openssl req -new -key ./emqx.key -config openssl.cnf -out emqx.csr使用请求文件、CA密钥、配置文件以根证书签发EMQX实体证书emqx.pem
openssl x509 -req -in ./emqx.csr -CA my_root_ca.pem -CAkey my_root_ca.key -CAcreateserial -out emqx.pem -days 3650 -sha256 -extensions v3_req -extfile openssl.cnf小贴士
准备好Server文件EMQX证书后就可以启用EMQX单向认证的SSL/TLS连接功能了
如果需要双向认证或客户端证书和客户端Key文件用来满足配置nginx等需求的请继续配置Client文件↓ Client文件
这一部分原理和内容跟配置Server文件一样不赘述了直接放步骤。
生成client.key
openssl genrsa -out client.key 2048生成client.csr
openssl req -new -key ./client.key -config openssl.cnf -out client.csr生成client.pem
openssl x509 -req -in ./client.csr -CA my_root_ca.pem -CAkey my_root_ca.key -CAcreateserial -out client.pem -days 3650 -sha256 -extensions v3_req -extfile openssl.cnf登录EMQX平台配置服务器
将前文中通过OpenSSL工具生成的 emqx.pem、emqx.key 及 my_root_ca.pem 文件拷贝到 EMQX 的 etc/certs/ 目录下并参考如下配置修改 emqx.conf
## listener.ssl.$name is the IP address and port that the MQTT/SSL
## Value: IP:Port | Port
listener.ssl.external 8084## Path to the file containing the users private PEM-encoded key.
## Value: File
listener.ssl.external.keyfile etc/certs/emqx.key## Path to a file containing the user certificate.
## Value: File
listener.ssl.external.certfile etc/certs/emqx.pem## Path to the file containing PEM-encoded CA certificates. The CA certificates
## Value: File
listener.ssl.external.cacertfile etc/certs/my_root_ca.pem博主8084端口部分修改之后是这样的↓ 打开 Dashboard点击管理 - 监听器进入监听器管理页面
打开8084端口配置界面重新设置TLS CertTLS Key和CA Cert分别对应上传emqx.pememqx.keymy_root_ca.pem文件 注意 这里类型两个字下面框里的内容要提前设置成wss要不然SSL/TLS连接没法用 另外SSL版本最好是这样
这些章前的参考文档都说明了这里再提醒一下其他设置基本默认出问题回去看官方文档 重启EMQX服务器
emqx restart使用MQTTX客户端测试连接
MQTTX官网:MQTTX全功能 MQTT 客户端工具
官方安装文档:安装 - MQTTX 文档
官方使用文档:MQTT 客户端工具演示 | EMQX 文档
单向认证的SSL/TLS连接 打开MQTTX客户端添加连接填写信息 名称随便填Client ID随机 服务器地址选择wss://后面填IP地址端口8084 SSL安全按钮关闭 证书类型选择CA or Self signed certificates在CA文件处上传根CA证书即可客户端证书和客户端key文件两栏不填 MQTT版本3.1.1 点击连接按钮连接成功 发送测试消息发送成功 参考官方使用文档的步骤MQTT 客户端工具演示 | EMQX 文档创建另一个连接作为消息接受客户端配置与之前相同添加订阅在Topic中输入test 接着在原来的EMQX_SSL_TEST连接重新发送test消息客户端会收到新消息 双向认证的SSL/TLS连接
除了SSL安全按钮启动和填入客户端证书、key文件之外与单向认证没有什么区别具体看图 至此所有测试连接成功√你会在EMQX监听器上看见连接数增加。 参考文章链接 EMQ X MQTT 服务器启用 SSL/TLS 安全连接开启 SSL/TLS 连接 | EMQX 文档获取 SSL/TLS 证书 | EMQX 文档MQTT 客户端工具演示 | EMQX 文档管理 | EMQX 文档
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/920927.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!