Komplexní Patch Management pomocí SCCM 2012R2 a SCUP 2011

Trocha teorie s úvodem do problematiky Patch Managementu

V tomto článku bych Vás chtěl seznámit s možnosti aktualizování „Operačního Systému (OS)“ a aplikací neboli „Patch Managementu (PM)“, které nabízí produkt „Microsoft System Center Configuration Manager 2012R2 (SCCM 2012R2)“ s integrací „System Center Update Publisher 2011 (SCUP 2011)“.

Pomocí kombinace těchto dvou produktů lze snadno aktualizovat nejen Microsoft produkty a OS, ale rovněž aplikace a software jiných výrobců (např. Adobe, Sun, speciální aplikace, apod.). Čímž můžeme mnohem snadněji čelit stavu tzv. „Zero Day Attack“.

Asi každý z nás si velmi dobře uvědomuje, jak rychle narůstá počet bezpečnostních hrozeb a jak je důležité mít OS, produkty a v neposlední řadě 3rd party aplikace aktualizovány, čímž významně eliminujeme bezpečnostní rizika a zranitelnost celého prostředí. Většina správců dobře zná Microsoft produkt „Windows Software Update Services (WSUS)“, pomocí než máme možnost do jisté míry automatizovaně aktualizovat Microsoft OS a jeho produkty.

WSUS existuje již hezkou řadu let a postupně se vyvíjel společně s OS, začínal s verzí 2.0 až po současnou verzi 4.5 (která je součástí OS - role ve Windows server 2012R2). K jeho plné integraci v podobě volitelné role došlo od verze 4.0 ve Windows server 2012).

Instalace a konfigurace WSUS je poměrně snadná, ovšem WSUS možnosti GUI konzole v kombinaci s GPO šablonami pro správu jsou dosti omezené a v mnohých případech nepostačující. Na Microsoft TechNet galerii jsou k dispozici různé „PowerShell (PWS)“ skripty (částečně rozšiřující možnosti WSUS, skripty lze použít pro WSUS 4.0 a novější). Kdo chce ovšem rozšířené možnosti jak pro grafické rozhraní neboli GUI, tak pro PowerShell, ten by měl právě zpozornět, protože produkt SCCM 2012R2 je přesně řešení, které hledá. Konkrétně jedna z jeho mnoha rolí „Software Update Point (SUP)“ dělá rozšířenou logickou aplikační vrstvu API nad již zmíněnou WSUS rolí. SUP značně vylepšuje a rozšiřuje možnosti aktualizování software. Pomocí SUP lze jednoduše navrhnout PM proces napříč firemním prostředím do několika fází neboli „vln (tzv. Waves)“ s různými časovými odstupy oproti pravidelnému vydání Microsoft aktualizací.

Díky integraci dalšího produktu SCUP 2011 do SCCM 2012R2 infrastruktury máme možnost tento systém aplikovat nejenom na Microsoft OS a jeho produkty, ale i software jiných výrobců či vlastních „In-house“ aplikací.

Jednotlivé části a dílčí komponenty komplexního PM

Jak jsem již bylo zmíněno v úvodní teorii pro komplexní PM základním kamenem bude funkční SCCM 2012R2 infrastruktura. Její složitost se může značně lišit v závislosti od firemního geografického rozložení, počtu klientů, administrativním požadavkům, apod.

Dalším stavebním prvkem je WSUS role, jejíž řídící logikou bude zmíněná SCCM 2012R2 SUP role. Ve verzi SCCM 2012 SP1 došlo k přepracování SUP role, od níž je možná instalace více SUP serverů v rámci „Primary site“, čímž je zajištěn tzv. „Automatic Failover with affinity“ (zajištění fault tolerance, avšak nikoliv load balancing). Což v praxi znamená, že nainstalujeme více SUP serverů vyžívajících sdílenou SQL databázi (všechny SUP servery jsou aktivní a SCCM klient je náhodně přiřazen k SUP serveru natrvalo, dokud nedojde ke čtyřnásobnému selhání komunikace s přiřazeným SUP serverem, čímž by nastal automatický „failover“ na další dostupný SUP server v hierarchii). U „Secondary site“ stále platí instalace pouze jednoho SUP serveru. Z designového hlediska SUP role využívá identické hierarchie jako WSUS čili SUP „UPSTREAM“, jenž je synchronizován přímo z Microsoft přes INTERNET a SUP „DOWNSTREAM“ neboli „REPLICA“, který si synchronizuje databázi „metadat“ ze SUP UPSTREAM serveru (Např. SUP UPSTREAM v Primary site a SUP DOWNSTREAM v Secondary site). SUP lze nastavit jak pro interní „INTRANET“ klienty, tak pro externí „INTERNET“ klienty, či kombinaci obou (rozhodnutí je na architektovi daného prostředí). Stejně tak jako rozhodnutí, zda využít původních portů 80, 443 pro komunikaci, anebo nových portů 8530, 8531. Ve hře již máme tři hlavní části komplexního PM, ovšem poslední čtvrtou částí pro aktualizování 3rd party aplikací je SCUP 2011. Ten se nainstaluje jako poslední, po jeho instalaci a integraci do SCCM 2012R2 infrastruktury máme vše nezbytné pro komplexní PM připraveno.

