홈 네트워크 외부에서 MQTT 브로커에 액세스 할 수 있기를 원하지만 방화벽에서 포트를 여는 것을 꺼려합니다. 그리고 내 집 IP를 사용하고 싶지 않습니다.
집에 암호화되지 않은 오픈 브로커를 두는 것이 매우 편리하지만 노출하려고하면 작동하지 않습니다. 다른 옵션이 있습니까?
홈 네트워크 외부에서 MQTT 브로커에 액세스 할 수 있기를 원하지만 방화벽에서 포트를 여는 것을 꺼려합니다. 그리고 내 집 IP를 사용하고 싶지 않습니다.
집에 암호화되지 않은 오픈 브로커를 두는 것이 매우 편리하지만 노출하려고하면 작동하지 않습니다. 다른 옵션이 있습니까?
답변:
포트를 전달하지 않으려면 기본적으로 3 가지 옵션이 있습니다.
그러나 포트를 올바르게 구성된 (클라우드 브로커와 거의 같은) 포트로 전달하는 것은 실제로 위험하지 않습니다.
브로커는 서버이므로 클라이언트가 연결하려면 하나 이상의 포트를 열어야합니다.
따라서 문제는 인터넷에 서비스를 노출하는 특별한 경우가됩니다.
이는 DMZ를 통해 프록시 또는 기본 서비스보다 엄격한 인증을 시행하는 다른 방법을 통해 수행되었습니다. 프록시가 클라우드에 있으면 DMZ가 클라우드로 확장됩니다.
가장 간단한 방법은 브로커를 강화하고 (익명 클라이언트 사용 안함) 방화벽을 통해 브로커에 연결할 수있는 사람을 제한하는 것입니다 (사전 알고있는 경우 특정 클라이언트 IP 주소 만 허용).
@hardillb는 좋은 대답을했지만 "실제"터치를 추가하는 몇 가지 세부 사항을 추가하려고합니다.
공개 중개인에 연결
호스트 : broker.hivemq.com
포트 : 1883
웹 소켓 포트 : 8000
가장 적합한 클라이언트를 선택하여 공용 MQTT 브로커와의 내부 브로커 상호 연결에 사용하십시오. 예를 들어 C 클라이언트는 Paho MQTT 일 수 있습니다 . 클라이언트는 SSL / TLS를 지원하므로 보안 수준이 높습니다.
외부 장치에 Paho MQTT 임베디드 를 선택할 수 있습니다.
HiveMQ에는 종량제 라이센스 정책이 있으므로 신중하게 고려할 수 있습니다. 어쨌든 이 페이지 에서 사용 가능한 클라우드 및 사용 가능한 MQTT 브로커 목록을 확인할 수 있습니다.