2026年9月4日

2026年9月4日

HIDS(ホスト型IDS)とNIDS(ネットワーク型IDS)の違いと選び方

HIDS はサーバーの中で「ファイル・ログ・プロセスに何が起きたか」を見張り、NIDS はネットワーク上で「どんな通信が流れたか」を見張る侵入検知の仕組みです。見ている場所が違うため、見つけられる攻撃と見落とす攻撃も異なります。この記事では両者の違いを整理し、代表的なソフトウェア、WordPress を載せた VPS 1台のような小さな環境で何から始めるかまでを説明します。

IDS とは何か、IPS との違い

IDS(Intrusion Detection System、侵入検知システム)は、不正アクセスやその兆候を見つけて知らせる仕組みです。基本は「検知して通知する」までで、通信を止めることはしません。これに対して IPS(Intrusion Prevention System、侵入防止システム)は、通信経路の途中に入って、検知した通信をその場で遮断します。

同じソフトウェアが設定次第で IDS にも IPS にもなることがあり、たとえば Suricata は監視だけのモードと、通信を通過させながら遮断するインラインのモードを持っています。遮断は誤検知があったときに正常な通信まで止めてしまうため、最初は検知のみで運用し、ルールの精度を見てから遮断を検討するのが一般的です。

HIDS(ホスト型IDS)の特徴

HIDS は監視したいサーバー自体にエージェントやツールを入れて動かします。主に次のようなものを見ます。

  • ファイルの改ざん:システムのバイナリ、設定ファイル、WordPress のコアファイルなどのハッシュ値を記録し、変化を検知します(ファイル整合性監視、FIM)。
  • ログ:認証ログ、Web サーバーのログなどから、ログイン失敗の連続や不審な操作を見つけます。
  • プロセスや設定の変化:見覚えのないプロセス、新しく増えたユーザー、権限の変更などです。

強みは、サーバーの中で実際に何が起きたかが分かることです。通信が HTTPS で暗号化されていても、サーバー側では復号されたあとの結果(ログやファイルの変化)を見られます。WordPress のファイルに不審な PHP が置かれた、wp-config.php が書き換えられた、といった事象は HIDS が得意とする領域です。

弱みは、監視対象のサーバーそれぞれに導入と管理が必要なこと、そしてサーバーが乗っ取られると HIDS 自体やそのログが改ざんされうることです。後者への対策として、検知結果は別のサーバーやログ収集基盤に送って保管します。

代表的なソフトウェアには次のものがあります。

  • Wazuh:OSSEC から派生したオープンソースの基盤で、エージェントがファイル整合性監視・ログ解析・脆弱性の検出などを行い、マネージャーに集約します。
  • OSSEC:ログ解析とファイル整合性監視を中心とした老舗の HIDS です。
  • AIDE / Tripwire:ファイル整合性監視に特化したツールです。基準となるデータベースを作り、定期的に差分を調べます。
  • auditd:Linux カーネルの監査機能で、特定ファイルへのアクセスやコマンド実行を記録できます。単体では検知ルールが少ないため、他のツールと組み合わせて使うことが多いです。

NIDS(ネットワーク型IDS)の特徴

NIDS はネットワークを流れるパケットを観測し、既知の攻撃パターン(シグネチャ)や不自然な通信の振る舞いを検知します。ネットワークの境界や、スイッチのミラーポート・TAP からコピーした通信を受けて動かすのが典型的な構成です。

強みは、1か所で複数のサーバーの通信をまとめて見られること、そして監視対象のサーバーに何も入れなくてよいことです。ポートスキャン、既知の脆弱性を狙ったリクエスト、マルウェアの外部通信(C2 通信)などを、ネットワーク全体の視点で捉えられます。

弱みは、暗号化された通信の中身は見えないことです。HTTPS の通信では、宛先や通信量、TLS のハンドシェイクの情報などは見えても、リクエストの本文までは分かりません。また、トラフィックが多いと処理性能が必要になり、誤検知の調整にも手間がかかります。

代表的なソフトウェアには次のものがあります。

  • Suricata:マルチスレッドで動くオープンソースの IDS/IPS です。suricata-update で ET Open などのルールセットを取得・更新できます。
  • Snort:シグネチャ型 NIDS の代表格で、現在は Snort 3 が中心です。
  • Zeek:シグネチャで警告を出すというより、通信の記録(接続・DNS・HTTP・TLS などのログ)を詳しく残すネットワーク監視ツールです。調査や振る舞いの分析に向きます。

