PowerShellでWindows ファイアウォールのルールを取得する

スポンサーリンク

例1. 指定した規則を抽出する

書式

Get-NetFirewallRule | Where-Object{$_.DisplayName -eq “規則名”}

実行例

Microsoft Edgeを抜き出してみます。

> Get-NetFirewallRule | Where-Object{$_.DisplayName -eq "Microsoft Edge"}


Name                  : {6DD9D39C-0195-4CD8-9A5A-1D7CFC2207C8}
DisplayName           : Microsoft Edge
Description           : Microsoft Edge
DisplayGroup          : Microsoft Edge
Group                 : @{Microsoft.MicrosoftEdge_44.18362.449.0_neutral__8wekyb3d8bbwe?ms-resource://Microsoft.MicrosoftEdge/Resources/AppName}
Enabled               : True
Profile               : Domain, Private, Public
Platform              : {6.2+}
Direction             : Outbound
Action                : Allow
EdgeTraversalPolicy   : Block
LooseSourceMapping    : False
LocalOnlyMapping      : False
Owner                 : S-1-5-21-2455843998-1832608926-1878898560-1001
PrimaryStatus         : OK
Status                : 規則は、ストアから正常に解析されました。 (65536)
EnforcementStatus     : NotApplicable
PolicyStoreSource     : PersistentStore
PolicyStoreSourceType : Local

Name                  : {18DC1B40-B6A8-4208-9EFF-F2E77EE1D0CF}
DisplayName           : Microsoft Edge
Description           : Microsoft Edge
DisplayGroup          : Microsoft Edge
Group                 : @{Microsoft.MicrosoftEdge_44.18362.449.0_neutral__8wekyb3d8bbwe?ms-resource://Microsoft.MicrosoftEdge/Resources/AppName}
Enabled               : True
Profile               : Domain, Private
Platform              : {6.2+}
Direction             : Inbound
Action                : Allow
EdgeTraversalPolicy   : Block
LooseSourceMapping    : False
LocalOnlyMapping      : False
Owner                 : S-1-5-21-2455843998-1832608926-1878898560-1001
PrimaryStatus         : OK
Status                : 規則は、ストアから正常に解析されました。 (65536)
EnforcementStatus     : NotApplicable
PolicyStoreSource     : PersistentStore
PolicyStoreSourceType : Local

例2. 指定した規則を抽出し、さらに表示する項目の値を抜き出す

書式

(Get-NetFirewallRule | Where-Object{$_.DisplayName -eq “[規則名]”}).[項目名]

実行例

Microsoft EdgeのDirection を抜き出す例です。

> (Get-NetFirewallRule | Where-Object{$_.DisplayName -eq "Microsoft Edge"}).Direction

Outbound
Inbound

以上。

PowerShell に関しては下記の本をお勧めしておきます。プログラミング初心者向けに丁寧に解説されています。2015年に出版された本ですが、PowerShell の基本的なコマンドはかわらないので何の問題もありません。

コメント