如何使用 Godaddy 证书为 Mosquitto 配置安全性

Posted

技术标签:

【中文标题】如何使用 Godaddy 证书为 Mosquitto 配置安全性【英文标题】:How to configure security for Mosquitto with Godaddy certificates 【发布时间】:2021-08-13 13:21:42 【问题描述】:

我可以使用 openssl 证书配置安全性。但是使用 Godaddy 证书,我无法配置安全蚊子。 我从 Godaddy SSL 获得了 3 个文件,

    2324145e73d34dad.crt 2324145e73d34dad.pem gd_bundle-g2-g1.crt

根据 Godaddy 网站,第一个是根证书,即 ca.crt 第三个是中间/链证书。

但我想配置 server.crt 和 server.key。

我们如何使用这些文件配置 ssl?我们可以用它们生成 server.key 和 server.crt 吗?

【问题讨论】:

【参考方案1】:

您应该已经拥有私钥,您需要使用它来生成您发送给 Godaddy 的 CSR 以获取签名证书。

2324145e73d34dad.pem 听起来像是你的服务器证书(这是 mosquitto 想要的)

来自手册页:

证书文件 文件路径

PEM 编码服务器证书的路径。必须存在此选项和密钥文件才能启用基于证书的 TLS 加密。

【讨论】:

我使用了以下配置文件 /etc/mosquitto/certs/2324145e73d34dad.pem keyfile /etc/mosquitto/certs/privatekey.key certfile /etc/mosquitto/certs/gd_bundle-g2-g1.crt但收到错误错误:无法加载服务器密钥文件“/etc/mosquitto/certs/privatekey.key”。检查密钥文件。 由于您没有提供有关 privatekey.key 文件的任何信息,我真的无能为力,但我猜您没有从中删除密码。 我不知道该私钥附加了什么密码,但可以使用 root 用户访问该密码 再说一次,如果有密码,你必须知道,因为它是用来生成 CSR 的,但正如我所说,你没有提供任何密码关于密钥文件的信息,所以我们能做的就是猜测 我也有私钥和 CSR 文件。我在 mqtt 配置中使用了与服务器密钥相同的私钥。但我不知道私钥中的密码短语是什么。【参考方案2】:

问题在于私钥编码。 当我们从GoDaddy下载私钥时,它是UTF-8-BOM编码,我们需要将Encoding改为UTF-8。

【讨论】:

以上是关于如何使用 Godaddy 证书为 Mosquitto 配置安全性的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Godaddy 证书导出私钥并与 Apache SSL 一起使用

如何在aws elb上安装godaddy ssl证书?

我通过 godaddy 为我的网站购买了 SSL 证书。如何强制我的网站始终加载 https 而不是 http?

如何将 godaddy ssl 证书添加到托管在 aws ec2 上的站点

使用 Godaddy 颁发的证书时“公钥证书和私钥不匹配”[关闭]

azure绑定ssl,godaddy的ssl证书