Board logo

标题: [问题求助] PowerShell如何获取防火墙的状态? [打印本页]

作者: PowerShell3.0    时间: 2018-10-13 18:43     标题: PowerShell如何获取防火墙的状态?

我知道的可以用 Get-Service 命令获取 Windows Firewall 服务的状态。现在想要获取的是控制面板里面的防火墙状态是开启还是关闭。

问题1:
Windows 10 和 Windows 2012 可以使用 Get-NetFirewallProfile 命令来查看状态,但是命令取到的值和界面上看到的状态为何不一致?
例如在某台 Windows 2012 服务器上查到的信息:

PS C:\> Get-NetFirewallProfile | Select-Object Name, Enabled | Format-List

Name    : Domain
Enabled : True

Name    : Private
Enabled : False

Name    : Public
Enabled : False

问题2:
Window 7 和 Windows 2008 没有 Get-NetFirewallProfile 命令。有什么其他方法可以获取到防火墙的状态吗?
2018-10-15 补充:已经找到命令了 netsh advfirewall show allprofiles 现在主要就是问题1怎么解决
作者: xczxczxcz    时间: 2018-10-13 21:34

到 MS 官网下载最新版 相应系统的 PS 升级。
作者: xczxczxcz    时间: 2018-10-13 21:51

https://www.microsoft.com/en-us/download/details.aspx?id=54616
ps 5.1  for win7
作者: PowerShell3.0    时间: 2018-10-15 11:01

回复 2# xczxczxcz


问题2已经找到其他替代命令。问题1有什么方法解决吗?

几百台服务器运行着上百套业务系统,没有人能够确认升级PS是否会有影响,也没有人愿意承担这个责任,所以这样的变更在公司内部是无法得到审批的。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2