Автоматизация управления патчами в Windows, часть 1.

Автоматизация управления патчами в Windows, часть 1.

В этой статье, состоящей из трех частей, я подробно расскажу о Microsoft Software Update Services (SUS), включая установку, администрирование и обслуживание. Также я расскажу о бесплатных и коммерческих альтернативах управления патчами и почему определенные решения могут подойти, а могут и не подойти для вашей организации.

Jonathan Hassell, перевод Михаил Разумов

Управление патчами можно назвать проклятием каждого системного администратора, уязвимым местом управления системой и непрекращающейся головной болью IT менеджера.

Я уверенно использую термин «управление». На момент написания этой статьи, более 40 обновлений необходимо было применить к новому компьютеру, на котором запущена Windows XP. Более 20 обновлений нужно было применить для систем с Windows 2000 Service Pack 3 до того, как Microsoft выпустила четвертый сервиспак летом 2003 г. Учитывая это постоянно растущее множество обновлений безопасности, исправлений ошибок, критических обновлений и патчей, может быть проще отсоединить все компьютеры от Internet, чем внедрять новые системы?

Конечно, это нереально. На данный момент существует несколько способов распространения и установки обновлений:

  • установка вручную
  • использование механизмов, предоставленных Microsoft
  • инвестирование средств в системы распространения и установки обновлений третьих компаний

В этой статье, состоящей из трех частей, я подробно расскажу о Microsoft Software Update Services (SUS), включая установку, администрирование и обслуживание. Также я расскажу о бесплатных и коммерческих альтернативах управления патчами и почему определенные решения могут подойти, а могут и не подойти для вашей организации.

Software Update Services

Технология Microsoft Windows Update – программное обеспечение, которое представляет собой универсальный сайт обновлений для всех версий Windows, кроме самых старых – реализована в SUS. На данный момент SUS ограничен только критическими обновлениями и сервис паками, позволяя администраторам упростить установку этих патчей на серверы Windows 2000 или Windows Server 2003, а также на рабочие станции Windows 2000 Professional или Windows XP Professional. Он лучше всего работает в сетях, где реализована Active Directory, но может функционировать и без нее. Как вы увидите здесь, в целом Software Update Services – не идеальный инструмент, с ограниченной функциональностью, недостаточно гибкий, но он имеет два больших плюса: он своевременен и работает достаточно хорошо.

Для использования SUS, требуется по крайней мере один сервер, подключенный к Интернет, выполняющий серверную часть SUS. Этот компьютер работает как локальная версия публичного сайта Windows Update, содержащая критические обновления и сервис паки для всех поддерживаемых операционных систем. Этот сервер синхронизируется с публичным сайтом Windows Update по расписанию, которое вы, как администратор, выбираете, и затем вы утверждаете (approve) или отвергаете доступность определенных обновлений на сервере SUS.

Automatic Updates – возможность, доступная в Windows 2000 Service Pack 3 и выше или Windows XP Professional SP1, является клиентской частью SUS. Направляемые модификацией ключа реестра или применением групповой политики, клиентские компьютеры, на которых запущена служба Automatic Updates, соединяются по установленному расписанию с локальным сервером SUS для загрузки обновлений, подходящих для них. Сервер SUS анализирует операционную систему, сервис пак и установленные в данный момент обновления и предлагает только те обновления, которые нужны и предварительно утверждены администратором.

Есть несколько стадий установки SUS, хорошо описанных в документе Microsoft под названием "Software Update Services Deployment White Paper". Поскольку установка и начальная конфигурация довольно просты, я коротко пройдусь по инструкции, местами упрощая ее язык, и укажу на некоторые проблемы, с которыми мне пришлось столкнуться.

Синхронизация и утверждение содержимого

Когда вы запустите процесс синхронизации содержимого, сервер SUS обращается либо к публичным серверам Windows Update, либо к другому локальному серверу SUS (в зависимости от того, как задано в секции Set Options) и скачивает весь набор имеющихся критических обновлений и сервис паков для всех языков, которые вы выбрали. В процессе этой синхронизация обычно скачивается около 150 Mb данных для английских версий обновлений и около 600 Mb обновлений для каждой локализованной версии.

