| Patch management v Linuxu |
|
|
|
|
Autor: Vojtěch Bednář, externí redaktor ICTsecurity Operační systém GNU/Linux si stále častěji nachází své místo nejenom na firemních serverech, ale i na pracovních počítačích. Jaká jsou specifika správy aktualizací v jeho prostředí a na co je potřeba dávat pozor? Ve světě operačních systémů Microsoft Windows existuje celá řada nástrojů pro správu aktualizací a analýzu stavu zabezpečení, respektive aktuálnosti jak samotného operačního prostředí, tak především instalovaných aplikací. Nejenom na serverech, ale také stále častěji také na pracovních PC a jednoúčelových zařízeních se v organizacích lze stále častěji setkávat se systémy postavenými na bázi GNU/Linuxu. Také pro ně existují nástroje pro patch management a jsou zahrnovány do portfolia spravovaných platforem nástroji univerzálními. Přesto je prostředí Linuxu v tomto ohledu oproti Windows poněkud specifické jak co se týká systémů pro patchování a zajišťování aktuálnosti, tak pokud jde o samotný přístup k problému. Neznalost těchto specifik může vést k nepříjemným problémům, stejně tak jako podcenění problematiky patch managementu na otevřené platformě. Pokusíme se zde popsat některé základní rozdíly. Centrální zdroje Hlavním zdrojem aktualizací na platformě Windows je systém Microsoft / Windows Update. Tento systém se v aktuálním provedení nemusí starat jen o operační systém jako takový, ale také o instalované aplikace, této funkce se však prozatím nevyužívá v celém rozsahu jejich možností. Většina organizací se spoléhá pouze na něj, a na aktualizační rutiny jednotlivých instalovaných programů. Implementace centrálního patch managementu pak bývá prováděna především s cílem zajistit homogenitu prostředí a snížit (dělá-li se z lokálního zdroje) zatížení síťových linek opakovaným stahováním aktualizací. V Linuxu je situace poněkud odlišná. Převážná většina současných distribucí spoléhá na svůj balíčkovací nástroj, který má nestarosti nejen operační systém, ale také všechny aplikace, které jsou instalovány z dodavatelem spravovaných repozitářů, tedy centrálních zdrojů softwaru. Také aktualizace aplikací třetích stran se obvykle neprovádějí pomocí rutin integrovaných přímo do programů, ale prostřednictvím standardního systému s tím, že do jeho registru jsou zavedeny příslušné repozitáře. Velkou výhodou této cesty z pohledu správců systémů je unifikace aktualizačního procesu. Nedostatkem pak jisté snížení redundance. V možnostech správců Linuxových systémů je konfigurace funkcí aktualizace a (v případě větších organizací) jejich centralizace do lokálního repozitáře. Ten je doplňován ze zdrojů dodavatele distribuce a autorů v organizaci instalovaných aplikací s tím, že samotný proces aktualizace probíhá lokálně v rámci místní sítě, případně vnitřní infrastruktury. Organizacím využívajícím větší množství Linuxových počítačů se využití lokálních repozitářů doporučuje, a to nejenom kvůli ušetření síťového provozu na straně k ISP, ale především z důvodů, které budou popsány dále. Záplaty pro každého Dodavatelé Linuxových distribucí aktualizují své systémy obvykle častěji, než Microsoft. Některé distribuce mají definována pravidla pro vydávání aktualizací podobně, jako je tomu u Microsoftu. To se týká především těch systémů, které jsou přímo určeny pro korporátní sféru. U mnoha dalších ale distribuce aktualizací probíhá spíše nepravidelně a dle aktuální potřeby. Obecně platí, že pro Linuxové distribuce je vydáváno větší množství patchů a ty jsou dostupné častěji, než pro Microsoft Windows. Tento stav je dán mimo jiné faktem, který zde již byl zmíněn. A sice, že v Linuxových distribucích jsou z centrálních zdrojů aktualizovány nejenom systémové komponenty, ale také převážná část instalovaných aplikací. Proces instalace aktualizací je na klientské straně obvykle plně automatizován a při správném nastavení nevyžaduje ze strany administrace žádné zásahy. Solidní (ne)jistota Dodavatelé korporátních distribucí před vydáním všechny aktualizace podrobně testují. U nich, a tím spíše u distribucí typu Ubuntu ale platí, že dodané aktualizace se vyplatí zkoušet lokálně ještě dříve, než povolíme jejich instalaci na klientská PC (a tím spíše na servery). Může docházet, i když je to spíše výjimečný jev, že aktualizované komponenty způsobují funkční problémy, nebo snižují kompatibilitu mezi sebou a svým okolím. Riziko zhoršení kompatibility je přitom obecně závažnější, než u Microsoft Windows. Je pravidlem, že aplikace, které v systémech Windows obsahují vlastní aktualizační rutiny, jsou této funkce v Linuxu zbaveny. Je to proto, ab byla zajištěna homogenita. Současně však tento jev vkládá mezi tvůrce programů a jejich instalace další prvek. Tento další prvek může vést k relativnímu zpoždění dostupnosti aktualizací pro konkrétní programy (po vydání dodavatelem konkrétního softwaru musí být nabalíčkovány, schváleny a zpřístupněny tvůrci distribuce), a současně také k vyřazení některých, jinde běžných funkcí. Příkladem toho jsou programy, které ve Windows využívají své aktualizační rutiny běžně k povyšování na nové celé, nebo poloviční verze. V Linuxových distribucích kde je oficiálně podporována konkrétní generace daného programu, ale něco takového není možné, a dosažení funkcionality z Windows lze provést pouze ruční instalací nové generace programu, nebo přidáním příslušného repozitáře jeho výrobce do správce balíků. Tím se ale zakládá na možné zhoršení kompatibility, protože nové generace aplikace nejsou dodavatelem distribuce podporovány. Hybridní stav Ve velkých sítích, kde jsou systémy na bázi Linuxu používány dohromady s Microsoft Windows, se nasazují profesionální nástroje pro patch management, které jsou v rámci sítě a na lokálních PC udělených oprávnění spravovat systémy s oběma platformami. Tyto nástroje výrazně ulehčují práci administrátorům, ale současně je mohou dostat do stavu falešné iluze o tom, že správa aktualizací na Linuxu je srovnatelně jednoduchá s Windows. Důsledkem toho mohou být negativní jevy, které byly popsány výše, a před kterými je dobré se mít na pozoru, zejména pokud aktualizace nepředstavují jen nezbytná ošetření bezpečnostních chyb, ale přidávají například novou funkcionalitu, nebo třeba mění uživatelské rozhraní a chování instalovaných aplikací. Přesto jejich využití lze doporučit, ovšem jen s určitou mírou preventivní ostražitosti. Typologie pracovišť a patchů Linux je v organizacích využíván poměrně široce. I když za základ můžeme považovat klasická pracovní PC, mnohem častěji jej najdeme na počítačích, kde slouží jako operační prostředí pro aplikace běžící na principu terminálových služeb, nebo pro víceméně jednoúčelové informační kiosky. Předností těchto počítačů je, že jejich systémy obsahují menší množství softwarových komponent, a tedy je pro ně vydáváno méně aktualizačních balíčků. Stojí za zváženou, zda u těchto systémů není vhodnější omezit patchování na úroveň nezbytných bezpečnostních záplat, a zrezignovat tak nejenom z přidávání nové funkcionality do instalovaných komponent, ale hlavně na potenciální problémy, které s tím mohou být spojené. Na rozdíl od Windows, kde jsou jak pro samotný systém, tak i pro aplikace obvykle vydávány pouze produkční a tedy důkladně testované aktualizace existuje ve světě Linuxu několik kategorií patchů. Vedle těch, které jsou porovnatelné s Windows, jsou to dále doporučené, nebo dokonce testovací aktualizace. Zavádění druhých jmenovaných do provozních počítačů v organizaci je potřeba důsledně zabránit, i když mohou být systémům i uživatelům užitečné. Dále se používají aktualizace, které do instalovaného softwaru vnášejí funkcionalitu z jeho novějších verzí, aniž by ale software na úroveň těchto verzí povyšovaly (tzv. backporty). Backporty mohou být užitečné, protože prodlužují morální životnost softwaru, také ony se ale mohou stát zdrojem potíží s kompatibilitou. Dodavatelé Linuxu pro korporátní sféru obvykle pracují s dlouhodobým životním cyklem svých produktů, který (analogicky k Microsoftu) obsahuje období funkčních, a pak velmi dlouhou dobu bezpečnostních aktualizací. U distribucí, které k tomuto účelu nejsou primárně určeny (a jejich využívání nemusí být vázáno smlouvou uživatele s dodavatelem), ale mohou být tato období krátká, někdy dokonce v řádu měsíců. Ukončení podpory na úrovni bezpečnostních aktualizací ze strany tvůrců distribuce pak v podnikovém prostředí takřka jistě znamená nutnost přechodu na novější generaci distribuce, nebo dokonce na distribuci jiného dodavatele. Zatímco první z těchto kroků je proces, který lze v jistých případech realizovat automaticky, (upgrade kompletního operačního systému se chová jako velká aktualizace), a byť s jistými výhradami spolehlivě – především je tento proces nezbyté extrémně důkladně testovat – druhý je náročný, komplikovaný a především drahý. Je v každém případě nutné se jej vyvarovat, a to lze provést pouze velmi pečlivým výběrem před samotnou implementací distribuce. Závěr Patch management v Linuxu má oproti Windows svá specifika. Ta však nijak nesnižují využitelnost Linuxu jako operačního systému pro podnikovou sféru. Jediné, co je potřeba je uvědomit si zmíněná specifika a vlastnosti a jim se pak přizpůsobit. Prvním, a nejdůležitějším krokem je věnovat aktualizacím pozornost a ty důležité testovat ještě před jejich implementací. Je také nezbytné volit takovou distribuci, jejíž dodavatel garantuje dlouhou dobu podpory, přičemž není od věci využívat služeb těch firem, které aktualizace čas od času shrnují do komplexních (a otestovaných) servisních balíků, respektive vydání. Daleko více, než v případě Windows se pak vyplatí využívat k aktualizacím vlastní repozitáře a neprodukční PC. V případě, že jsou všechny tyto podmínky splněny, není potřeba se bát ani kompletního upgrade operačního systému s využitím jeho aktualizačních rutin a profitovat tak z flexibility otevřeného operačního prostředí. |



