Jednotlivé klíčové části:

  • SCCM 2012R2 infrastruktura
  • WSUS (minimálně 3.0 SP2 s nainstalovanými kritickými aktualizacemi pro WSUS, či novější verze)
  • SCCM 2012R2 SUP role
  • SCUP 2011

Dílčí komponenty:

  • SCCM 2012R2 kolekce
  • Server Automatic Updates
  • Server Manual Updates
  • Workstation Automatic Updates
  • Maintenance Window All Servers
  • Maintenance Windows All Workstations (v případě požadavku MW pro Workstations)
  • SCCM Deployment Packages
  • Server Updates
  • Workstation Updates
  • SCEP Updates (v případě nasazení System Center Endpoint Protection)
  • SCCM Software Update Groups (SUG)
  • Server Automatic Updates
  • Workstation Automatic Updates
  • SCEP Updates (v případě nsazení System Center Endpoint Protection)
  • SCCM Automatic Deployment Rules (ADR)
  • Server Automatic Updates
  • Workstation Automatic Updates
  • SCEP Updates (v případě nasazení System Center Endpoint Protection)
  • SCUP Code Signing certifikát (buďto z interní PKI, anebo vygenerovaný SCUP Self-signed)
  • AD skupiny zabezpečení
  • Servers (Pilotní skupina)
  • Workstations (Pilotní skupina)
  • GPO s nastavením pro SCCM 2012R2 komplexní PM

Příklad možné implementace komplexního PM

Konečně jsme se probojovali k nejzajímavější části, složení jednotlivých klíčových částí a dílčích komponent dohromady ve funkční celek. V této kapitole bych rád na názorném příkladu nastínil jak celý systém komplexního PM funguje.

Nemám mnoho prostoru na detailní popis implementace a nastavení jednotlivých klíčových částí a komponent, což ani není cílem tohoto článku. Proto předpokládám, že Vaše SCCM 2012R2 infrastruktura je plně funkční a připravena pro nasazení komplexního PM. Tedy můžeme začít, aneb vzhůru na to.

Pro začátek připomenu, že je velmi důležité si opravdu důkladně promyslet a zvážit návrh celé hierarchie komplexního PM. Dobře uvažte veškeré aspekty, jenž mohou ovlivnit výsledný design a výsledné nastavení. Po promyšlení designu můžeme konečně přistoupit k implementaci samotné.

Začneme s instalací WSUS role a její úvodní konfigurací, čímž mám na mysli pouze instalační nastavení WSUS role (umístění obsahu, volba databáze).

k1

Obrázek 1. Přidání WSUS role ve Windows server 2012/2012R2

k2

Obrázek 2. Konfigurace instalace WSUS role ve Windows server 2012/2012R2

Poznámka: V příkladu jsem použil integrované WSUS role ve Windows server 2012/2012R2 (u nichž je konfigurace totožná liší se pouze verzí).

Po úspěšné instalaci WSUS role se veškeré další nastavení provádí výhradně v SCCM 2012R2 administrativní konzoli během přidání role SUP, kde si volíme porty pro komunikaci, způsob synchronizace a její intervaly, produkty a jejich klasifikace, jazykové nastavení, apod.

k3

Obrázek 3. Přidání a úvodní konfigurace SUP role

k4

Obrázek 4. Konfigurace SUP klasifikací a produktů

k5

Obrázek 5. Konfigurace SUP synchronizace a jazyků

