微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

windows-firewall – netsh advfirewall设置商店gpo:%COMPUTERNAME%不起作用

我负责处理高度机密数据的一组计算机.它们无法连接到Internet甚至是公司网络,只能连接到网络驱动器.所以我在网络驱动器上写了一个批处理文件,并在每台计算机上运行它以始终如一地应用安全设置.

批处理文件使用以下脚本调用netsh exec:

advfirewall
set store gpo = %COmpuTERNAME%
reset
set store local
reset

问题是环境变量%COmpuTERNAME%无法解析为实际的计算机名称,因此GPO不会重置,并且两个位置的设置之间存在冲突.此外,netsh advfirewall reset仅重置本地存储,而set store只能从netsh脚本运行(批处理文件中的直接netsh advfirewall set store gpo不起作用).

如何设置存储以访问运行批处理文件的计算机的GPO?或者是否有另一种方法可以从命令行重置GPO设置(对于具有高级安全性的Windows防火墙)?我知道这些设置不存储在Registry.pol中.

我怀疑你是想尝试将%COmpuTERNAME%直接传递给netsh.它不会扩展环境变量.让shell为你扩展变量,如下所示:
@echo off
SET F="%TEMP%\%rANDOM%.txt"

echo advfirewall>%F%
echo set store gpo = %COmpuTERNAME%>>%F%
echo reset>>%F%
echo set store local>>%F%
echo reset>>%F%

netsh -f %F%
del %F%

netsh最终得到一个已经包含扩展环境变量的脚本.

原文地址:https://www.jb51.cc/windows/365870.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