はじめに
FortiGate は、単なるルーターやファイアウォールではありません。 アンチウイルス、Web フィルタリング、IPS(侵入防御)など、複数のセキュリティ機能を 1 台のアプライアンスに統合した UTM(Unified Threat Management:統合脅威管理) 製品です。
多層的な防御機能を持つ FortiGate ですが、その仕組みを正しく理解していないと、「通信がなぜか止まる」「正常な通信を攻撃と誤検知してしまう」といったトラブルに対処できません。 本記事では、FortiGate の防御の核となる仕組みから、現場でよくあるトラブルシューティング(誤検知対策)までを体系的に解説します。
- ステートフルインスペクションの仕組み(パケットフィルタとの違い)
- ネットワーク層の防御(IPS, DDoS)と誤検知への対処法
- コンテンツ層の防御(アンチウイルス, Web フィルタ)
- 現代の必須機能「SSL インスペクション」の必要性
FortiGate の守りの要「ステートフルインスペクション」とは
FortiGate のファイアウォール機能の最大の特徴は、ステートフルインスペクション(状態検知型) という仕組みを採用している点です。これは、パケットの「中身」や「宛先」だけでなく、「通信の文脈(ステート)」 を理解して動的にポートを開閉する技術です。

従来の「パケットフィルタリング」との違い
ステートフルインスペクションを理解するために、昔ながらの「パケットフィルタリング(スタティック)」と比較してみます。
| 比較項目 | パケットフィルタリング | ステートフルインスペクション |
| 判断基準 | パケットの「住所」だけを見る (送信元 IP、宛先ポートなど) | 通信の「文脈」と「状態」を見る (セッションの開始〜終了) |
| 記憶能力 | なし(Stateless) 過去のパケットとの関連性を知らない | あり(Stateful) 誰と誰が通信中かを記憶する |
| 戻りの通信 | 手動で許可が必要 行きと帰りで 2 つのポリシーを書く必要がある | 自動的に許可される 「行きの返事」だと分かるため、ノーチェックで通す |
| 設定の手間 | 面倒(記述量が多い) | 楽(行きのポリシーだけで OK) |
「戻りの通信」を自動許可する仕組み(セッションテーブル)
FortiGate は、許可された通信が発生すると、メモリ上に 「セッションテーブル」 という管理簿を作成します。
- 行きの通信
-
- PC から Web サーバへのアクセスが発生
- ファイアウォールポリシーで「許可」されているか確認
- 許可されていれば、セッションテーブルに「PC A と サーバ B が通信中」と記録します。
- 戻りの通信
-
- Web サーバから PC への返事(Web ページのデータ)が戻ってくる。
- FortiGate はポリシーを見る前に、まず セッションテーブル を確認します。
- 「あ、これはさっき記録した通信の返事だな」と判断し、ノーチェックで(ポリシーなしで)通過させます。

この仕組みのおかげで、管理者は「行き(LAN → WAN)」のポリシーだけを書けばよく、設定の手間とミスを大幅に減らすことができるのです。
ネットワーク層の防御(IPS / DoSポリシー)
ファイアウォール(ポート制御)だけでは防ぎきれない、OS やミドルウェアの脆弱性を突く攻撃や、サービス停止を狙った大量アクセス攻撃を防ぐための機能です。
IDS / IPS(侵入検知・防御)
FortiGate の IPS(Intrusion Prevention System)は、通過するパケットの中身を検査し、既知の攻撃パターンと合致した場合に通信を遮断する機能です。
シグネチャマッチングの仕組み
FortiGate は、FortiGuard Labs から配信される膨大な 「シグネチャ(攻撃の指紋データ)」 を持っています。 パケットのデータ列がこのシグネチャと一致するかを照合し、「Apache Struts の脆弱性を突くコード」や「SQL インジェクション」などを特定します。
【重要】ARP スプーフィング等の「誤検知」について
IPS を運用する上で避けて通れないのが、正常な通信を攻撃と判断してしまう 「誤検知(フォールスポジティブ)」 です。 特に FortiGate でよく見られるのが、arp_spoofing というログが大量に出るケースです。
よくある誤検知のパターン
- L2 ループ検知パケット
-
スイッチングハブがループ検知のために特殊なフレームを投げた際、FortiGate が「ARP テーブルを不正に書き換えようとしている」と誤認することがあります。
- 脆弱性スキャン
-
社内の資産管理ツールやセキュリティ診断ツールが、ネットワークスキャンを行った際に攻撃とみなされることがあります。
- 冗長化プロトコル
-
VRRP や HSRP などのパケットが攻撃として検知される場合があります。


