Managing Windows Firewall Rules with PowerShell: A Comprehensive Guide

Edward Zhou
Edward Zhou

CEO & Co-Founder

 
July 17, 2025 3 min read

Managing Windows Firewall Rules with PowerShell: Part 2 – Overcoming Cmdlet Limitations

wall between a computer monitor and a shield

Image courtesy of ITPro Today

In this section, we will discuss how to extract critical firewall rule details that the standard Get-NetFirewallRule cmdlet can't provide on its own. The Get-NetFirewallRule cmdlet retrieves general-purpose metadata for Windows firewall rules, but it does not return specific details such as local port numbers, remote port numbers, or protocols.

Retrieving Local and Remote Port and Protocol

To retrieve the protocol, local port number, and remote port used by a specific firewall rule, you can use the Get-NetFirewallPortFilter cmdlet. For example, if you want to find this information for a firewall rule named "My Example Rule," use the following command:

Get-NetFirewallRule -DisplayName "My Example Rule" | Get-NetFirewallPortFilter | Select-Object Name, Protocol, LocalPort, RemotePort

This command returns the protocol, local port number, and remote port associated with the specified firewall rule.

Retrieving Addresses

To retrieve the remote address and local address for a given rule, utilize the Get-NetFirewallAddressFilter cmdlet. This can be done as follows:

Get-NetFirewallRule -DisplayName "My Example Rule" | Get-NetFirewallAddressFilter | Select-Object Name, RemoteAddress, LocalAddress

This command will return the remote address and local address for the specified firewall rule.

screen shot of retrieving the local address and the remote address

Image courtesy of ITPro Today

Producing a Consolidated Output

If you need to access all information about a firewall rule in one place, consider using a PowerShell script to consolidate the details. Here’s a sample script:

$RuleName = "My Example Rule"
$Rule = Get-NetFirewallRule -DisplayName $RuleName
$PortFilter = $Rule | Get-NetFirewallPortFilter
$AddressFilter = $Rule | Get-NetFirewallAddressFilter
$ConsolidatedInfo = [PSCustomObject]@{
    Name          = $Rule.DisplayName
    Direction     = $Rule.Direction
    Action        = $Rule.Action
    Protocol      = $PortFilter.Protocol
    LocalPort     = $PortFilter.LocalPort
    RemotePort    = $PortFilter.RemotePort
    LocalAddress  = $AddressFilter.LocalAddress
    RemoteAddress = $AddressFilter.RemoteAddress
}

Write-Host $ConsolidatedInfo

This script collects and displays all relevant information about the specified firewall rule in a single output.

This script produces a consolidated output of the firewall rule information

Image courtesy of ITPro Today

Managing Windows Firewall Rules with PowerShell: Part 1 – Beyond the GUI

brick wall being built to separate two laptops

Image courtesy of ITPro Today

PowerShell offers a more efficient way to manage Windows firewall rules compared to the GUI. For example, four primary cmdlets can be used:

  • Get-NetFirewallRule: Displays firewall rules
  • Set-NetFirewallRule: Edits a firewall rule
  • Remove-NetFirewallRule: Deletes a firewall rule
  • New-NetFirewallRule: Creates a firewall rule

For detailed command syntax and usage, refer to the Get-NetFirewallRule and New-NetFirewallRule cmdlets.

How to Create a Firewall Rule

To create a new firewall rule, you can use the following command:

New-NetFirewallRule -DisplayName "My Example Rule" -Direction Inbound -Program "C:\\Temp\\MyApp.exe" -Action Allow -Profile Domain,Private -Protocol TCP -LocalPort 8080

screen shot showing how to create a new firewall

Image courtesy of ITPro Today

You can verify the creation of the rule using:

Get-NetFirewallRule -DisplayName "My Example Rule"

How to Modify a Firewall Rule

To modify an existing firewall rule, use the following command:

Set-NetFirewallRule -DisplayName "My Example Rule" -Profile Domain

screenshot showing modification of firewall rule

Image courtesy of ITPro Today

How to Delete a Firewall Rule

To delete a firewall rule, use the command:

Remove-NetFirewallRule -DisplayName "My Example Rule"

screenshot showing how to delete a firewall rule

Image courtesy of ITPro Today

By utilizing these commands and techniques, you can effectively manage Windows firewall rules using PowerShell.

For more information and to explore our services, visit Gopher Security.

Edward Zhou
Edward Zhou

CEO & Co-Founder

 

CEO & Co-Founder of Gopher Security, leading the development of Post-Quantum cybersecurity technologies and solutions.

Related News

React2Shell Vulnerability CVE-2025-55182: Exploitation Threats and Trends
React2Shell vulnerability

React2Shell Vulnerability CVE-2025-55182: Exploitation Threats and Trends

Critical React2Shell RCE vulnerability exploited by threat actors. Learn about attacker techniques, observed payloads like crypto miners, and how to protect your systems. Read now!

By Divyansh Ingle December 12, 2025 8 min read
Read full article
WinRAR CVE-2025-6218 Vulnerability Under Active Attack by Threat Groups
WinRAR vulnerability

WinRAR CVE-2025-6218 Vulnerability Under Active Attack by Threat Groups

CISA flags WinRAR CVE-2025-6218 as actively exploited. Learn about this path traversal flaw and how to protect your systems. Update now!

By Jim Gagnard December 11, 2025 3 min read
Read full article
Malicious VSCode Extensions Launch Multi-Stage Attacks and Infostealers
malicious VSCode extensions

Malicious VSCode Extensions Launch Multi-Stage Attacks and Infostealers

Beware of malicious VSCode extensions & device code phishing scams. Learn how these attacks steal credentials, capture screens, and hijack sessions. Protect yourself now!

By Alan V Gutnov December 10, 2025 6 min read
Read full article
PRC State-Sponsored BRICKSTORM Malware Targets Critical Infrastructure
BRICKSTORM malware

PRC State-Sponsored BRICKSTORM Malware Targets Critical Infrastructure

Discover how PRC state actors are using BRICKSTORM malware to gain persistent access via VMware. Learn about its advanced evasion techniques and how to defend your systems. Read now!

By Divyansh Ingle December 9, 2025 3 min read
Read full article