-
サーバ構築のデージーネットTOP
-
OSS情報
-
OSS比較
-
IoTプラットフォームで使われるOSS「IoTネットワークインフラ」
IoTプラットフォームで使われるOSS「IoTネットワークインフラ」
IoTネットワークインフラは、IoTプラットフォームの中のインターネットを構成するルータ、セキュリティデバイスなどのインフラのことを指します。IoTエンドポイントからの通信と不正な通信と区別するため、IoTエンドポイントに対してアクセス制御を掛けたり、認証の仕組みを導入します。このような接続認証には、オープンソースソフトウェアが活用されています。このページでは、IoTネットワークインフラで利用できるOSSと、それぞれのOSSの特徴について解説します。
IoTネットワークインフラ
IoTネットワークインフラとは、インターネットを構成するルータ、セキュリティデバイスなどのインフラのことを指します。一般的なインターネットの接続設備と大きく変わりません。ただし、多数のセンサーなど、大規模なIoTエンドポイントからリアルタイムにデータを集める際は、高速なIoTネットワークインフラが必要になる場合があります。
「IoTプラットフォーム用HTTPプロキシ構築事例」へ
IoTネットワークインフラでは、セキュリティ的なリスクも指摘されています。外部からの不正アクセスに対する対策が不十分だと、IoTエンドポイントを勝手に操作されることで大きな被害が出ることが懸念されています。また、危険な場所にあるデバイスなど、IoTエンドポイントの種類によっては、人の命に関わる事故につながる危険性もあります。さらに、個人情報保護にも配慮する必要があります。
IoTネットワークインフラで使えるソフトウェア
IoTネットワークインフラでは、IoTエンドポイントから大量のデータを集約するため、サービスの可用性を高める安定した処理能力とシステムの拡張性が求められます。また、IoTプラットフォーム全体をセキュアに保つための高いセキュリティが非常に重要です。IoTエンドポイントからの通信と不正な通信と区別するため、通信経路の暗号化、IoTエンドポイントに対するアクセス制御や認証の仕組みの導入が必須です。よく使われる認証方式は、ユーザ名・パスワードによる認証です。より高いセキュリティが必要な場合には、IoTエンドポイントにクライアント証明書を持たせて、証明書認証を行う場合もあります。このような場合には、クライアント証明書を発行する認証局も合わせて構築する必要があります。以下では、IoTネットワークインフラで使える、プロキシサーバや認証バックエンドのOSSを紹介します。
Nginx 〜信頼性の高いリバースプロキシ〜
Nginxとは、性能の高いWebサーバとして知られているオープンソースソフトウェアです。並列性が高く、最小のメモリ利用で動作する高性能なサーバソフトウェアです。そのため、IoTエンドポイントから届く大量のデータを処理するのに適しています。
Webサーバだけでなく、HTTP、HTTPS、SMTP、POP3、IMAPなどに対するリバースプロキシの機能も持っています。また、ロードバランサーとしても利用することができます。そのため、IoTデバイスからの通信のアクセス制御や認証を行った後、IoTデータ収集プラットフォームやIoTデータ解析プラットフォームを構成するサーバへの処理の振り分けなども行うことができます。
HAProxy 〜高パフォーマンスな負荷分散と認証〜
HAProxyは、高可用性、負荷分散を実現するためのオープンソースソフトウェアです。Nginxよりも知名度は劣りますが、RedHat Enterprise LinuxやCentOSでは標準パッケージとして提供されています。また、OpenStackなどでも採用されていて、高可用性や負荷分散を実現するソフトウェアとしては、非常に安定したソフトウェアです。HAProxyの特徴は、負荷分散における高いパフォーマンスです。Nginxに比べて、負荷分散の機能が非常に優れているため、IoTデバイスから収集したデータをIoTデータ収集プラットフォームやIoTデータ解析プラットフォームに振り分けるときに、高パフォーマンスの特徴が生かされます。また、ユーザ・パスワードによる認証や、証明書認証にも対応しています。
Squid 〜気軽に使える認証ソフトウェア〜
Squidは、古くから使われているプロキシサーバのソフトウェアです。IoTデバイスの認証やアクセス制御の用途で利用できます。非常に歴史のあるソフトウェアですので、安定性という点では優れいています。負荷分散の機能も備えていますので、データの振り分け処理に利用することもできます。
ただ、HAProxyやNginxに比べると、性能的にも機能的にも劣ります。それほどパフォーマンスが必要でない場合に手軽に利用できるソフトウェアです。
OpenLDAP 〜スタンダードな認証バックエンド〜
OpenLDAPは、LDAPサーバのデファクトスタンダードとも言えるオープンソースソフトウェアです。インターネットサービスプロバイダーなど、厳しい環境でも使われています。多数のIoTデバイスの認証を処理するためには、認証も高速に行うことが求められます。OpenLDAPは認証に特化したソフトウェアで、高速に認証を行うことができます。そのため、Nginx、HAProxy、Squidなどの認証バックエンドとして利用されます。
389 Directory Server 〜高性能な認証バックエンド〜
389 Directory Serverは、Red Hatが開発に参画しているLDAPサーバです。OpenLDAPよりもさらにスケーラビリティに優れていて、同時に大量の認証が必要な環境で使われます。OpenLDAPと同様に、Nginx、HAProxy、Squidなどの認証バックエンドとして利用されます。OpenLDAPでは処理能力不足な場合に、389 Directory Serverを選択します。
IoTプラットフォームで使われるOSS
- IoTインフラ
- ここでは、FreeRADIUS、OpenXPKIについて紹介します。
- IoTネットワークインフラ
- ここでは、Nginx、HAProxy、Squid、OpenLDAP、389 Directory Serverについて紹介します。
- IoTデータの可視化
- ここでは、Grafana、OpenSearch Dashboards、Kibanaについて紹介します。