新人IT担当者のためのネットワーク機器入門【第7回】
レイヤー4の代表的製品「ファイアウォール」基礎の基礎
ネットワークと関連機器に関する「今更聞けない」基礎知識をこっそりおさらいしようというこの連載。今回はレイヤー4で動作する代表的な機器「ファイアウォール」について説明します。
連載第6回の「即時性か信頼性か、レイヤー4(トランスポート層)のプロトコル『TCP』と『UDP』」では、レイヤー4の代表的なプロトコル「TCP」と「UDP」について説明しました。
レイヤー4で動作する代表的な機器として「ファイアウォール」があります。ファイアウォールは、IPアドレスとポート番号を使って通信を制御する機器です。あらかじめ設定したルールに従って「この通信は許可、この通信は拒否」というように通信を選別してシステムを守ります。このようなファイアウォールの持つ通信制御機能のことを「ステートフルインスペクション」といいます。ステートフルインスペクションは、通信の許可・拒否を定義する「フィルタリングルール」と通信を管理する「コネクションテーブル」を用いてセキュリティ強度を高めています。以下、それぞれどのように作用しあっているかを説明しましょう。
連載:新人IT担当者のためのネットワーク機器入門
フィルタリングルールで許可と拒否を定義する
フィルタリングルールは、どんな通信を許可し、どんな通信を拒否するかを定義している設定です。「ポリシー」や「ACL(Access Control List)」など、機器ベンダーによって呼び方はさまざまですが、基本的に全て同じものと考えてよいでしょう。
フィルタリングルールは、
- 送信元IPアドレス(ネットワーク、インタフェース)
- 宛先IPアドレス(ネットワーク、インタフェース)
- プロトコル
- 送信元ポート番号
- 宛先ポート番号
- 制御(アクション)
などの設定項目で構成されています。例えば、「192.168.1.0/24」というネットワークにいる社内端末からインターネットに対してWebに関する通信を許可したい場合、一般的に以下のような設定になります。
インターネットへのWebアクセスだからといって、単純にHTTP(TCPの80番)だけを許可しておけばいいというわけではありません。HTTPをSSL(Secure Socket Layer)で暗号化しているHTTPS(TCPの443番ポート)、URLをIPアドレスに変換(名前解決)するときに使用するDNS(UDPの53番ポート)も合わせて許可してあげる必要があります。
特定できない要素については「ANY」と設定します。例えば、宛先IPアドレスはクライアントがアクセスするWebサーバによって異なるため、特定しようがありません。そこでANYと設定します。また、送信元ポート番号もOSがランダムで選択するため特定しようがないので、宛先IPアドレスと同じようにANYと設定します。
ファイアウォールのポイントはコネクションテーブル
ステートフルインスペクションは、このフィルタリングルールを、コネクションの情報を基に動的に書き換えることによって、セキュリティ強度を高めています。ファイアウォールは、自身を経由するコネクションの情報を「コネクションテーブル」と呼ばれるメモリ内のテーブル(表)で管理しています。
コネクションテーブルは、
- 送信元IPアドレス
- 宛先IPアドレス
- プロトコル
- 送信元ポート番号
- 宛先ポート番号
- コネクションの状態
など、各種要素(列)からなる複数のコネクションエントリ(行)から構成されています。このコネクションテーブルがステートフルインスペクションの要であり、ファイアウォールを理解するための大切なポイントです。
ステートフルインスペクションの動作
ファイアウォールは、どのようにコネクションテーブルを利用し、どのようにフィルタリングルールを書き換えているのでしょうか。ここでは、図1のような環境で、クライアント(Webブラウザ)がHTTPでWebサーバにアクセスすることを想定して、一般的なステートフルインスペクションの動きを説明します。
ステップ1. フィルタリングルールと照合する
ファイアウォールはクライアント側にあるOutsideインタフェースでSYNパケット(接続を要求するパケット)を受け取ると、自身の持つフィルタリングルールと照合を行います。その結果、最初のフィルタリングルールに該当するので、通信を受け入れます。なお、許可されていないパケットを受け取った場合は、クライアントにコネクションの強制切断を促すRSTパケットを返すか、何もせずに破棄します。
ステップ2. 戻り通信用のルールを追加する
ファイアウォールは通信を許可したら、コネクションテーブルにコネクションエントリを作ります。また、それと同時にそのコネクションエントリに対応する戻り通信用の許可ルールを動的に追加します。戻り通信用の許可ルールは、コネクションエントリにあるパケットの送信元と宛先を反転したものです。フィルタリングルールを追加した後、WebサーバにSYNパケットを転送します。
ステップ3. 戻り通信用のルールを使ってSYN/ACKが返る
WebサーバはSYNパケットに対するSYN/ACKパケット(接続を許可するパケット)を作り、クライアントに返します。この通信は、本来であれば、フィルタリングルールによって拒否されている通信です。ただし、ステートフルインスペクションでは、ステップ2で戻り通信の許可ルールを追加しているので、許可します。
ステップ4. アプリケーションデータのやりとりが行われる
クライアントはSYN/ACKパケットに応答するACKパケットを作り、Webサーバに返します。ファイアウォールは、このACKパケットをもって、クライアント―Webサーバ間で3ウェイハンドシェイクが終了し、コネクションが確立したと判断します。この後、このコネクションでアプリケーションデータ、つまりHTTPデータのやりとりが始まります。
ステップ5. コネクションが使われているかどうか監視する
コネクションが確立した後、ファイアウォールは、そのコネクションエントリが使用されているかどうかをモニタリングします。その結果、一定時間使用されていないと判断した場合、そのエントリを強制的に削除し、それと同時にステップ2で作った戻り通信用の許可ルールも削除します。コネクションエントリを削除するまでの時間のことを「アイドルタイムアウト」といいます。アイドルタイムアウトは、機器やそのOSによってさまざまです。アプリケーションごとに設定されていたり、プロトコルごとに設定されていたりします。
ステップ6. コネクションが終了したらエントリを削除する
アプリケーションデータを送り終えたら、しっかりコネクションを閉じなければなりません。ファイアウォールはクライアントとWebサーバの間でやりとりされている「FIN/ACK」→「ACK」→「FIN/ACK」→「ACK」というパケットの流れを見て、コネクションエントリを削除します。また、それに合わせて戻り通信用のルールも削除します。
今回は、レイヤー4で動作する機器であるファイアウォールについて説明しました。ファイアウォールは、たくさんのセキュリティ機能を搭載した「UTM(Unified Threat Management、統合脅威管理)」や、アプリケーションレベルで通信制御を行う「次世代ファイアウォール」「WAF(Webアプリケーションファイアウォール)」など、今現在も進化を遂げている機器の1つです。
しかし、基本は「コネクションテーブル」と考えてまず間違いありません。コネクションテーブルを理解した上で、UTMや次世代ファイアウォールについて学習していくのが最も効率的でしょう。
次回は、さらに上のアプリケーションの階層であるレイヤー5~7の代表的な技術、HTTPについて説明します。
執筆者紹介
みやたひろし
大学と大学院で地球環境科学の分野を研究した後、某システムインテグレーターにシステムエンジニアとして入社。その後、ネットワーク機器ベンダーのコンサルタントに転身。設計から構築、検証に至るまで、ネットワークに関連する業務全般を行い、今日もどこかで自己研さんを積んでいる。CCIE(Cisco Certified Internetwork Expert)。F5 Certified Technology Specialists。著書に『インフラ/ネットワークエンジニアのためのネットワーク技術&設計入門』『サーバ負荷分散入門』(いずれもSBクリエイティブ)
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
2
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
3
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
4
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
5
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
6
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
7
「結局使わなくなる」Microsoft 365 Copilotを半年で定着 キリンの3施策
-
8
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
9
「中堅・中小企業のネットワーク・セキュリティ運用実態」に関するアンケート
-
10
情報漏えいはなぜ繰り返されるのか 今すぐ見直すべき「境界」
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー