[登録されているタグ]

[記事公開日]2025/12/21

PowerShellでファイアウォール規則を確認する|Get-NetFirewallRuleの使い方

📝 はじめに

ネットワークやアプリケーションのトラブル対応をしていると、
「通信できない原因がファイアウォールなのか知りたい」
「どの通信が許可・ブロックされているのか確認したい」
と感じることはありませんか?

そんなときに役立つのが
Get-NetFirewallRule です。
この記事では、PowerShellでWindowsファイアウォールの規則を確認する基本的な使い方を、
切り分けの視点で分かりやすく解説します。

こんな場面で便利

  • 特定のアプリやポートが通信できない原因を調べたいとき
  • ファイアウォールでブロックされていないか確認したいとき
  • サーバーや業務PCのセキュリティ設定を把握したいとき

✅ このコマンドでできること(要点)

  • Windowsファイアウォールの規則を一覧で確認できる
  • 許可・ブロックの状態を把握できる
  • 有効・無効の規則を判別できる
  • 特定条件で規則を絞り込める

✅ Get-NetFirewallRule でできること

Get-NetFirewallRule は、
Windows Defender ファイアウォールに設定されている
通信規則(ルール)を一覧表示するコマンドです。

GUIで「Windows Defender ファイアウォールの詳細設定」を開かなくても、
PowerShellから現在のルール状態を確認できるのが大きな特徴です。

🧩 基本構文

Get-NetFirewallRule

引数を付けずに実行すると、
すべてのファイアウォール規則が表示されます。

▶ 基本的な使い方(まずこれだけ)

🔹 ファイアウォール規則を一覧で確認する

Get-NetFirewallRule

規則名、状態(Enabled)、動作(Action)などが表示されます。
一覧が表示されていれば、規則情報は正しく取得できています。

🔹 有効な規則だけを確認する

Get-NetFirewallRule | Where-Object {$_.Enabled -eq "True"}

現在有効になっている通信規則だけを確認できます。

🛠 よく使われる指定例

🔹 許可(Allow)されている規則を確認する

Get-NetFirewallRule | Where-Object {$_.Action -eq "Allow"}

通信を許可しているルールのみを抽出できます。

🔹 特定の名前を含む規則を探す

Get-NetFirewallRule | Where-Object {$_.DisplayName -like "*HTTP*"}

Web通信や特定サービス関連の規則を探す際に便利です。

💼 実務でよく使う使用例(応用)

🔹 特定ポートの通信が許可されているか確認する

Get-NetFirewallRule |
Get-NetFirewallPortFilter |
Where-Object {$_.LocalPort -eq 443}

HTTPS(443番ポート)が許可されているかを切り分けできます。

🔹 特定アプリの通信規則を確認する

Get-NetFirewallRule |
Get-NetFirewallApplicationFilter |
Where-Object {$_.Program -like "*chrome*"} 
組み合わせ例

🧩 よくある勘違い・つまずきポイント

  • 規則が存在しても無効(Disabled)だと通信は許可されない
  • 許可ルールがあっても、ブロックルールが優先される場合がある
  • プロファイル(ドメイン/プライベート/パブリック)によって適用が異なる
  • 受信規則と送信規則を混同しやすい
  • アプリ規則とポート規則は別管理になっている

🔄 cmdとの違いについて

cmdにはファイアウォール規則を詳細に確認する標準コマンドは限られています。
Get-NetFirewallRule は、
PowerShellならではの柔軟な抽出・絞り込みができる点が強みです。

⚠ エラー・うまく動かないときの確認ポイント

  • 管理者権限でPowerShellを起動しているか
  • 対象のプロファイルが現在有効か
  • 規則が無効化されていないか
  • セキュリティソフト独自のFWが影響していないか

🧠 注意点

Get-NetFirewallRule は確認専用の安全なコマンドです。
ただし、規則の変更や削除を行う場合は、
業務影響やセキュリティリスクを十分に考慮しましょう。

📌 まとめ

  • Get-NetFirewallRuleはFW規則確認の基本コマンド
  • 通信不可トラブルの切り分けに必須
  • 条件抽出で必要な規則だけ確認できる
  • 次はポート疎通やTCP接続と組み合わせると効果的

🔎 PowerShellコマンドを探す

やりたいことからコマンドを探せます。

  • ファイルを削除したい
  • 一覧を表示したい
  • 文字列を検索したい
  • 条件で絞り込みたい
  • エラーや実行できない原因を調べたい
  • ファイアウォール規則を確認したい
  • 通信がブロックされていないか調べたい
Generic filters
すべてを開く | すべてを閉じる

ページ上部へ戻る