다음을 통해 공유


MQTT 브로커와의 TLS(전송 계층 보안) 연결

MQTT 브로커와의 보안 연결을 설정하려면 포트 8883을 통해 MQTTS를 사용하거나 포트 443의 웹 소켓을 통해 MQTT를 사용할 수 있습니다. 보안 연결만 지원된다는 점에 유의해야 합니다. 다음 단계는 클라이언트를 인증하기 전에 보안 연결을 설정하는 것입니다.

mTLS(상호 전송 계층 보안) 연결이 설정되는 방법에 대한 높은 수준의 흐름

  1. 클라이언트는 MQTT 브로커를 사용하여 핸드셰이크를 시작합니다. 지원되는 TLS 버전, 암호화 그룹을 사용하여 hello 패킷을 보냅니다.
  2. 서비스는 클라이언트에 인증서를 제공합니다.
    • 서비스는 클라이언트 hello 패킷의 암호화에 따라 P-384 EC 인증서 또는 RSA 2048 인증서를 제공합니다.
    • 공용 인증 기관에서 서명한 서비스 인증서입니다.
  3. 클라이언트는 올바른 신뢰할 수 있는 서비스에 연결되어 있는지 유효성을 검사합니다.
  4. 그런 다음 클라이언트는 자체 인증서를 제시하여 신뢰성을 증명합니다.
    • 현재 인증서 기반 인증만 지원하므로 클라이언트는 인증서를 보내야 합니다.
  5. 서비스에서 인증서의 유효성을 검사한 후 TLS 핸드셰이크를 성공적으로 완료합니다.
  6. TLS 핸드셰이크를 완료하고 mTLS 연결을 설정한 후 클라이언트는 MQTT CONNECT 패킷을 서비스에 보냅니다.
  7. 서비스는 클라이언트를 인증하고 연결을 허용합니다.
    • mTLS를 설정하는 데 사용된 동일한 클라이언트 인증서는 서비스에 대한 클라이언트 연결을 인증하는 데 사용됩니다.

다음 단계