Poznámka: Během úvodního nastavení SUP role je lépe nastavit pouze minimální množství produktů k synchronizaci, po první synchronizaci s Microsoft je možné přidat všechny potřebné produkty a jejich klasifikace.

Abychom měli všechny klíčové části připraveny, provedeme ještě instalaci SCUP 2011, která je velmi snadná (její nastavení provedeme až později).

Nyní si připravíme jednotlivé dílčí komponenty potřebné k složení celé „skládačky“ komplexního PM.

V AD si vytvoříme dvě skupiny zabezpečení, jednu pro „Workstations“ (1. st Wave Workstation Updates – skupina by měla obsahovat alespoň 10 členů včetně tzv. „vzorků“ s důležitými firemními aplikacemi – Multicash, apod.). Druhou pro „Servers“ (1. st Wave Server Updates- skupina by měla rovněž obsahovat alespoň 10 členů, mezi nimiž by měl být vždy jeden zástupce od každé technologie).

Jako další si vytvoříme SCCM 2012R2 kolekce pro PM a „Maintenance Windows (MW)“. Systém vytvoření SCCM kolekcí je velice snadný a měl by být co nejpřehlednější. Tedy kolekce: 1. st Wave Server Updates (AD group membership) , jenž obsahuje pouze členy AD skupiny „1. st Wave Server Updates“, dále kolekce 2.nd Wave Server Updates (Auto membership) obsahující všechny servery kromě členů kolekcí (1. st Wave Server Updates (AD group membership) a Servers Manual Updating). Zmíněná kolekce Servers Manual Updating je vhodná pro aktualizování serverů speciálního typu, na něž chceme instalovat SCCM aktualizace manuálně nikoliv automatizovaně (např. Backup servery, BES, Citrix farmové servery, apod.). V neposlední řadě kolekci Maintenance Window All Servers(MW kolekce s nastavením povoleného data a času pro instalace aktualizací. Během MW SCCM agent může servery pro dokončení instalace aktualizací dle nutnosti restartovat).

k6

Obrázek 6. Ukázka možných kolekcí komplexní PM pro Servery

SCCM 2012R2 „Automatic Deployment Rules (ADR)“ pro první a druhou vlnu aktualizací: 1. st Wave Server Updates, 2.nd Wave Server Updates (případně SCEP Definition Updatespro Endpoint Protection antivirus). Právě ADR sdružují kompletní nastavení pro stažení aktualizací včetně definice jakým způsobem a kterým SCCM klientům budou aktualizace instalovány. Klíčová idea systému rozdělení a aplikování ADR do dvou a více „vln (Waves – které se aplikují pouze na předem vytvořené SCCM kolekce)“ je zamezení instalace nechtěných či problematických aktualizací do celého firemního prostředí (což nám umožní právě časový posun nastavení v jednotlivých ADR dle obrázku níže).

k7

Obrázek 7. Ukázka časové osy pro instalace aktualizací pro Servery pomocí ADR

k8

Obrázek 8. Ukázka konfigurace ADR pro Servery

Stejný systém lze použít rovněž pro „Workstations“. Možnosti nastavení v jednotlivých ADR, jenž nám mohou do jisté míry připomínat WSUS „Automatic Approvals (AA)“ jsou velice detailní a nabízejí obrovskou flexibilitu a komplexnost oproti zmíněným AA.

Mezi další střípky „skládačky“ patří SCUP Code Signing certifikát, zde bych zmínil významný fakt, a to zda máme v prostředí funkční „Public Key Infrastructure (PKI)“ (pokud máme fungující interní PKI, pak si můžeme vygenerovat vlastní SCUP Code Signing certifikát. V opačném případě použijeme „Self-signed“ certifikát vygenerovaný během konfigurace SCUP 2011). V obou případech je potřeba Code Signing certifikát distribuovat společně s dalším nastavením pro SCCM 2012R2 PM na klienty, k čemuž nám poslouží „Group Policy Object (GPO)“ - nastavení pro GPO je vidět na obrázku níže.

k9

Obrázek 9. GPO nastavení pro SCCM 2012R2 komplexní PM

A konečně se blížíme do finále, čímž je konfigurace SCUP 2011 včetně integrace do SCCM 2012R2. Zmíním jednotlivé kroky nastavení (s doprovodnými obrázky).

