我可以使用 Powershell 在 Windows Server 2008 R2 中配置本地组策略设置吗?

我可以使用 Powershell 在 Windows Server 2008 R2 中配置本地组策略设置吗?

在 Windows Server 2008 R2 中,对于此手动过程

打开运行> gpedit.msc>计算机配置> windows 模板> windows 更新>指定 Intranet microsoft 更新服务位置>https://www.10.101.10.10.com

并且状态应该启用/禁用

我可以知道如何使用 powershell 来执行此操作吗,就像脚本一样?


这些设置位于注册表部分,我问的是:

  • 在 GPMC 中,展开“计算机配置”,展开“策略”,展开“管理模板”,展开“Windows 组件”,然后单击“Windows 更新”。

  • 在 Windows 更新详细信息窗格中,双击指定 Intranet Microsoft 更新服务位置。

  • 单击“启用”,然后在“设置用于检测更新的 Intranet 更新服务”和“设置 Intranet 统计服务器”文本框中,键入 WSUS 服务器的相同 URL。例如,键入http://XX.XX.XX.XX在两个框中(其中 servername 是 WSUS 服务器的名称)。

从 Powershell 脚本结束这可能吗?

答案1

该策略使用多个值更新以下注册表项:

HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate\AU

Name:  UseWUServer
Type:  DWORD
Value: 1

Name:  WUServer
Type:  String
Value: "URL to Windows Update Server"

Name:  WUStatusServer
Type:  String
Value: "URL to Intranet Statistics Server"

只需使用 cmdlet 设置这些值即可Set-ItemProperty

# Set the values as needed
$WindowsUpdateRegKey = "HKLM:\Software\Policies\Microsoft\Windows\WindowsUpdate\AU"
$WSUSServer          = "https://10.101.10.10:5830"
$StatServer          = "https://10.101.10.10:5830"
$Enabled             = 1

# Test if the Registry Key doesn't exist already
if(-not (Test-Path $WindowsUpdateRegKey))
{
    # Create the WindowsUpdate\AU key, since it doesn't exist already
    # The -Force parameter will create any non-existing parent keys recursively
    New-Item -Path $WindowsUpdateRegKey -Force
}

# Enable an Intranet-specific WSUS server
Set-ItemProperty -Path $WindowsUpdateRegKey -Name UseWUServer -Value $Enabled -Type DWord

# Specify the WSUS server
Set-ItemProperty -Path $WindowsUpdateRegKey -Name WUServer -Value $WSUSServer -Type String

# Specify the Statistics server
Set-ItemProperty -Path $WindowsUpdateRegKey -Name WUStatusServer -Value $StatServer -Type String

您可能需要重新启动自动更新服务才能使更改生效

Restart-Service wuauserv -Force

答案2

该脚本几乎是正确的,我会将其更改为这个,因为 WUServer 和 WUStatusServer 路径需要在父键中。

例子:

# Set the values as needed
$WindowsUpdateRegKey = "HKLM:\Software\Policies\Microsoft\Windows\WindowsUpdate\AU"
$WindowsUpdateRootRegKey = "HKLM:\Software\Policies\Microsoft\Windows\WindowsUpdate\"
$WSUSServer          = "http://1.1.1.1:5830"
$StatServer          = "http://1.1.1.1.80:5830"
$Enabled             = 1

# Test if the Registry Key doesn't exist already
if(-not (Test-Path $WindowsUpdateRegKey))
{
    # Create the WindowsUpdate\AU key, since it doesn't exist already
    # The -Force parameter will create any non-existing parent keys recursively
    New-Item -Path $WindowsUpdateRegKey -Force
}

# Enable an Intranet-specific WSUS server
Set-ItemProperty -Path $WindowsUpdateRegKey -Name UseWUServer -Value $Enabled -Type DWord

# Specify the WSUS server
Set-ItemProperty -Path $WindowsUpdateRootRegKey -Name WUServer -Value $WSUSServer -Type String

# Specify the Statistics server
Set-ItemProperty -Path $WindowsUpdateRootRegKey -Name WUStatusServer -Value $StatServer -Type String

# Restart Windows Update Service
Restart-Service wuauserv -Force

答案3

您提到“本地策略”,但随后又谈到“组策略”。

Powershell 函数操纵组策略是有限的。您可以创建新的 GPO、将 GPO 链接到 OU、设置 GPO 的权限和继承,还可以设置基于注册表的 GPO 规则。

我还没有尝试过,但你可以结合Mathias 的回答Set-GPRegistryValue

相关内容