ルールリストに追加したトラフィック以外のすべてをブロックするように、Server 2008 R2のWindowsファイアウォールを構成しようとしています。
パブリック/プライベート/ドメインの3つのポリシーがあるようです。 NICとドメインポリシーが割り当てられているのは1つだけですが、それぞれに同じ設定変更を加えています。
ドメインポリシーのプロパティで、受信接続を[ブロック(デフォルト)]に設定しましたが、これでもICMPを通過できます。それを「すべての接続をブロックする」に変更し、すべてのインターフェイス上のすべてのプログラムに対して、3つのプロファイルすべてからのICMPを許可する受信ルールを作成しましたが、許可ルールが作成されていても、ファイアウォールによってICMPトラフィックがドロップされました。
これによると documentation 許可ルールはデフォルトルールよりも優先されます。デフォルトのルールを設定してすべてのトラフィックをブロックし、許可ルールで特定のトラフィックのみを許可したい。
2つのカスタム許可ルールを作成しました。
すべての接続をブロックするように設定された受信接続ポリシーと上記の許可ルールを有効にしても、リモートpingはブロックされます。
これを行うようにWindowsファイアウォールを構成するにはどうすればよいですか?
更新-間違ったGUIを使用していたことがわかりました(恥ずかしい)。管理ツールでGUIを使用する代わりに、グループポリシーエディター(たまたま同じに見える)のGUIを使用していました。ファイアウォールには、グループポリシーエディターでは確認できないルールが既に設定されていました。これらのルールは、私がそれを理解せずに有効になっていて、混乱を引き起こしました。私がやりたいことを行うには、ポリシーを「ブロック(デフォルト)」に設定する必要がありました(もちろん、適切なツールを使用)。既存のルール(グループポリシーエディターでは表示されなかったもの)をすべて削除した後、特定の許可ルールを作成することで、必要なトラフィックのみを許可することができました。
パブリック/プライベート/ドメインの3つのポリシーがあるようです。 NICとドメインポリシーが割り当てられているのは1つだけですが、それぞれに同じ設定変更を加えています。
余談ですが、NICがドメインネットワークプロファイルを使用している限り、パブリックおよびプライベートのファイアウォールポリシーに変更を加えても効果はありません。
このドキュメントによると、許可ルールはデフォルトルールよりも優先されるはずです。すべてのトラフィックをブロックし、許可ルールで特定のトラフィックのみを許可するようにデフォルトのルールを設定したいと思います。
あなたはこれを難しい方法でやっています。ドメインプロファイルのデフォルトポリシーは、デフォルトの入力拒否ポリシーとデフォルトの出力許可を実装します(つまり、受信接続がブロックされ、送信接続が許可されます)。これらのデフォルトを変更した場合は、 Windowsファイアウォールのプロパティ ダイアログ。
次に、ICMPトラフィックを有効にするには、次の2つの許可ルールを有効にします。
File and Printer Sharing (Echo Request - ICMPv4-In)
File and Printer Sharing (Echo Request - ICMPv6-In)
トラフィックに一致するルールが複数ある場合は、1つをブロックするのが優先されます。
許可ルールでOverride Block Rulesオプションを選択しない限り。
また、Block all connectionルールを使用している場合、Overrideオプションは機能しません。
申し訳ありませんが、ドキュメントを読み直しました。
一言で言えば、私があなたが達成しようとしていることは、Windowsファイアウォールでは不可能だと思います。
残念ながら、これはネットワークファイアウォールのようには機能しません。つまりルールを上から下に読み取り、最初に一致したものを使用します。
トラフィックに一致する許可とブロックの両方のルールがある場合、それはブロックされます。