6-1-2生成自己的证书

首先转到 /etc/mosquitto/certs 并发出以下命令:

sudo openssl req -x509 -newkey rsa:1024 -keyout ca.crt -out cert.crt -days 9999

然后,您将被邀请填写一些详细信息,如下面的屏幕截图所示,关于证书的所有者,例如居住国家,州,公司,城市,电子邮件地址,最重要的是完全合格的域名(FQDN Fully Qualified Domain Name)。如果您没有域名,则需要是您的服务器域或服务器IP地址:

当您被问及密码短语时,您需要输入一个超过四个字符的密码短语。别担心,在下一步中我们将从证书中删除它。

上述命令的结果应该是位于 /etc/mosquitto/certs 中的两个文件目录:

以下命令将删除先前的密码并生成新文件:

sudo openssl rsa -in ca.crt -out newca.pem

此命令的输入文件是 ca.crt,它将生成一个文件名 newca.pem,并删除了密码。我们可以在以下屏幕截图中看到这一点:

最后,/etc/mosquitto/certs 中应该有三个文件:

注意:在 mosquitto 配置中,您只需要三个文件中的两个 cert.crt 和 newca.pem 确保 ca.crt 安全地存储在服务器之外。确保只有mosquitto 用户访问证书。生产中的 mosquitto 代理也应该由 mosquitto 用户启动而不是 root 用户

既然您拥有了证书的正确文件,那么让我们配置 mosquitto 来考虑它们。如果您希望有两个非安全端口(例如1883)和WebSockets 连接的 9004,则可以添加 8883 作为安全端口,将 9883 添加为 WebSocket Secure(WSS)端口。
要配置 mosquitto,您需要编辑位于 /etc/mosquitto/ 中的配置文件 mosquitto.conf ,文件的新内容应该是:

使用以下命令重新启动mosquitto服务以使用新配置启动:

sudo service mosquitto restart

现在你可以通过查看 /var/log/mosquitto/mosquitto.log 来检查 mosquitto 是否已正确启动并且你在 mosquitto.conf 中有没有错误:

如果没有错误,您可以继续将客户端连接到新的安全端口。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值