mosquitto ---配置SSL/TLS
2024-08-25 15:45:28
在服务器电脑上面创建myCA文件夹, 如在/home/qa/ 文件夹下使用命令,
mkdir myCA
然后执行以下命令,我们将创建并使用其他用户没有权限访问的目录。
sudo chmod 700
cd myCA
进入myCA文件夹,然后执行以下命令下载生成证书用的脚本。
wget https://github.com/owntracks/tools/raw/master/TLS/generate-CA.sh
下载完之后,在myCA文件夹下面执行命令
注:在生产环境中使用此实例之前,你应该定制the generate-CA.sh脚本
bash ./generate-CA.sh
generate-CA.sh会产生3个文件:ca.crt,ca.key,ca.csr分别为: 证书(.CRT),钥匙(.KEY),请求(.csr文件),这三个文件是给服务器使用的
在myCA文件夹下面执行命令
bash ./generate-CA.sh client myclient
其中myclient是给客户端生成证书的名称,可随意更改。执行完上述命令后,会新生成几个文件。
客户端需要使用的是ca.crt/myclient.crt/myclient.key这三个文件。
经过上述步骤之后,生成了服务器使用的ca.crt/localhost.crt/localhost.key文件和客户端使用的
ca.crt/myclient.crt/myclient.key这几个文件,其中ca.crt是同一个文件。
配置mosquitto.conf文件。该文件在mosquitto-1.4.11安装文件夹里面,打开该文件,修改成如下配置:
port 8883
protocol mqtt
cafile /home/myCA/ubuntu/ca.crt
certfile /home/myCA/ubuntu/localhost.crt
keyfile /home/myCA/ubuntu/localhost.key
require_certificate true
use_identity_as_username true
修改完配置文件之后,执行启动命令mosquitto -c /home/qa/mosquitto-1.4.11/mosquitto.conf -v
根据自己的mosquitto-conf文件所在的位置修改上述命令中的参数,然后服务器就以SSL/TSL的方式开始启动。
此时客户端使用上述过程产生的客户端证书连接该服务器,即可进行通信。
参考页面:https://mosquitto.org/man/mosquitto-tls-7.html
最新文章
- 【bzoj1085】 SCOI2005—骑士精神
- codeforces 446C DZY Loves Fibonacci Numbers 线段树
- iPad apple-touch-startup-image实现portrait和landscape
- shell脚本 空格
- c语言指针占几个字节
- ios 聊天demo 和nsoperationdemo
- java课程设计(计算器)
- pChart图表插件使用
- WPF 数字小键盘Themes
- RE模块垃圾回收机制
- vscode开发中绝对让你惊艳的插件!!!(个人在用)
- zoj3471 状态压缩dp基础
- FCC JS基础算法题(9):Mutations(比较字符串)
- JMeter结果树响应数据中文乱码解决办法
- nginx+tomcat集群
- iOS.AutoLayout.2.CustomView-with-AutoLayout
- 2018.11.01 loj#2319. 「NOIP2017」列队(线段树)
- 【转】基于jquery,bootstrap数据验证插件bootstrapValidator 教程
- listener does not currently know of 。。。。
- 在Android中使用Protocol Buffers(上篇)
热门文章
- Windows Embedded Compact 7网络编程概述(上)
- arcgis python图形信息
- Ruby:对象模型(又称八卦模型)笔记
- 全负荷的 Node.js[转载]
- mysql求交集:UNION ALL合并查询,inner join内连接查询,IN/EXISTS子查询
- Steve Lin:如何撰写一篇优秀的SIGGRAPH论文
- 将Maven2项目转为MyEclipse项目
- 从头開始写项目Makefile(十):make内嵌函数及make命令显示
- [转]nginx折腾记(HTTP性能能测试,与Apache对比)
- C#中使用SQLite数据库简介(下)