如何使用rsa_public.pem与root.ca将mqtt-spy连接到mqtt.googleapis.com
mqtt-spy连接mqtt.googleapis.com正确配置参数
基础连接参数
- 服务端地址:
mqtt.googleapis.com - 连接端口:选择以下任意可用端口
8883(标准MQTT TLS端口,优先选用)443(适用于出站8883端口被防火墙限制的场景)
- 连接协议:标准MQTT 3.1.1
TLS证书配置
- 服务端根CA证书:加载你持有的
root.ca证书文件即可,不需要做额外的证书转换 - 注意:你提到的
rsa_public.pem不需要配置到mqtt-spy客户端,该公钥需要提前上传到Google Cloud IoT Core对应设备的凭据列表中,用于平台侧校验你生成的认证签名,客户端仅需持有和该公钥配对的RSA私钥生成认证密码即可。
认证配置
- 用户名:任意字符串即可,常规填写
unused,平台侧不会校验用户名字段 - 密码:使用和
rsa_public.pem配对的RSA私钥生成的RS256算法JWT,JWT需满足以下规则:- 签发者(iss)字段:填写你的Google Cloud项目ID
- 受众(aud)字段:填写你的Google Cloud项目ID
- 过期时间(exp)字段:最长不超过24小时
- 客户端ID:必须严格遵循以下格式,格式错误会直接导致连接被拒绝
projects/{你的Google Cloud项目ID}/locations/{设备所属区域}/registries/{设备所属注册表ID}/devices/{你的设备ID}
额外必选配置
- 强制开启TLS 1.2及以上版本支持,低版本TLS协议会被平台直接拒绝
- 首次调试建议开启
clean session参数,避免会话残留导致连接异常
内容的提问来源于stack exchange,提问作者TonyP
相关产品推荐
相关产品推荐

