使用你们的官方文档 进行证书签名认证,配置也是按照你们文档上面的来,mqttx也添加了证书,为什么还是认证失败。你们官方文档是否严谨?
刚试了一下,是可以的。请问能分享一下具体的报错么?
您好。可以执行”openssl x509 -noout -text -in server.crt“命令,贴一下完整输出吗?
我试了如下的命令,SSL是可以正常连接的。
- 创建自签名rootCA证书
#创建私钥,需要设置密码,至少四个字符
openssl genrsa -des3 -out rootCA.key 2048
#创建自签名证书,需要输入前面设置的密码,其他提示的信息,只需要设置Common Name, 可以设置为rootCA, 其他提示直接输入回车
openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 3650 -out rootCA.crt
- 创建server证书
#创建server私钥
openssl genrsa -out server.key 2048
#创建server证书签名请求,可以只输入Common Name,其他提示按回车
openssl req -new -key server.key -out server.csr
创建openssl.conf配置文件
cat >> openssl.conf <<EOF
[req]
req_extensions = v3_req
[v3_req]
subjectAltName = @alt_names
[alt_names]
IP.1 = 10.42.3.61 # <==根据您的主机名或ip地址,修改
EOF
#生成rootCA签名的server证书,需要输入前面设置的密码
openssl x509 -req -in server.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out server.crt -days 365 -extensions v3_req -extfile openssl.cnf
openssl x509 -noout -text -in server.crt
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
51:15:fa:bc:a9:54:45:7e:4a:6e:33:57:9b:9d:24:14:d9:48:61:17
Signature Algorithm: sha256WithRSAEncryption
Issuer: C = AU, ST = Some-State, O = Internet Widgits Pty Ltd, CN = rootCA
Validity
Not Before: Sep 18 08:04:30 2023 GMT
Not After : Sep 17 08:04:30 2024 GMT
Subject: C = AU, ST = Some-State, O = Internet Widgits Pty Ltd, CN = 10.42.3.61
…
X509v3 extensions:
X509v3 Subject Alternative Name:
IP Address:10.42.3.61
…
- 复制以上*.key和*.crt到etc/certs,然后重启emqx.