対策:IPS シグネチャの除外設定
「攻撃ではない」と確信できる場合、そのシグネチャ検知を無効化(除外)する必要があります。
- パケットキャプチャで確認
-
いきなり除外するのではなく、まずは
diagnose sniffer packetコマンド等でパケットをキャプチャし、送信元 MAC アドレスやパケットの中身を見て、本当に社内の正規機器(スイッチやスキャナ)からの通信かを確認します。 - シグネチャの除外
-
IPS センサーの設定(GUI)で、該当するシグネチャ(例:
ARP.Spoofing)を右クリックし、「除外(Exempt)」 設定を追加します。「特定の送信元 IP からの通信だけはこのシグネチャを無視する」といった細かい制御が可能です。
DoS / DDoS 攻撃対策
DoS(Denial of Service)攻撃は、サーバに対して処理しきれないほどの大量のリクエストを送りつけ、サービスをダウンさせる攻撃です。
FortiGate には、通常のファイアウォールポリシーとは別に 「DoS ポリシー(IPv4 DoS Policy)」 という専用の防御設定が存在します。
- SYN フラッド攻撃
-
接続開始の合図(SYN パケット)だけを大量に送りつけ、サーバの接続待ちリソースを枯渇させる攻撃です。
- 防御の仕組み
-
「1 秒間に ○○ 回以上の SYN パケットが来たら遮断する」といった 閾値(スレッショルド) を設定し、異常なトラフィックのみを機械的にドロップさせます。=アノマリー検知
コンテンツ層の防御(Web・メール・アプリ)
ステートフルインスペクションや IPS が「パケットの動き」を監視するのに対し、コンテンツ層の防御機能は、通信の中身である「ファイル」や「アプリケーションの振る舞い」を直接検査します。
アンチウィルス & サンドボックス
マルウェア(ウイルス、ランサムウェアなど)から端末を守るための、2 段構えの防御機能です。
- アンチウィルス(既知の脅威)
-
- 従来の「パターンマッチング」方式です。FortiGate は、既知のウイルスの特徴(指紋のようなもの)が登録された巨大なデータベース(シグネチャ)を持っています。通過するファイルをこれと照合し、合致したら「黒」と判断してブロックします。



高速ですが、新種(ゼロデイ)のマルウェアは検知できません。
- サンドボックス(未知の脅威)
-
- シグネチャに該当しない怪しいファイルを、FortiGate の外部にある隔離された仮想環境(サンドボックス)に転送します。そこで実際にファイルを実行させ、「勝手にファイルを暗号化し始めた」「外部の C&C サーバと通信しようとした」といった 「振る舞い」 を観察して、有害かどうかを判定します。



未知の脅威も検知できますが、解析に多少の時間がかかります(※FortiSandbox などのオプションや連携が必要です)
Web フィルタリング
社員が業務に関係のないサイトや、危険なサイトへアクセスするのを防ぐ機能です。URL そのものではなく、サイトの「中身(カテゴリ)」で判断するのが特徴です。
カテゴリブロックの仕組み
FortiGate は、世界中の数億〜数十億の URL をカテゴリ分けしたデータベース(FortiGuard Labs が提供)を参照します。
例えば、社員が http://example-casino.com にアクセスしようとすると、FortiGate は瞬時にデータベースを確認します。 「この URL は【ギャンブル】カテゴリだな。社のポリシーで【ギャンブル】は禁止されているからブロックしよう」という判断をリアルタイムで行い、アクセス禁止画面を表示させます。
主なブロック対象: アダルト、ギャンブル、違法薬物、マルウェア配布サイト、フィッシング詐欺サイトなど。
アプリケーションコントロール
従来のファイアウォールでは止められないアプリケーションの使用を制限する機能です。
ポート番号では止められない理由
昔のアプリは「Web は ポート 80」「メールは ポート 25」と決まっていました。しかし、現代のアプリケーション(SNS、クラウドストレージ、P2P ソフトなど)の多くは、Web と同じ「ポート 80/443」を使ってファイアウォールをすり抜けたり、使うポートを動的に変えたりします。





FortiGate は、ポート番号ではなく、通信パケットの中身(ヘッダーやペイロードの構造)を分析し、「これは 〇〇(例:Facebook) の通信だ」とアプリを特定します。 これにより、「業務時間中の SNS(Facebook, X)利用禁止」や「情報漏洩のリスクがある匿名化ツール(Tor)の遮断」といった、きめ細やかな制御が可能になります。
これがないと意味がない?「SSL インスペクション」の重要性
ここまで、IPS やアンチウィルス、Web フィルタリングといった強力な防御機能を紹介してきました。 しかし、最後に非常に重要な点があります。



もし、FortiGate で 「SSL インスペクション(Deep Inspection)」 を有効にしていない場合、これらの機能のほとんどは、現代のインターネット環境では「機能していない」のと同じ状態かもしれません。
現代のトラフィックは 9 割が暗号化(HTTPS)
Google の透明性レポートなどによると、現在ウェブ上を行き交うトラフィックの 90% 以上は HTTPS で暗号化されています。 これはプライバシー保護の観点では素晴らしいことですが、セキュリティ機器にとっては「中身が見えない頑丈なトンネル」が増えたことを意味します。
SSL インスペクション無効 = 目隠し状態
FortiGate といえども、暗号化された通信の中身をそのまま見ることはできません。 SSL インスペクションが無効の状態では、FortiGate は「暗号化されたウイルス」や「暗号化された不正な通信」を、中身が分からないまま「素通し」してしまいます。
どんなに高価な UTM ライセンスを購入していても、中身が見えなければ検査のしようがないのです。
導入のハードルと解決策
「それならすぐに有効にすればいい」と思われますが、SSL インスペクションを有効にすると、PC のブラウザで 「この接続はプライベートではありません」というセキュリティ警告(証明書エラー) が表示されてしまうという壁があります。
これを回避し、正しく通信の中身を検査するためには、PC 側に「FortiGate の証明書」をインストールするなどの適切な設定が必要です。詳しい設定手順については、以下の記事で解説しています。


まとめ
本記事では、FortiGate の UTM 機能の仕組みと、運用上のポイントについて解説しました。
- ステートフルインスペクション: 通信の「文脈」を理解し、戻りの通信を自動許可する賢いファイアウォール
- IPS(侵入防御): 脆弱性攻撃を防ぐが、ARP スプーフィングなどの「誤検知」にはチューニングが必要
- コンテンツ防御: アンチウィルスや Web フィルタで、ファイルやサイトの中身を検査
- SSL インスペクション: これらを機能させるための「透視メガネ」。現代の必須機能
以上、最後までお読みいただきありがとうございました。