Úvodní nastavení SCUP 2011 se provádí ve SCUP konzoli v sekci „Options“, přičemž volby integrace do WSUS (SUP) a SCCM 2012R2 jsou tzv. „User Profile related“, což znamená, že tyto volby se ukládají do XML konfiguračního souboru v uživatelském profilu. Další nastavení jsou již „Global“ sdílené pro všechny správce, mezi tyto typy nastavení patří: Code Signing certifikát, umístění SCUP databáze (po instalaci se nachází rovněž v uživatelském profilu správce, jenž provedl instalaci SCUP 2011), přidané katalogy partnerů (Adobe, Sun, apod.) a informace o publikovaných aktualizacích (Adobe: Acrobat, Reader, FlashPlayer, aj.).

Poznámka: Nastavení pro SCUP 2011 není možné provádět přímo v SCCM 2012R2 administrativní konzoli, ale pouze ve SCUP konzoli.

k10

Obrázek 10. Ukázka možností nastavení SCUP 2011 ve SCUP konzoli

Po úspěšném „publikování“ vybraných aktualizací na SUP je nutná synchronizace s následným přenastavením SUP konfigurace viz obrázky níže.

k11

Obrázek 11. Synchronizace SUP po publikování SCUP aktualizací

k12

Obrázek 12. Rekonfigurace SUP pro přidání Adobe produktů

k13

Obrázek 13. Výsledek synchronizace po rekonfiguraci SUP produktů

Po synchronizaci a rekonfiguraci SUP je možné přidat SCUP aktualizace do nastavení jednotlivých ADR, čímž jsme finálně sestavili všechny nezbytné díly „skládačky“ komplexního PM.

Poznámka: Pro komplikované instalace aktualizací např. cluster systémů je lepší využít kombinace se „System Center Orchestrator 2012R2 (SCORCH 2012R2)“, o kterém psal můj kolega ve článku: https://blogs.technet.com/b/technetczsk/archive/2015/06/10/automatizace-prostredi-pomoci-system-center-orchestrator-a-service-manager.aspx

Přínosy a hlavní výhody komplexního PM

Zde bych chtěl jenom ve stručnosti zmínit hlavní přínosy a výhody komplexního PM oproti klasické a dobře známé WSUS infrastruktuře. Pokud se rozhodnete k nasazení výše popsaného komplexního PM získáte tím následující výhody a rozšiřující funkcionality:

  • Mnohem podrobnější a flexibilnější časové rozvržení instalací aktualizací
  • Možnost aktualizací pro aplikace 3rd party aplikací (Adobe, Sun, apod.)
  • Možnost velmi snadno nalézt a vyřadit případné problematické aktualizace (pomocí volby „Custom Severity“ ve vlastnostech dané aktualizace lze snadno vyřadit aktualizaci ze seznamu k instalaci)
  • Snadná instalace aktualizací v průběhu instalování samotného OS tzv. „Operating System Deployment (OSD)“ (do OSD Task Sequence se přidá krok „Install Software Updates“, čímž dojde k instalaci aktualizací již během instalace OS)
  • Přidávání aktualizací přímo do WIM souboru neboli „Offline Image Servicing “ (do importovaného WIM souboru daného OS lze snadno „injektovat“ aktualizace pro OS)
  • Podrobná sada výchozích diagnostických a přehledových reportů o stavu instalací aktualizací (po přidání a konfiguraci SUP role máme k dispozici velké množství výchozích reportů k aktualizacím)
  • Mnohem podrobnější logování na straně klienta (díky instalaci aktualizací pomocí SCCM agenta máme k dispozici nejenom standartní „WindowsUpdate.log“, ale sadu SCCM agent logů, kde lze snadno dohledat případné problémy s instalaci aktualizace)
  • V neposlední řadě dosáhneme centralizovaného řízení PM, což znamená, že v SCCM administrativní konzoli kromě „publikování SCUP aktualizací – nutná SCUP konzole“ můžeme řídit veškerý PM proces firemního prostředí tzv. „Single Pain of Glass“
  • Poměrně snadné rozšíření a provázání SCCM 2012R2 SUP hierarchie se SCORCH 2012R2, který je ideálním nástrojem pro složité a komplikované aktualizace systémů (např. Cluster nody speciálních aplikací, kde je nutné provést řadu nezbytných úkonů před instalacemi aktualizací a po jejich ukončení, apod.)

Doufám, že se mi podařilo stručně shrnout a zdůraznit většinu výhod plynoucích z implementace řešení komplexního PM.

- Martin Jurásek, KPCS CZ