IP フィルター・ポリシーは、単独で、手動鍵管理による IP フィルター操作および IPSec 保護の機能を提供します。他の 2 つのポリシーと一緒に使用する場合も、動的鍵管理 (IKE) を使用した IPSec 保護を提供するために、このポリシーも必要です。フィルター操作はホストでのトラフィックを保護するために不可欠です。このため、IpFilterPolicy ステートメント・ブロックがないか、または空の IpFilterPolicy ステートメント・ブロックが入った IP セキュリティー・ポリシーはエラーと見なされ、このスタックが提供するデフォルト・ポリシーが有効な状態で残されます。
IpFilterPolicy ステートメント・ブロックは以下のものから成っています。
グローバル構成オプションの目的は、グローバル・ポリシー項目 (例えば、ロギングがアクティブかどうか、またはオンデマンド・セキュリティー・アソシエーション・ネゴシエーションを許可するかどうかなど) を制御することにあります。これらのグローバル・オプションは、ポリシーに含まれているすべての IP フィルター規則に適用されます。そして、各 IP フィルター規則には、データ・エンドポイント、トラフィック記述、およびアクションが含まれています。システムに入ってくるパケットまたはそこから出ていくパケットが、IP フィルター規則内のデータ・エンドポイントおよびトラフィック記述に一致している場合は、それに関連したアクションがとられます。そのアクションが ipsec アクションである場合は、追加のアクション・ステートメントをコーディングし、そのステートメントで IPSec セキュリティー・アソシエーションのパラメーターを定義します。
以下の IpFilterRule ステートメントのサンプルは、内部サーバーでの Web トラフィックを許可します。また、サンプル内の各行の説明を参照しています。
1 IpFilterRule InternalNetWeb
2 {
3 IpSourceAddr 9.1.1.1
4 IpDestAddrSet 9.1.1.0/24
5 IpService
6 {
7 SourcePortRange 80
8 DestinationPortRange 1024 65535
9 Protocol tcp
10 Direction bidirectional InboundConnect
11 Routing local
12 SecurityClass 0
13 }
14 IpGenericFilterActionRef permit-nolog
15 }
「bidirectional」の意味は、上記規則では、ローカル・ポート 80 のローカル・アドレス 9.1.1.1 から、一時ポート (つまり 1024 から 65535) を使用するサブネット 9.1.1.0/24 内の任意アドレスへのアウトバウンド・トラフィック、および、一時ポートを使用するサブネット 9.1.1.0/24 内の任意アドレスから、ローカル・ポート 80 のローカル・アドレス 9.1.1.1 へのインバウンド・トラフィックが許可されることを意味します。bidirectional キーワードが無指定の場合、2 つのフィルター規則 (アウトバウンド・トラフィック用に 1 つと、インバウンド・トラフィック用に 1 つ) を作成することが必要になります。
InboundConnect の場合は、この規則が、確立済みの接続上での双方向データに加えてインバウンド TCP 接続試行にも一致するが、アウトバウンド TCP 接続試行には一致しないことを意味します。
IpGenericFilterAction permit-nolog
{
IpFilterAction permit
IpFilterLogging no
}