簡體   English   中英

用於使用 PFX 證書的 Mosquitto 服務器配置

[英]Mosquitto server conf for using PFX certificate

我已經能夠獲得與 mosquitto 的 TLS 連接,並使用 CA.crt、server.crt、server.key 以及 client.crt 和 client.key。 我能夠使用 MQTTfx 和命令行來訂閱和發布沒有問題。 以下是我為任何需要它的人提供的完整設置,我正在尋找使用 pfx 證書的幫助。

我被要求弄清楚如何使用 PFX 客戶端證書(包含 client.crt 和 client.key)以及 ca.crt 來訂閱和發布到代理,我不認為這是 MQTTfx 1.7 或 CMD 示例中的選項 I可以在網上找到。 想知道任何人都有過使用 PFX 的經驗,可以通過經紀人設置和子示例啟發我。

經紀人設置:

listener 8883
log_type error
log_type notice
log_type information
log_type debug
require_certificate true
use_identity_as_username true
cafile C:\Program Files\mosquitto\cert\ca.crt
keyfile C:\Program Files\mosquitto\cert\server.key
certfile C:\Program Files\mosquitto\cert\server.crt

訂閱命令行

mosquitto_sub -h 192.167.41.17 -t home/garden/fountain --cafile "C:\ca.crt" --cert "C:\client.crt" --key "c:\client.key" -d -p 8883

此項目中使用的證書是自簽名的:創建 CA:

openssl genrsa -des3 -out ca.key 2048

openssl req -new -x509 -days 1826 -key ca.key -out ca.crt

創建服務器:

openssl genrsa -out server.key 2048

openssl req -new -out server.csr -key server.key

openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 360

創建客戶端:

openssl genrsa -out client.key 2048

openssl req -new -out client.csr -key client.key

openssl x509 -req -in client.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out client.crt -days 360

要創建 pfx:

openssl pkcs12 -export -out certbag.pfx -inkey client.key -in client.crt -in

MQTTfx 設置

mosquitto_pubmosquitto_sub將只接受所有證書/密鑰的 PEM 編碼文件。 這些工具無法直接使用 PKCS12(.p12 或 .pfx)證書存儲/捆綁包。

如果版本 v1.7(如果是 v5.0,則為最新版本)也不支持傳遞 PKCS12 捆綁包,那么沒有什么神奇的方法可以做到,您唯一的選擇是使用 openssl 將其分解為各個部分(證書、密鑰和 ca 證書)以 PEM 格式編碼並傳遞這些文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM