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

CVE-2025-15467: Critical OpenSSL RCE and DoS Vulnerability Overview
OpenSSL vulnerability

CVE-2025-15467: Critical OpenSSL RCE and DoS Vulnerability Overview

Urgent: OpenSSL 3.x vulnerable to CVE-2025-15467, enabling pre-auth RCE. Learn affected versions, impact, and immediate mitigation steps. Protect your systems now!

By Divyansh Ingle March 10, 2026 4 min read
common.read_full_article
SolarWinds Patches Critical Web Help Desk RCE Vulnerabilities Now
SolarWinds Web Help Desk

SolarWinds Patches Critical Web Help Desk RCE Vulnerabilities Now

Critical RCE & Auth Bypass flaws in SolarWinds Web Help Desk are fixed! Don't risk it. Update to v2026.1 now to protect your systems. Learn more.

By Edward Zhou March 9, 2026 4 min read
common.read_full_article
AI vs Human Hackers: Who Prevails in 2026 Pen Testing?
AI hacking

AI vs Human Hackers: Who Prevails in 2026 Pen Testing?

Discover the results of a groundbreaking study comparing AI agents and human hackers in web vulnerability exploitation. See who prevails and what it means for your security. Read now!

By Jim Gagnard March 6, 2026 6 min read
common.read_full_article
Vulnerability Exploits Lead Cyber Intrusions in 2026 Trends
vulnerability exploits

Vulnerability Exploits Lead Cyber Intrusions in 2026 Trends

Exploits are now the top intrusion method, outpacing phishing. Discover why rapid vulnerability patching is critical and how to bolster your defenses. Read more!

By Edward Zhou March 4, 2026 4 min read
common.read_full_article