Skip to content

セキュリティガイド

セキュリティはMQTTベースのアプリケーションにおいて非常に重要な要素であり、本ガイドはEMQXのデプロイにおいて堅牢なセキュリティ対策を理解し実装するための支援を目的としています。本章ではアクセス制御、認可、そしてTransport Layer Security(TLS)を用いたネットワークセキュリティなど、さまざまなセキュリティ関連のトピックを解説します。

  • セキュリティチェックリスト

    本番環境向けのチェックリストを用いて、リスナーの公開範囲、TLS、認証、認可、シークレットの取り扱い、監視体制を展開前に確認できます。

  • ネットワーキングとTLS

    EMQX がエンドツーエンドの暗号化通信をどのようにサポートしているかを説明し、SSL/TLS 接続の有効化や SSL/TLS 証明書の取得方法について解説します。

  • 認証

    認証はクライアントの身元を検証するプロセスであり、多くのアプリケーションにおいて不可欠で、違法なクライアント接続からサービスを保護するのに役立ちます。EMQXは以下の複数の認証方式をサポートし、クライアントの保護を強化しています。

    • X.509 証明書認証
    • ユーザー名/パスワード認証
    • JWT 認証
    • MQTT 5.0 の拡張認証
    • PSK 認証

    本節ではこれらの認証方式の仕組みとEMQXでの設定方法を紹介します。

  • 認可

    EMQXにおける認可とは、MQTTクライアントのパブリッシュ/サブスクライブ操作に対する権限管理を指します。本章では組み込みデータベースやACLファイルの利用方法、またMySQL、PostgreSQL、MongoDB、Redisとの連携による認可ルールの設定方法を解説します。

  • 禁止クライアント

    EMQXはブラックリスト/禁止機能を提供しています。システム管理者はダッシュボードやHTTP APIを通じて、クライアントID、ユーザー名、IPアドレスに基づき特定のクライアントのアクセスをブロックできます。

  • フラッピング検出

    EMQX は頻繁にログインを繰り返すクライアントを自動的に禁止し、他のクライアントに影響を与える可能性のあるサーバーリソースの消費を防止します。