Windows10でFirewallを確認
今更ながら、Windows Defenderファイアウォールの機能(一部だが)を確認してみた。
何を、どうやって、、
特定ポートがブロック(または許可)状況の動作を知るため、
- msys2上でのnc(netcat)
- Wireshark
- ブラウザなど
を使って、Windows Defenderファイアウォールの動作を確認。
登録
nc実行(新規プログラム登録)
msys2上でncを実行すると

と表示される。ここで「キャンセル」をクリックすると、ファイアウォール一覧・受信の規則では「ブロック」として登録される。

「アクセスを許可する」をクリックすれば、「許可」として登録される。

初期状態では、ncの全ポートに対して、許可またはブロックとなる。特定ポートのみに適用するには、プロパティなどからポート番号を指定する。

ちなみに、右クリックなどで規則は削除できる。

個別登録
新しい規則をクリックして登録する。

ここではポートの規則を選択。




登録

検証
受信
ncのTCP受信をブロック

ncで特定ポートをListenする。リソースモニタで、ファイアウォールの状態が不許可となっていることがわかる。

このとき、別マシンから、ncコマンドでアクセス(echo test | nc 192.168.250.2 8756)したときのWiresharkデータは下記のとおり。

TCP SYNに対する応答(SYN ACK)が存在しない。ちなみに、ポートをListenしていない時のWiresharkデータも同じである。
ncのTCP受信を許可
同じように、nc特定ポートをリッスンする。

このとき、別マシンから、ncコマンドでアクセスは、当然成功する。Wiresharkデータは下記のとおり。

送信
ポート番号9804の送信をブロックする。

このとき、ncコマンドで、9804ポート番号を指定してアクセスしようとすると、コアをはくようだ。また、この時のWiresharkデータは存在しない。

次にポート番号80の送信をブロックする。

ブラウザでは下記表示となる。

EOF