mosquitto ---配置SSL/TLS

摘自: https://www.cnblogs.com/saryli/p/9821343.html

在服务器电脑上面创建myCA文件夹, 如在/home/qa/ 文件夹下使用命令,

1
mkdir myCA 

然后执行以下命令,我们将创建并使用其他用户没有权限访问的目录。

1
sudo chmod 700<br>cd myCA<br>
 
进入myCA文件夹,然后执行以下命令下载生成证书用的脚本。
1
wget https://github.com/owntracks/tools/raw/master/TLS/generate-CA.sh

下载完之后,在myCA文件夹下面执行命令

注:在生产环境中使用此实例之前,你应该定制the generate-CA.sh脚本

1
bash ./generate-CA.sh
 
generate-CA.sh会产生3个文件:ca.crt,ca.key,ca.csr分别为: 证书(.CRT),钥匙(.KEY),请求(.csr文件),这三个文件是给服务器使用的
 
在myCA文件夹下面执行命令
 
1
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安装文件夹里面,打开该文件,修改成如下配置:
1
2
3
4
5
6
7
   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

最新文章

  1. C# 去掉List重复元素的方法
  2. HTTP 错误 500.23 - Internal Server Error
  3. hdoj 1596 find the safest rode
  4. ie8下table的colspan属性与max-with属性的显示错乱问题
  5. [shell基础]——paste命令
  6. DIV+CSS 网页布局之:三列布局
  7. javascript 匿名函数的理解,js括号中括function 如(function(){})
  8. nginx-301重定向开始
  9. 用ahk脚本自己主动删除flashcookies
  10. jquery-制作选项卡
  11. this关键字、访问修饰符、super关键字
  12. Java性能优化_转载
  13. ExtJs的expand和collapse
  14. tesseract-ocr字库训练图文讲解
  15. 使用bind提供域名解析服务搭建
  16. Excel导入工具类兼容xls和xlsx
  17. Tomcat是什么:Tomcat与Java技、Tomcat与Web应用以及Tomcat基本框架及相关配置
  18. Docker使用札记 - 常用命令
  19. opencv 车牌字符分割 ANN网络识别字符
  20. kubelet源码分析(version: git tag 1.7.6)

热门文章

  1. Ubantu 安装fftw3
  2. java bean 合并
  3. Java 面向对象 初探
  4. Redis: temple
  5. ping第一包时间过长
  6. MySQL 慢查询日志切换
  7. socket-简单实现
  8. 查看Android内存,cpu
  9. 华为交换机S5700设置远程ssh telnet登录
  10. Python Twisted系列教程18:Deferreds 全貌