这是关于在将机器join域之前在机器上工作,尽pipe我很乐意依靠GPO,但这不是一个选项。
在我工作的环境中,防火墙策略是使用Total Endpoint Solution中的第三方防火墙应用程序,所以我必须禁用默认的Windows防火墙以防止冲突。 我使用脚本在一个想象过程的末尾执行此操作,或者在没有重新映像的系统上手动执行此操作。 有一段时间,我能够使用以下方式进行pipe理:
netsh advfirewall set allprofiles state off
但是,由于某种原因停止了工作。 所以,我发现我需要清除本地安全策略(手动):
Local Security Policy MSC > Windows Firewall with Advanced Security Right-Click Windows Firewall with Advanced Security - Local Group Policy Object Clear Policy
这是我用来避免手动执行的脚本:
secedit /configure /db reset /cfg securityprofile
两个步骤的组合工作了大约一个月,然后,没有明显的原因,它停止工作。
我开始testing一个registry黑客来达到我所需要的,这给了我不一样的结果。 我有两套configuration文件,我需要改变; 本地configuration文件:
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall] [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\DomainProfile] "EnableFirewall"=dword:00000000 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\PrivateProfile] "EnableFirewall"=dword:00000000 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\PublicProfile] "EnableFirewall"=dword:00000000
对于域configuration文件:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Parameters\FirewallPolicy] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Parameters\FirewallPolicy\DomainProfile] "EnableFirewall"=dword:00000000 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Parameters\FirewallPolicy\PublicProfile] "EnableFirewall"=dword:00000000 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Parameters\FirewallPolicy\StandardProfile] "EnableFirewall"=dword:00000000
我遇到的问题是本地configuration文件不断重新生成防火墙的原始设置。 我试过了:
用于testing的旧机器上的结果)很好
a)申请本地政策registry黑客
用于testing的旧机器上的结果)很好
a)使用secedit清除本地安全策略
用于testing的旧机器上的结果)很好
a)使用secedit清除本地安全策略
我的目标是通过脚本/自动化来禁用Windows防火墙。 有什么想法吗?
注意:这是在将机器join域之前。 如果我手动清除MSC中的本地安全策略,那么registry黑客会工作。 netsh仍然无法工作,我不想手动清除每台成像机器的策略。
Errr,整理你的GPO,并在那里禁用它。 或者,至less在堆栈顶部创build一个新的GPO(最高优先级)并禁用防火墙。 然后回去整理你的其他GPO。 本地安全策略将被GPO覆盖,并且您要写入的registry的第一个区域专门用于GPO处理。
简短的回答…组策略。 长答案…组策略。 (抱歉!)
我想说,我强烈build议任何禁用Windows防火墙的人花点时间了解它是如何工作的,以及如何通过GPO操纵它,而不是彻底closures它。 没有理由closures基于主机的防火墙。 微软使用优秀的工具来pipe理防火墙规则,你应该使用它们。
本TechNet文章概述了禁用Windows防火墙的正确方法。 不要像其他人告诉你的那样closures服务,这会使服务器进入不受支持的configuration,并在各种难以排除故障的情况下造成不稳定。
从TechNet文章中,netsh语法是
netsh advfirewall设置 configuration文件 状态closures
其中configuration文件的有效值为:AllProfiles,CurrentProfile,DomainProfile,PrivateProfile或PublicProfile。
看来你已经尝试了这个确切的命令,它不工作。 您还推送了此命令操作的registry项。 基于它曾经工作过,现在没有的事实,并且这些机器在你这样做的时候没有join域,所以只有一个结论:
你的形象中有一些东西是压倒性的。 故事结局。 由于我们没有自己的形象来看待,所以我们绝对没有办法给你一个特定的解决方法,除了“你做得对,如果不行,图像中的东西被错误configuration”
老实说,如果你不得不在你的映像上运行secedit /configure /db reset /cfg securityprofile以及所有这些其他的东西,你可能会更好地按照你想要的方式制作一个新的映像。
发现问题。 MDT在安装我的映像后,在任务序列结束时应用了本地组策略,即使pipe理员(通过命令提示符命令,registry等等)也禁止访问对本地安全策略的任何更改。 这很奇怪,因为这是MDT的默认策略。 无论如何,删除这个任务序列允许我使用netsehclosures防火墙:
netsh advfirewall set allprofiles state off
作为一个说明; 我同意所有人的意见,你不应该禁用你的防火墙服务,你不应该closures你的防火墙。