Для синхронизации содержимого, зайдите на сайт управления SUS, и затем:

  1. В левой навигационной панели нажмите Synchronize server.
  2. Нажмите кнопку Synchronize now в правой панели, чтобы начать синхронизацию.

Вы можете также решить запланировать автоматические синхронизации, тогда вам не придется помнить о ре-синхронизации каждый раз, когда выйдет новое обновление, а это происходит довольно часто. На странице Synchronize нажмите Synchronization schedule, установите параметры по своему усмотрению и нажмите ОК. Знайте, что если сервер SUS не сможет соединиться с соответствующим источником обновлений, он повторит попытки четыре раза через каждые полчаса.

Теперь, когда у вас есть актуальный набор обновлений на сервере SUS, вы можете утвердить каждое обновление отдельно для установки на клиентские машины в вашей сети. Чтобы начать процедуру утверждения обновлений, в навигационной панели нажмите Approve updates, а затем в правой панели выберите обновления, которые вы хотите утвердить, и нажмите Approve, когда закончите.

Установка клиента Automatic Updates

Вы можете установить обновленного клиента Automatic Updates на клиентские компьютеры, установив его из соответствующего MSI пакета, обновив с помощью старой утилиты Critical Update Notification (CUN), установив Windows 2000 Service Pack 3 или 4, установив Windows XP Service Pack 1, или установив Windows Server 2003.

Поскольку программа установки клиента представлена в формате MSI, вы можете легко установить клиентскую часть с помощью групповой политики. Для этого создайте новый GPO, назначьте его своим компьютерам, и позвольте клиентам установиться автоматически. Программа установится в контексте локального компьютера, так что убедитесь, что authenticated users имеют право на чтение пакета установки. Вы можете также установить клиентский MSI с помощью логон-скрипта, вызывая MSIEXEC с именем файла клиентской программы и аргументами.

Есть четыре варианта конфигурирования с использованием Group Policy:

  • Configure Automatic Updates (Конфигурировать Автоматические Обновления): Эта опция определяет, будет ли этот компьютер получать обновления безопасности и исправления ошибок. Первая опция позволяет уведомлять текущего пользователя перед загрузкой обновлений и вновь уведомлять перед установкой загруженных обновлений. Вторая опция позволяет автоматически загружать обновления, но не устанавливать их, пока текущий пользователь не разрешит установку. Третья опция позволяет автоматически загружать и устанавливать обновления по расписанию, которое вы можете установить в соответствующих полях.
  • Specify intranet Microsoft update service location (Задать внутренний адрес сервиса Microsoft update): Эта опция указывает на сервер SUS, с которого загружать обновления. Чтобы использовать эту опцию, вы должны задать значения имени сервера (которые могут быть одинаковы): сервер, на котором клиент Automatic Updates проверяет и с которого загружает обновления, и сервер, на который обновленные рабочие станции записывают статистику.
  • Reschedule Automatic Updates scheduled installations (Перепланировать запланированную установку Automatic Updates): Эта опция определяет время после загрузки системы, по истечении которого продолжается запланированная установка, пропущенная ранее. Если статус установлен в Enabled, пропущенная установка начнется через заданное количество минут после загрузки компьютера. Если статус Disabled или Not Configured, пропущенная установка будет просто отложена до следующей установки по расписанию.
  • No auto-restart for scheduled Automatic Updates installations (Выключить автоматическую перезагрузку после запланированной установки Automatic Updates): Эта опция определяет, должны ли клиентские компьютеры автоматически перезагружаться, когда только что установленное обновление требует перезагрузки системы. Если статус установлен в Enabled, Automatic Updates не будет автоматически перезагружать компьютер после запланированной установки, если на компьютере работает пользователь, вместо этого пользователю будет предложено перезагрузить компьютер для завершения установки. Если статус установлен в Disabled или Not Configured, Automatic Updates предупредит пользователя, что компьютер автоматически перезагрузится через 5 минут для завершения установки.

