3

I have a large number of remote IPs to specify in Windows Firewall for a blocking rule. The only way I know to enter them is by labouriously entering them an inbound rule's properties Scope tab.

Is there a more efficient way such as a command line option or, even better, pointing to a text file containing the IPs/IP masks?

I'm on Windows Server 2008

Emmanuel
  • 135
  • 2
  • 5

3 Answers3

5

Assuming the IP addresses are in a text file called "ip.txt", just do:

for /f %i in (ip.txt) do echo netsh advfirewall firewall add rule name="Block %i" dir=in protocol=any action=block remoteip=%i

In a batch file, be sure to change "%i" to "%%i".

Evan Anderson
  • 141,881
  • 20
  • 196
  • 331
1

Use the RunSynchronous command to add, to modify, or to delete Windows Firewall rules.

You can also use an Unattend.xml with the Networking-MPSSVC-Svc component.

More information on technet here

Fergus
  • 1,313
  • 9
  • 19
1

You should be able to use the netsh command to add/remove firewall rules via the command line. You can also use a batch for loop to pull the IP addresses from a file.

Dan
  • 1,278
  • 18
  • 27