違いを一覧で比べる

観点 HIDS(ホスト型) NIDS(ネットワーク型)
監視する場所 各サーバーの内部 ネットワーク上の通信
得意な検知 ファイル改ざん、ログ上の不審な操作、権限変更 スキャン、既知の攻撃通信、外部への不審な通信
暗号化通信 復号後の結果(ログ・ファイル)で判断できる 中身は見えず、メタ情報が中心
導入の手間 サーバーごとに導入・管理が必要 観測点を作れば対象サーバーには入れなくてよい
侵害時の弱さ ホストが乗っ取られると改ざんされうる ホスト内部だけで完結する活動は見えない
負荷 各サーバーの CPU・ディスクを少し使う 観測点の機器に通信量相応の性能が必要

両者は代わりになるものではなく、補い合う関係です。NIDS で外からの攻撃の試みを捉え、HIDS でサーバーの中で実際に変化が起きたかを確かめる、という組み合わせが基本の考え方になります。

小さな環境では何から始めるか

WordPress を載せた VPS が1〜数台という環境では、NIDS の前提になる「ネットワークの観測点」を作るのが難しいことが多くあります。VPS ではミラーポートを使えないのが普通で、クラウドのトラフィックミラーリング機能(AWS の VPC Traffic Mirroring など)も、対応するインスタンスや費用面の条件があります。

そのため、次の順番で始めるのが現実的です。

  1. 基本の防御を先に固める:OS とプラグインの更新、SSH の公開鍵認証、不要なポートを閉じるファイアウォール、fail2ban による試行のブロック。IDS は防御の代わりにはなりません。
  2. ファイル整合性監視を入れる:AIDE などで、システムファイルと WordPress のコアファイルの変化を毎日チェックします。WordPress ではアップロードディレクトリや更新のたびに変わるファイルが多いため、監視対象と除外対象を分けて誤検知を減らします。
  3. ログの監視を加える:Wazuh のエージェントなどで認証ログや Web サーバーのログを集め、通知を受けられるようにします。
  4. 必要になったら NIDS:サーバーが増えて自前のネットワーク(VPC など)を管理するようになったら、境界やミラーした通信に Suricata などを置くことを検討します。

AIDE の場合、最初に基準データベースを作り、以後は差分を確認する流れです(コマンドや設定ファイルの場所はディストリビューションによって異なります)。

# Debian/Ubuntu の例:基準データベースの作成(初回、時間がかかります)
sudo aideinit

# 差分のチェック(cron などで定期実行し、結果をメールや通知に送る)
sudo aide --config /etc/aide/aide.conf --check

WordPress や OS を更新したあとは正当な変更が大量に出るため、更新作業の直後に差分を確認して基準データベースを更新する、という運用の手順をあらかじめ決めておきます。

運用でつまずきやすい点

IDS は入れただけでは役に立たず、運用で差が出ます。

  • 誤検知の多さ:初期設定のままでは通知が多すぎて見なくなりがちです。最初の数週間は通知を見ながら、正当な動作の除外ルールを整えます。
  • ルールとソフトウェアの更新:シグネチャ型の検知は、ルールが古いと新しい攻撃を見逃します。ルールの自動更新を設定し、更新が止まっていないかも監視します。
  • 通知の受け手:誰がいつ確認し、検知したら何をするかを決めておきます。検知後の初動(隔離、ログの保全、パスワードや鍵の変更)を手順にしておくと慌てずに済みます。
  • 検知できるのは一部:どの IDS も攻撃のすべてを見つけられるわけではありません(2026年10月現在の主要なツールでも同じです)。バックアップと復旧手順は IDS とは別に用意しておきます。

まとめ

  • HIDS はサーバー内部(ファイル・ログ・プロセス)を、NIDS はネットワーク上の通信を監視します。
  • HIDS は暗号化された通信の結果も見られる一方、各サーバーへの導入が必要で、侵害されると改ざんされえます。NIDS は1か所でまとめて見られる一方、暗号化通信の中身は見えません。
  • 両者は補い合う関係で、小さな環境では基本の防御、ファイル整合性監視、ログ監視の順に始め、ネットワークを管理するようになったら NIDS を検討します。
  • 誤検知の調整、ルールの更新、通知後の対応手順まで含めて運用を設計します。

お気軽にご相談ください

お見積りへ お問い合わせへ
▲