首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >蚊虫到mqtt经纪人tls问题。IP与证书的altname不匹配

蚊虫到mqtt经纪人tls问题。IP与证书的altname不匹配
EN

Stack Overflow用户
提问于 2022-08-29 07:37:27
回答 1查看 220关注 0票数 0

我已经向经纪人和客户提供了证书。该经纪人的平均价格为172.27.224.1。

当我试图与客户端连接时,会收到以下错误消息:

代码语言:javascript
运行
复制
Error [ERR_TLS_CERT_ALTNAME_INVALID]: Hostname/IP does not match certificate's altnames: IP: 172.27.224.1 is not in the cert's list:
    at new NodeError (node:internal/errors:371:5)
    at Object.checkServerIdentity (node:tls:297:12)
    at TLSSocket.onConnectSecure (node:_tls_wrap:1540:27)
    at TLSSocket.emit (node:events:390:28)
    at TLSSocket._finishInit (node:_tls_wrap:944:8)
    at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:725:12) {
  reason: "IP: 172.27.224.1 is not in the cert's list: ",
  host: '172.27.224.1',
  cert: {
    subject: [Object: null prototype] {
      C: 'AU',
      ST: 'Some-State',
      O: '',
      OU: '',
      CN: '172.27.224.1'
    },
    issuer: [Object: null prototype] {
      C: 'DE',
      ST: 'Some-State',
      O: '',
      OU: '',
      CN: '172.27.224.1'
    },
    [...]

这里有什么错误?ca.crt是自签署证书,为172.27.224.1发行,从172.27.224.1发行。client.crt是从172.27.224.1开始发布的,用于“用户名”。

这不管用吗?

用于生成证书的步骤:

openssl genrsa -des3 -out ca.key 2048

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

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

我使用客户端node.js v16.13和mqtt库

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-29 08:17:39

假设您正在使用OpenSSL创建CA证书,那么您可以这样做:

代码语言:javascript
运行
复制
openssl req -x509 -nodes -newkey rsa:2048 -days 3650 -sha256 \
  -keyout ca.key -out ca.crt -reqexts SAN -extensions SAN \
  -subj '/CN=Broker Cert' \
  -config <(cat /etc/pki/tls/openssl.cnf; printf "[SAN]\nsubjectAltName=IP:172.27.224.1")

这就假设您使用的是存储在openss.cnf上的/etc/pki/tls/openssl.cnf文件。

但是通常情况下,最好是创建一个CA证书,然后用它对服务器证书进行签名,因为这样可以使更改变得更容易,并且您不需要在需要更改某些内容时更新所有客户端。它还使颁发客户端证书更加容易。

请仍然使用正在执行SAN规则的编程语言和客户端库的详细信息更新问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73525517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档