PowerShell防火墙pipe理

我有一堆计算机需要启用远程计划任务pipe理(RPC),远程计划任务pipe理(RPC-EPMAP)和Windows Management Instrumentation(WMI-in)以进行GPO更新。

我想运行一个PowerShell脚本,所以我不必手动执行此操作。 不过,我是新来的PowerShell。

有没有一种方法,我可以得到PowerShell命令,当我在机器上手动添加规则?

编辑:

这是我发现的一个方法:

netsh advfirewall firewall set rule group="Remote Administration" new enable=yes netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=yes netsh advfirewall firewall set rule group="Remote Service Management" new enable=yes netsh advfirewall firewall set rule group="Performance Logs and Alerts" new enable=yes Netsh advfirewall firewall set rule group="Remote Event Log Management" new enable=yes Netsh advfirewall firewall set rule group="Remote Scheduled Tasks Management" new enable=yes netsh advfirewall firewall set rule group="Remote Volume Management" new enable=yes netsh advfirewall firewall set rule group="Remote Desktop" new enable=yes netsh advfirewall firewall set rule group="Windows Firewall Remote Management" new enable =yes netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable =yes 

但是,我必须在每台机器上执行它。

出于某种原因,这一个不起作用:

 Enable-NetFirewallRule -DisplayGroup “Windows Remote Management” 

在Windows Server 2012 R2 Core上工作,这为我工作:

 Set-NetFirewallRule -DisplayGroup "File And Printer Sharing" -Enabled True 

这是如何检查是否成功

 Get-NetFirewallRule -DisplayGroup "File And Printer Sharing" 

并find“已启用”中的值,它应该设置为TRUE。

更多的信息和参数可以在这里find:

Set-NetFirewallRule Technet

根据Technet上的这篇文章,只有在Server 2012或Windows 8上: http : //technet.microsoft.com/en-us/library/hh831755.aspx

即使使用Powershell 4.0,Windows 7和Server 2008也需要Netsh。