批处理文件用于检查防火墙状态,如果禁用则启动文件

时间:2015-10-06 07:25:40

标签: batch-file port windows-firewall

我想要一个批处理文件,在使用标准访问权限运行后,检查防火墙的状态,如果防火墙被禁用,则启动文件。但是,如果启用了防火墙,则显示所有允许的端口。这可能吗?

我正在使用Windows注册表值EnableFirewall检查防火墙是否已启用。

  

HKEY_LOCAL_MACHINE \ SYSTEM \ CURRENTCONTROLSET \服务\ SharedAccess \参数\ FirewallPolicy \ StandardProfile

我不确定这是否正确。

1 个答案:

答案 0 :(得分:1)

您可以使用以下命令获取防火墙当前状态:

netsh advfirewall show allprofiles state

您也可以使用命令

netstat -ab | more

这将获得所有开放端口的列表并在屏幕上显示。

enter image description here

至于阅读注册表项,您可以使用reg query:

reg query <KeyName> [{/v <ValueName> | /ve}] [/s] [/se <Separator>] [/f <Data>] [{/k | /d}] [/c] [/e] [/t <Type>] [/z]

来源:https://technet.microsoft.com/en-us/library/cc742028.aspx