1

Mosquitto ブローカー ベースの POC を開発しています。この POC では、C、Python、phpMQTT の 3 つの異なる MQTT クライアントが使用されており、これらのクライアント間でメッセージを渡す必要があります。しかし、phpMQTT クライアントは SSL/TLS を実装していないため、ソリューション全体で SSL を有効にすることが制限されています。

私の C & Python クライアントが安全なポート、つまり 8883 (TLS オプションが有効になっている) で Broker に接続され、ポート 1883 (TLS オプションなし) で私の phpMQTT クライアントが接続されている場合、これら 3 つのクライアント間で通信する方法はありますか?

4

2 に答える 2

1

Mosquitto では、必要な数のポートでリッスンできます。各リスナーで TLS をサポートするかどうかを決定できます。たとえば、暗号化されていない接続にはポート 1883、通常の証明書ベースの TLS にはポート 8883、クライアントが有効な証明書を渡す必要がある証明書ベースの TLS にはポート 8884、TLS-PSK ベースの暗号化にはポート 8885 を使用できます。

使用中の暗号化は別として、ブローカーに接続されたクライアントは通常とまったく同じように対話します。

于 2013-10-24T16:45:41.240 に答える
0

mosquitto が 2 つの異なるポートで起動できるかどうかはわかりません。いわゆる「ハイブリッド モード」 ( http://www.hivemq.com/docs/hivemq/1.4.1/#hybrid-mode-chapter ) をサポートする HiveMQ でこれを行うことができます。このハイブリッド モードでは接続できます。どのポートでも TLS を使用せず (1883 など)、別のポートでは TLS を使用 (8883 など) します。

phpMQTT を使用している理由はわかりませんが、websockets を使用できますか? HiveMQ はすぐに使用できる安全な WebSocket をサポートしているため、これを試してみることができます。これを行う方法に関するブログ記事は、http ://www.hivemq.com/build-javascript-mqtt-web-application/ から入手できます。

免責事項: 私は HiveMQ の開発者の 1 人です。

于 2013-10-24T15:25:12.580 に答える