How to open windows firewall ports with powershell
Question
Monday, January 14, 2013 9:22 AM
Hi
Im trying to figure how how to make a Powershell script that opens, multiple firewall ports (incomming). on the local server. (using win2008r2).
any ideas?
best regards
Bjørn
All replies (4)
Wednesday, January 16, 2013 6:10 AM ✅Answered
Hi,
Please also refer to the below link:
Using Powershell to Open Ports on on a Windows 2008 Server
http://social.technet.microsoft.com/Forums/en-US/ITCG/thread/1173b550-9f19-495f-bf70-ea12e3a73866
Regards,
Yan Li
Cataleya Li
TechNet Community Support
Monday, January 14, 2013 10:04 AM
Powershell Code: Create Custom Windows Firewall Rule
Monday, January 14, 2013 11:28 AM
Thanks,
My problem is that my script is creating 3 seperate rules, one per port. I would love to have all the ports into one rule. Under is my current script:
#==============================================================
# Creates a rule to open an incomming port in the firewall.
#==============================================================
#$numberAsString = read-host "type an port number"
#$mynumber = [int]$numberAsString
$port1 = New-Object -ComObject HNetCfg.FWOpenPort
$port2 = New-Object -ComObject HNetCfg.FWOpenPort
$port3 = New-Object -ComObject HNetCfg.FWOpenPort
$port1.Port = 109
$port2.Port = 110
$port3.Port = 111
$port1.Name = 'MyTestPort' # name of Port
$port2.Name = 'MyTestPort' # name of Port
$port3.Name = 'MyTestPort' # name of Port
$port1.Enabled = $true
$port2.Enabled = $true
$port3.Enabled = $true
$fwMgr = New-Object -ComObject HNetCfg.FwMgr
$profiledomain=$fwMgr.LocalPolicy.GetProfileByType(0)
$profiledomain.GloballyOpenPorts.Add($port1)
$profiledomain.GloballyOpenPorts.Add($port2)
$profiledomain.GloballyOpenPorts.Add($port3)
This creates 3 rules with the same name. Is there anyway to get them all into one rule?
br
Bjørn
Monday, January 14, 2013 12:00 PM
netsh advfirewall firewall add rule name='MyTestPort' dir=in protocol=any localport=109-111 action=allow profile=any