继前一篇:ubuntu搭建mqtt服务器及验证 后,本篇介绍如何搭建mqtts服务器。
mqtts即mqtt + tls,在原有mqtt基础上添加证书加密能力,使传播消息不被破解。好在mosquitto已经支持TLS加密和单双向认证,本文介绍其配置方法。
1. 生成证书
如果有证书可跳过本步骤,可以用openssl生成证书。采用github上OweTracks项目下载并运行generate-CA.sh脚本。该脚本创建CA文件,生成服务器证书,并使用CA来签名证书。
运行脚本
$ mkdir myca
$ cd myca
$ bash ./generate-CA.sh
generate-CA.sh会产生6个文件:ca.crt,ca.key,ca.srl,host.crt,host.csr和host.key。分别为: 证书(.CRT),钥匙(.KEY),请求(.csr文件),并在签名过程中的一系列记录文件(.slr),注意host是系统名字,也就是服务器端的文件。
将证书文件拷贝到mosquitto配置目录/etc/mosquitto下:
$ sudo cp ca.c