Windows Server Update Services PowerShell установка
Windows Server Update Services — роль для регулирования и установки обновлений microsoft в локальной сети. Другими словами WSUS получает требуемые обновления из microsoft и раздает их далее внутри сети. Установку Update Services можно производить как визуально так и без gui через cmd, powershell. Для работы wsus обязательно требуется наличие установленного IIS веб-сервера. Это можно сделать через командную строку через Deployment Image Servicing and Management — DISM.
1 2 3 4 5 |
DISM /Online /Enable-Feature /FeatureName:IIS-Wev-Server /all /Online - установить из интернет, а не из образа /Enable-Feature - установить /FeatureName:IIS-Wev-Server - название устанавливаемого /all - установить требуемые зависимости |
Далее установку проще проводить из powershell. Для начала создается папка в которой будут располагаться обновления wsus.
Для проверки устанавливаемых и зависимых компонентов можно использовать команду:
1 |
Install-WindowsFeature -Name UpdateServices -WhatIf |
Чтобы посмотреть что включает в себя роль Windows Server Update Services и установить требуемые компоненты используются следующие команды:
1 2 |
Get-WindowsFeature -Name UpdateServices* Install-WindowsFeature -Name UpdateServices, UpdateServices-WidDB |
Install-WindowsFeature -Name — установить следующие компоненты
UpdateServices-WidDB — уточнение что будет устанавливаться внутренняя база данных
После установки служб и компонентов можно проверить результат и нужно запустить пост-установку.
1 2 |
cd "c:\Program Files\Update Services\Tools\" .\WsusUtil.exe PostInstall CONTENT_DIR=C:\WSUS |
Для разрешения подключений к серверу внутри доменной сети можно установить правила файрволла под доменный профиль.
1 |
netsh advfirewall set domainprofile firewallpolicy allowinbound, allowoutbound |
Проверить установку и настройку WSUS можно с помощью Best Practices Analyzer.
1 2 |
Invoke-BpaModel -ModelId Microsoft/Windows/UpdateServices Get-BpaResult -ModelId Microsoft/Windows/UpdateServices | Select Title,Severity,Compliance | Format-List |
Далее нужно настроить основные параметры работы сервера обновлений.
http://msdn.microsoft.com/en-us/library/microsoft.updateservices.administration.iupdateserverconfiguration_properties(v=vs.85).aspx
Получение конфигурации:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
$wsus = Get-WSUSServer $wsusConfig = $wsus.GetConfiguration() Set-WsusServerSynchronization –SyncFromMU $wsusConfig.AllUpdateLanguagesEnabled = $false $wsusConfig.SetEnabledUpdateLanguages("ru") $wsusConfig.Save() $subscription = $wsus.GetSubscription() $subscription.StartSynchronizationForCategoryOnly() Get-WsusProduct | where-Object { $_.Product.Title -in ( 'CAPICOM', 'Silverlight', 'SQL Server 2008 R2', 'SQL Server 2005', 'SQL Server 2008', 'Exchange Server 2010', 'Windows Server 2003', 'Windows Server 2008', 'Windows Server 2008 R2') } | Set-WsusProduct Get-WsusClassification | Where-Object { $_.Classification.Title -in ( 'Update Rollups', 'Security Updates', 'Critical Updates', 'Service Packs', 'Updates') } | Set-WsusClassification $subscription.SynchronizeAutomatically=$true $subscription.SynchronizeAutomaticallyTimeOfDay= (New-TimeSpan -Hours 0) $subscription.NumberOfSynchronizationsPerDay=1 $subscription.Save() $subscription.StartSynchronization() [reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration") | Out-Null $wsus = Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer("192.168.10.203","false",8530); $wsus.GetSubscription().StartSynchronization(); |