ファイアウォールポリシーとは、ネットワークやシステム間の通信について、「どこから」「どこへ」「どの通信を」「どの条件で」「許可または拒否するか」を定義したルールの集合である。
単なる通信遮断機能ではなく、業務要件・セキュリティ方針・運用ルールを具体的な通信制御に落とし込んだ設計情報という位置づけになる。
一般的なポリシーは、次の要素の組み合わせで定義される。
これらを組み合わせることで、ネットワーク内外の通信ルールを明示的に管理する。
設計の基本は、「原則としてすべての通信を拒否し、業務上必要なもののみを許可する」という考え方である。
この原則が守られていないポリシーは、セキュリティ事故の温床になりやすい。
許可する通信は、送信元・宛先・ポート・プロトコルを可能な限り限定する。
例
「広く許可して後で制限する」ではなく、「必要最小限から始める」ことが重要である。
※実際には、製品によって異常なフラグや簡易検査を行う場合もあるため、「一切中身を見ない」と断定するのは不正確である。
なお、UDPなど状態が曖昧な通信では、タイムアウトや疑似状態管理によって制御される点に注意が必要である。
ここで重要なのは、L7ファイアウォールとWAF(Web Application Firewall)は目的が異なるという点である。
近年は機能が統合されがちだが、概念としては区別して理解する必要がある。
多くのファイアウォールでは、ルールは上から順に評価され、最初に一致したものが適用される。
ただし、これは以下の理由により製品依存・構成依存である。
したがって、「必ず上から順」と断定せず、対象製品の仕様を前提に設計・検証することが必須である。
実運用では、NAT(SNAT / DNAT)とポリシーの関係を無視できない。
この違いを誤ると、
といった事故につながる。
NAT処理のタイミングとポリシーマッチングの関係は必ず確認する必要がある。
送信元:ANY
宛先 :ANY
サービス:ANY
許可
恒久的に存在するこのようなルールは、極めて高リスクな状態である。
ただし、トラブル対応や移行期間中に一時的に設定されるケースが存在すること自体は否定できない。
その場合でも、
を必ずセットで管理しなければならない。
ファイアウォールポリシーは「作って終わり」ではない。
これらが揃って初めて、ポリシーは管理されたセキュリティ設定になる。
クラウドでは、ファイアウォール機能が複数の層に分かれている。
これらはオンプレミスのファイアウォールと同じ感覚で扱うと誤解が生じやすいため、どの層で、どの責務を持たせるかを明確にする必要がある。
また近年は、IPベース制御に加えてID(誰が)・役割(何として)・アプリ(何を)を組み合わせた多層防御が主流になっている。
以上、ファイアウォールポリシーについてでした。
最後までお読みいただき、ありがとうございました。