Чтобы изменить некоторые из этих настроек через реестр, используйте следующее руководство:

  • Чтобы включить или отключить Automatic Updates: создайте параметр NoAutoUpdate в ключе HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU. Значение типа DWORD с возможными значениями 0 (включено) и 1 (отключено).
  • Чтобы сконфигурировать загрузку обновлений и уведомление: создайте параметр AUOptions в ключе HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU. Его значение типа DWORD может быть одним из значений 2 (уведомить о загрузке и уведомить перед установкой), 3 (автоматически загружать и уведомить перед установкой), 4 (автоматически загружать и запланировать установку)
  • Чтобы запланировать автоматическую установку: создайте параметры ScheduledInstallDay и ScheduledInstallTime в ключе HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU. Типа значений для каждого – DWORD. Для ScheduledInstallDay диапазон значений от 0 до 7, где 0 означает каждый день, а 1-7 соответствуют дню недели с воскресенья по субботу соответственно. Для ScheduledInstallTime диапазон значений 0-23, в соответствии с номером часа в сутках.
  • Чтобы задать определенный сервер SUS для использования клиентом Automatic Updates: создайте значение UseWUServer в ключе HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU. Значение типа DWORD; установите его в 1 для задания своего имени сервера SUS. Затем, создайте в HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate параметры WUServer и WUStatusServer типа Reg_SZ, и задайте имена (с http://) в качестве значений.
  • Чтобы задать, сколько ждать перед завершением пропущенной установки: создайте значение RescheduleWaitTime в ключе HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU. Значение типа DWORD от 1 до 60, измеряется в минутах.
  • Чтобы задать, перезагружать ли компьютер после запланированной установки при работающем в данный момент пользователе с неадминистративными правами: создайте параметр NoAutoRebootWithLoggedOnUsers в ключе HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU. Значение типа DWORD, которое может быть нулевым, что означает, что перезагрузка обязательна, и единицей, что означает, что перезагрузка будет отложена до тех пор, пока пользователь не выйдет из системы.

Вы можете использовать файл реестра, аналогичный приведенному ниже, чтобы автоматизировать изменения реестра. Вы можете модифицировать этот файл согласно приведенной выше инструкции.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate]

"WUServer"="http://YOUR-SUS-SERVER"

"WUStatusServer"="http://YOUR-SUS-SERVER"

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU]

"RescheduleWaitTime"=dword:00000003

"NoAutoRebootWithLoggedOnUsers"=dword:00000000

"NoAutoUpdate"=dword:00000000

"AUOptions"=dword:00000004

"ScheduledInstallDay"=dword:00000000

"ScheduledInstallTime"=dword:00000006

"UseWUServer"=dword:00000001

Вы можете даже создать MSI пакет для распространения настроек реестра SUS. Вы можете распространить изменения через .exe или .msi на компьютеры вне домена. К тому же, вы можете использовать апплет Add/Remove Programs в Control Panel для удаления настроек. В конце концов, их легко создать, используя бесплатную WinInstall LE, которая доступна с CD Windows 2000 Server. Также существуют инструменты третьих фирм для создания установочных пакетов.

Далее

Как я упоминал в начале статьи, SUS хорош отчасти своей ценой (он бесплатен), но ему не хватает нескольких возможностей, которые имеют другие продукты управления патчами, таких как:

  • Поддержки для легкого и удобного анализа логов
  • Мультиплатформенное покрытие
  • Обновление приложений и серверных программ совместно с самой операционной системой.

Есть пути обхода, по крайней мере, первого ограничения, и во второй части статьи я расскажу о паре способов и их недостатках для анализа информации из лог-файлов. Я также опишу несколько общих проблем и как их обойти, а также как контролировать статус клиентских загрузок и установок.

Мы расшифровали формулу идеальной защиты!

Спойлер: она начинается с подписки на наш канал

Введите правильный пароль — подпишитесь!