PythonでMQTTSのpub/subしてみた

開発ブログがご無沙汰となっておりましたが、新型コロナウィルスに負けないように、イーツリーズとしてはリモートワーク体制で技術の仕込みを着々と行っております。

ところで、IoT関連ではMQTTが使われることが多いですね。MQTTは平文で通信されるので、セキュリティが欲しいところではMQTTSを使うことになります。

まずはMQTTを、ということで「pythonでMQTT送受信」を参考に動かしてみました。問題ないですね。

そして次にこれをSSL化します。SSLはOpenSSLとか入れなきゃいけないの?とか思いましたが、どうも標準でWindowsのSSLライブラリをPythonから使えるようです。環境はWindows10 Homeに、Python-3.8.1をインストールしています。

sample_sub.py, sample_pub.pyに、SSLのコンテキストを作って設定してあげるだけで行けました。

たとえば、sample_pub.pyのほうだと、import sslはしておくとして、

のように、MQTTのクライアントを生成した後に、tls_set_contextするだけですね。

見た目はかわらないのであれですが、subscribe側はちゃんと受信できています。

ちなみに、MQTTSのサーバはmosquitto-1.6.8を使っています。

Let’s IoT !

(船田)

シェアする

  • このエントリーをはてなブックマークに追加

フォローする