간단한 질문이 있습니다. 간단한 대답이 있습니다. .pem
형식의 인증 기관을 사용하여 브로커에 연결하고 게시/가입 할 수 있습니다. 예를 들어, 다음 명령은MQTT 모스 킷토 SSL/TLS는 CA.der와 연결할 수 없지만 CA.pem과 연결할 수 있습니다.
mosquitto_pub --cafile CA.pem -h www.example.com -p 8883 -t test -u "usr" -p "pw"
입니다. 내가
openssl x509 -in CA.pem -out CA.der -outform DER
과 --cafile
등 CA.der
을 사용을 사용하여 CA.der
에 CA.pem
를 변환 할 때, 오류가 발생합니다 :
Unable to connect (A TLS error occurred.).
난 변환 내가 CA2.pem
이 openssl x509
를 사용하여 다시 CA.der
변환 때문에 경우 올바른 생각 나는 성공적으로 연결할 수있다. 내 생각 엔 mosquitto.conf
파일에 *.der
또는 이와 유사한 파일을 설정해야하지만 설명서 또는 온라인 어디서나이 문제를 해결할 수있는 파일은 찾을 수 없습니다. .der
형식을 사용해야합니다. TI CC3200 dev 보드에 MQTT 클라이언트를 설정하고 있기 때문에 TI의 API에는 .der
형식의 모든 인증서가 필요합니다.
가 나는 CertBot를 통해 내 도메인에 대한 CA를 얻고, 인증서 체인은 다음과 같습니다
필요한 경우 몇 가지 추가 정보 :
depth=2 O = Digital Signature Trust Co., CN = DST Root CA X3
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
verify return:1
depth=0 CN = <www.example.com>
verify return:1
mosquitto.conf
allow_anonymous false
password_file /etc/mosquitto/passwd
listener 1883 localhost
listener 8883
certfile /etc/letsencrypt/live/<www.example.com>/cert.pem
cafile /etc/letsencrypt/live/<www.example.com>/chain.pem
keyfile /etc/letsencrypt/live/<www.example.com>/privkey.pem