Mqtt를 사용하여 Azure IoT 허브에 일부 데이터를 게시하려고합니다. SAS 토큰을 사용하여 일부 데이터를 성공적으로 게시했습니다.Azure IoT 허브 인증서
그러나 내 고객은 x509 자체 생성 & 자체 서명 인증서를 원합니다. Azure는 이것을 지원하지만 그에 관한 많은 정보를 제공하지 않습니다.
자체 생성 자체 서명 된 X-509 인증서 (https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-security#supported-x509-certificates)
. 장치 제조업체 또는 사내 구축 업체는 이러한 인증서를 생성 할 수 있으며 은 해당 개인 키 (및 인증서)를 장치에 저장합니다. 이 목적으로 OpenSSL 및 Windows SelfSignedCertificate 유틸리티와 같은 도구를 사용할 수 있습니다.주 만약 IoT 허브는 전체 X.509 인증서를 요구하거나 저장하지 않습니다 만 지문.
내가 한 것은 CA 인증서와 키입니다.
$openssl req -newkey rsa:2048 -x509 -nodes -sha256 -days 365 -extensions v3_ca -keyout ca.key -out ca.crt
는 요청을 체결 클라이언트 키와 서명 요청
$openssl genrsa -out client.key 2048
$openssl req -new -sha256 -out client.csr -key client.key
을 만든 내가 모뎀 클라이언트 키와 인증서를 업로드 한 인증서
$openssl x509 -req -sha256 -in client.csr -CA ca.crt -CAkey ca.key -CAcreateserial -CAserial ca.srl -out client.crt -days 365
를 만들었습니다. 그리고 클라이언트 인증서의 지문을 삽입했습니다.
모뎀이 성공적으로 연결될 수 있습니다. myhub.azure-devices.net/deviceId (port 8883)
그러나 새 데이터가 도착하면이를 디코딩 할 수 없습니다.
나는이 시점부터 다소 방해받습니다. 나는 MqttFx를 사용하려했지만 행운이 없었다.
누군가 나를 올바른 방향으로 밀어 넣을 수 있습니까?
해야 포트는 https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-mqtt-support에 따라, SSL에 대한 1883 대신 8883 일 – HydTechie