证书在 mosquitto 中的配置

本文详细介绍了如何使用OpenSSL创建自签名根证书、服务端证书和客户端证书,以及如何在Mosquitto MQTT代理中配置这些证书进行SSL/TLS的单向和双向认证。在创建证书过程中强调了Common Name的重要性,而在Mosquitto的配置中,重点说明了证书路径的设置以及端口的调整。
摘要由CSDN通过智能技术生成

Mosquitto为加密网络连接和身份认证提供了SSL支持。下面将介绍如何利用OpenSSL创建证书,及如何将证书应用在MQTT中

默认大家已经安装了mosquitto和OpenSSL,如未安装,请参考 mosquitto在Windows上的安装过程


第一部分:OpenSSL创建证书

前提条件:需要先安装OpenSSL,并将其添加至系统环境变量中(此步骤是为了后面命令操作方便)。如未安装,请参考上一篇 mosquitto在Windows上的安装过程

第一步:创建自签名根证书

openssl req -new -x509 -days 100 -extensions v3_ca -keyout ca.key -out ca.crt

-days 100 中的100代表证书有效期为100天,根据需要进行设定。下文中服务端,客户端证书创建命令中的-days 100同此作用。

命令窗口中输入以上命令

ca生成
注意:

  • Common Name 项可填写 主机名,域名或IP 三选一。(本文样例中填写的是主机名 admin)
  • 后面用mosquitto命令订阅或发布时候的 -h 参数需要和此处Common Name填写对应,否则可能会出现证书认证失败,无法订阅或发布。
  • 其它一些参数可忽略。

创建完成后可以在目录中看到ca证书

ca证书

第二步:创建服务端证书

1. 打开命令窗口,输入以下命令,创建服务端私钥 server.key

openssl genrsa -out server.key 2048
在这里插入图片描述

2. 创建服务端证书请求文件 server.csr。该过程参数填写与根证书创建大致相同,一定要注意Common Name选项的填写。

openssl req -out server.csr -ke

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
配置MQTT Broker(例如Mosquitto)的方法是通过编辑对应的配置文件。在Mosquitto配置文件的路径通常是/etc/mosquitto/mosquitto.conf。 你可以使用任何文本编辑器(如nano或vim)打开mosquitto.conf文件,并根据需要进行修改。以下是一些常见的配置选项: 1. 监听端口:通过配置`port`选项,您可以指定Mosquitto Broker监听的端口号。默认情况下,MQTT使用1883端口,而MQTT over TLS使用8883端口。 2. 访问控制列表(ACL):通过配置`acl_file`选项,您可以指定包含ACL规则的文件的路径。ACL规则用于限制连接和发布/订阅主题的权限。 3. 持久化存储:通过配置`persistence`选项,您可以启用Mosquitto的持久化存储功能。此功能可确保在Broker重新启动后,消息和订阅状态仍然可用。 4. TLS加密:如果您希望使用TLS对连接进行加密,请配置TLS相关选项,例如`cafile`、`certfile`和`keyfile`。这些选项指定了证书和密钥文件的路径。 5. 日志记录:通过配置`log_dest`选项,您可以指定Mosquitto Broker将日志输出到哪个文件或输出流。您还可以通过调整`log_type`选项来控制日志的详细级别。 请注意,在修改配置文件后,您需要重新启动Mosquitto Broker才能使更改生效。您可以使用以下命令来重新启动Mosquitto服务: ``` sudo systemctl restart mosquitto ``` 这是一些常见的配置选项,您可以根据您的需求进行调整。有关更多配置选项和详细说明,请参考Mosquitto的官方文档。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值