How to copy all firewall rules and apply them on a new server? I often install new SQL Server Servers. Be them production, test or development.

There is one thing I still have not automated and it is time consuming: the firewall settings.

I know how to Configure Windows Firewall to Work with SQL Server but I want to automate it.

I want to be able to copy all settings from a firewall in an already existing server my_good_server_already_running and apply all those settings to my_new_server.

How can I get this done?

well, how to Enable these Windows Firewall rules using powershell? gives me an idea.

From Use PowerShell to List Firewall Rules I got the following script that allows me to list all the firewall rules that I am interested in:

Get-NetFirewallRule | Where { $_.Enabled –eq ‘True’ –and $_.Direction –eq ‘Inbound’ }

Get-NetFirewallRule | Where { $_.Enabled –eq ‘True’ –and $_.Direction –eq ‘Outbound’ }


How do I get these rules and make them a script to apply on my_new_server?

I tried Managing the Windows Firewall with PowerShell but it doesn't say how to make the applying script out of the list either.
I am delighted to say that I have used the link provided by Scott Hodgin in the comments,
and it worked fine, although the order is not the same, and the original server was involved in clustering and the new one is not.....

I recommend this script, for those who need to deal with database server installations, and consequently firewalls.

Powershell scripts to export and import firewall rules

This is a partial picture of the firewall on the original server:


This is a partial picture of the firewall on the new server: