随着Windows Server 2012 和 Windows 8 的发布,当你使用NETSH 来管理防火墙时,会看到微软发布的警告消息:
这听起来是我们学习使用PowerShell管理防火墙的一个很好的理由。幸运的是微软已经在PowerShell 3.0 中的防火墙管理中加入了欢迎提示。 准备条件
相关命令PowerShell 提供了下面的命令用来管理防火墙: PS> Get-Command -Noun "*Firewall*" | Select -ExpandProperty Name Copy-NetFirewallRule Disable-NetFirewallRule Enable-NetFirewallRule Get-NetFirewallAddressFilter Get-NetFirewallApplicationFilter Get-NetFirewallInterfaceFilter Get-NetFirewallInterfaceTypeFilter Get-NetFirewallPortFilter Get-NetFirewallProfile Get-NetFirewallRule Get-NetFirewallSecurityFilter Get-NetFirewallServiceFilter Get-NetFirewallSetting New-NetFirewallRule Remove-NetFirewallRule Rename-NetFirewallRule Set-NetFirewallAddressFilter Set-NetFirewallApplicationFilter Set-NetFirewallInterfaceFilter Set-NetFirewallInterfaceTypeFilter Set-NetFirewallPortFilter Set-NetFirewallProfile Set-NetFirewallRule Set-NetFirewallSecurityFilter Set-NetFirewallServiceFilter Set-NetFirewallSetting Show-NetFirewallRule 像往常一样,输入get-help ,在后面跟上以上命令的名称,可以看到更多的帮助信息。 常见的例子下面列出一些你可能希望PowerShell来做的常见的例子: 在域环境中启用防火墙
注意,-Enable参数不接受传统的$true,只接受True,显然还有另外一个选项False。其它可用的配置环境还有“Public”和“Private” 启用预制的组规则一个Group是用于特定用途的规则集合,下面是Windows系统上附带的几个常用的组规则: Set-NetFirewallRule -DisplayGroup "Remote Event Log Management" -Enabled True Set-NetFirewallRule -DisplayGroup "Windows Firewall Remote Management" -Enabled True Set-NetFirewallRule -DisplayGroup "Windows Management Instrumentation(WMI)" -Enabled True Set-NetFirewallRule -DisplayGroup "Remote Desktop" -Enabled True Set-NetFirewallRule -DisplayGroup "Windows Remote Management" -Enabled True Set-NetFirewallRule -DisplayGroup "Remote Administration" -Enabled True 查看所有的group,可以看下面的例子。 列出当前所有的Groups
添加一条规则
启用或者禁用存在的某条规则
删除一条规则这会永久的删除一条规则,如果你只是禁用一条规则,可以参考前面使用set-netfirewallrule的的例子。
获取防火墙环境配置信息
远程管理规则任意的命令都可以通过New-CimSession命令远程使用。假设你的防火墙已经启用了我们上面列出过的组规则“Windows Firewall Remote Management“(必要的)。
Windows Server 和 Windows 7怎么办?不幸的是,上面命令只有在Windows Server 2012和Windows 8和更高版本中支持,即使你在其它旧版本的操作系统中安装了PowerShell 3.0,也不支持。如果你想在旧版本的操作系统上管理防火墙,不得不使用NETSH. 小提示所以使用PowerShell 管理防火墙,这只是万里长征的第一步。本篇文章主要聚焦每次去管理一台机器的规则,你可能会想去研究通过组策略来控制规则。Windows Server 2012针对此类情况也介绍了一些非常实用的工具。(Open-NetGPO!)更多信息可以通过下面的链接回复互动。 |
|