将GPO脚本存储在Netlogon或策略文件夹中?

最好的做法是将login脚本集中存储在\\DOMAIN\Netlogon或默认情况下放置在策略文件夹中,例如。 \\DOMAIN\SysVol\DOMAIN\Policies\{DE22B6FB-315E-4C55-BF06-A7709913CD9E}\User\Scripts\Logon

select一个地点的含义是什么(如果有的话)?

我倾向于把它们全部放在Netlogon中,以方便访问/审查…

用户login脚本的默认位置是NETLOGON共享,默认情况下,该共享在林中的所有DC上进行复制,并且物理上位于%SystemRoot%\SYSVOL\sysvol\<domain DNS name>\scripts

如果您设置了用户login脚本(ADUC>用户>属性>login>login脚本> hello.cmd),它将从NETLOGON执行。

“官方”的最佳做法是:

  • 将它们与GPO一起存储,如果通过GPO进行设置的话。
  • 将它们存储在NETLOGON中,如果将它设置为AD中的用户属性。

两个位置都在域控制器之间同步,因此对我来说这只是个人的select。

我个人的意见是,在超过一定数量的GPO之后,所有在netlogon中都可能难以pipe理。 (当你删除一个GPO时,脚本将不会被擦除)

不知道这是“最佳实践”,但我看到了一些博客文章推荐这个,我更喜欢它:

我们有一个文件共享,其中包含我们所有GPO的支持文件,包括脚本。 脚本都被检入版本控制。

文件共享使用DFS进行设置,因此它是\ domain.com \ DFS \ GPO-Files

这些脚本位于subdir \ domain.com \ DFS \ GPO-Files \ Scripts中

在GPO中,您可以调用脚本“powershell.exe”以及您所做的参数 – 文件PathToScript。

我喜欢这种方法,因为GPO文件和脚本位于众所周知的位置,而不是埋在具有GUID名称的文件夹中。

它还允许更多的控制PowerShell.exe如何被调用,如ExecutionPolicy。