V tomto článku se dozvíte, co je to Linux Kernel live patching, jak zajišťuje dobu provozuschopnosti, jakých 5 nástrojů vám pomůže provozovat servery po léta – bez restartování a jaké jsou výhody a nevýhody každý nástroj.
V organizacích IT existují procesy a postupy tak rutinní, že jsou neviditelné. Nezáleží na tom, zda jsou tyto procesy a praktiky chybné, nebo zda existuje lepší způsob:pokud něco funguje několik let, lidé přestanou hledat alternativy. To dokonale popisuje současné přístupy k záplatování jádra .
V současné době většina organizací opravuje servery plánováním cyklů restartování. Protože restartování serverové flotily je bolest hlavy, která způsobuje prostoje, lidé jej odkládají tak dlouho, jak jen mohou. To znamená, že záplaty nejsou aplikovány co nejdříve. Tato mezera mezi problémem s opravou a její aplikací znamená riziko, nesprávný postup a může způsobit nesoulad.
Tento standardní přístup k opravám jádra vystavuje servery nekalým záměrům aktérů hrozeb na více vektorech útoků, což vystavuje IT organizace riziku závažných bezpečnostních problémů. Každý, kdo má za úkol chránit svou organizaci před kybernetickými útoky, by měl hledat lepší způsob, jak provozovat linuxové servery bez restartování (v ideálním případě po léta).
Proč existuje živé opravování
V roce 2009 student MIT spravující webový server zpozdil opravu linuxového jádra serveru, protože aplikace opravy by vyžadovala restart, což jeho uživatele nepříjemně trápilo. Během zpoždění byl server hacknut. To inspirovalo studenta Jeffa Arnolda , abychom se pokusili vyvinout způsob opravy linuxového jádra bez restartování serveru.
Spojil se s dalšími třemi studenty, aby vyvinuli Ksplice , první softwarový nástroj „bez restartu“ pro záplatování linuxových jader. Založili společnost na propagaci svého nového produktu, který získal Oracle. Když Oracle integroval Ksplice se svou vlastní distribucí, Oracle Linux, začali další linuxoví prodejci pracovat na svých vlastních živých záplatovacích systémech.
To proto, že živé záplatování – aplikace bezpečnostních záplat na server, když je spuštěný, bez nutnosti restartu – nabízí cenné možnosti organizacím, které spravují více serverů:
- Nepřetržitý provoz serverů bez restartování. To znamená malé nebo žádné prostoje.
- Automatizace úloh souvisejících s opravami. Zaměstnanci podpory tak mohou dělat jinou práci.
- Okamžitá aplikace nových oprav. To výrazně snižuje zranitelnost serveru.
Jak funguje oprava Linux Kernel Live
Existují dva základní způsoby opravování linuxového jádra v reálném čase:dočasné a trvalé . Dočasná metoda aplikuje opravu bez restartu, ale ve skutečnosti později vyžaduje restartování serveru. Trvalé opravy v reálném čase nevyžadují vůbec žádný restart.
Dočasná metoda
dočasná metoda Live patching vyžaduje, aby byl na serveru nainstalován software pro správu balíčků (jako je plugin YUM). Když jsou opravy doručeny do úložišť, jsou aplikovány podle pracovních postupů aktualizace určených uživatelem.
Tato metoda je součástí některých distribucí operačního systému Linux a smluv o podpoře některých dodavatelů. Nemělo by to však být považováno za bezplatné nebo levné, protože zahrnuje náklady na čas a problémy, které nejsou předem zřejmé.
Dočasná metoda, nazývaná také „záplatování“, zahrnuje restartování serveru a výpadky. Je to proto, že dočasné záplaty se v průběhu času hromadí jedna na druhé, což snižuje výkon a stabilitu. Jediným řešením tohoto problému je restartování serveru, aby se nahrálo nové jádro do paměti.
Trvalá metoda
Pomocí trvalé metody pro živé záplatování, vyhrazený záplatový server ukládá nejnovější záplaty. Tyto záplaty jsou „monolitické“, nikoli dočasné, protože zahrnují předchozí záplaty. Na webových serverech, které mají být opravovány, běží na pozadí program agenta, který pravidelně kontroluje opravný server, zda neobsahuje opravy. Když dostane od agenta pokyn, modul jádra provede opravu.
Tato metoda zahrnuje licenční poplatky dodavatele, ale tyto poplatky mohou být překvapivě nízké. Trvalá metoda také při nahrazení ruční práce automatizovanými procesy snižuje čas a úsilí potřebné ke správě serverů. A co je nejdůležitější, protože nevyžaduje žádné restartování, umožňuje serverům zůstat v provozu, někdy i několik let.
Trvalé živé opravy nabízí také další důležité výhody. I v případě hardwarových zranitelností, které obvykle vyžadují restartování počítače, jako je Spectre , Zhroucení a Zombieload , servery používající persistentní metodu zůstávají v provozu. Funguje také se skenery zranitelnosti, což je důležité pro soulad s bezpečnostními standardy, jako je SOC2.
Doporučeno k přečtení:
- Jak zkontrolovat zranitelnosti Meltdown a Spectre a opravit je v Linuxu
5 Live Patching Systems Linux Kernel Live Patching Systems, které pomohou provozovat linuxové servery bez restartování
Existuje několik různých systémů pro záplatování jádra od různých dodavatelů, z nichž většina je určena pro použití s konkrétní distribucí Linuxu:
Oracle Ksplice
Ksplice je původní „bezrebootovací“ záplatovací systém linuxového jádra, vytvořený v roce 2009 a získaný společností Oracle v roce 2011. Nyní funguje pouze s Oracle Linux a RHEL s licencí Oracle. Postrádá funkci plánování, ale provádí automatické aktualizace záplat bez nutnosti restartu.
RedHat Kpatch
Kpatch byl vytvořen společností Red Hat, aby pracoval na vlastní distribuci Linuxu, i když jej lze portovat na systémy založené na Fedoře, CentOS a Debianu, jako je Ubuntu a Gentoo. Není to automatické:s Kpatch musí správce zkontrolovat a aplikovat opravy ručně.
SUSE Kgraft
Kgraft je živý záplatovací systém SUSE a funguje pouze s vlastním Linux Enterprise Serverem SUSE. Na rozdíl od jiných systémů Kgraft nezastavuje funkce jádra, když jsou aplikovány opravy. Místo toho monitoruje funkce, takže může aplikovat všechny záplaty v rámci jediného systémového volání.
Ubuntu Livepatch
Livepatch byl vytvořen společností Canonical, která vyvíjí Ubuntu. Mezi živými záplatovacími systémy je jedinečný v tom, že umožňuje správcům vytvářet vlastní záplaty jádra. Funguje to samozřejmě na Ubuntu, ale také na Red Hat Enterprise Linux.
KernelCare
KernelCare, vyvinutý společností CloudLinux, funguje s nejpopulárnějšími distribucemi, jako jsou CentOS, RHEL, Oracle Linux, Amazon Linux, Debian a Ubuntu. Je automatizovaný, snadno se instaluje, zvládá složité záplaty a poskytuje vlastní záplaty s pevným datem pro splnění specifických potřeb.
Srovnání funkcí a cen
Možnosti oprav
KernelCare | Oracle Ksplice | Red Hat Kpatch | SUSE Kgraft | Ubuntu Livepatch | |
Distribuce sady oprav | Jedna sada oprav pro všechny opravy | Každý je samostatný modul | Každý je samostatný modul | Každý je samostatný modul | Jedna sada oprav pro všechny opravy |
Časování vydání | Před nebo krátce po základní distribuci | Po opravě v základní distribuci | Není poskytnuto | Odpovídá cyklům vydání SUSE | Odpovídá cyklům vydání UBUNTU |
Záplatování Glibc | Ano | Ano | Ne | Ne | Ne |
Oprava OpenSSL | Ano | Ano | Ne | Ne | Ne |
Vlastní opravy | Ano | Ne | Ano | Ano | Ne |
Kompatibilita a implementace
KernelCare | Oracle Ksplice | Red Hat Kpatch | SUSE Kgraft | Ubuntu Livepatch | |
Podporuje starší jádra? | Ano | Ano | Ne | Ne | Ne |
32bitová podpora? | Vlastní | Ano | Ne | Ne | Ne |
Dostupné rozhraní API? | Ano | Ano | Ne | Ano | Ano |
Funkce vrácení zpět? | Ano | Ano | Ne | Ne | Ne |
Funguje za firewallem? | Ano | Ano | Ano | Ano | Ano |
Podporované distribuce
Oracle Ksplice | Oracle Linux, Fedora 25-27, Ubuntu Desktop 14.04-17.10 |
Kpatch Red Hat | Red Hat Enterprise Linux, Ubuntu, Debian, Gentoo |
SUSE Kgraft | SUSE |
Ubuntu Livepatch | Ubuntu |
KernelCare | CloudLinux OS, Amazon Linux 1 &2, CentOS, Debian, OpenVZ, Oracle Enterprise Linux, Oracle UEK, Proxmox VE, Red Hat Enterprise Linux, Ubuntu, Ubuntu Core, Virtuozzo , Xen4 CentOS, Yokto |
Cena za server
Oracle Ksplice | 2 299 USD (1 399 USD) za server a rok:cena předplatného Oracle Linux Premier nebo (omezené) podpory |
Kpatch Red Hat | 1299 $ za server a rok:cena předplatného podpory RHEL Premium |
SUSE Kgraft | 2198 $ za server a rok:kombinované náklady na službu oprav v reálném čase (699 $) a předplatné na prioritní server (1499 $) |
Ubuntu Livepatch | 225 USD za server za rok, 75 USD za rok pro virtuální stroje:cena za předplatné podpory Ubuntu Advantage |
KernelCare | 27 USD za server za rok, za licenci na více než 500 serverů. |
Související čtení
- Detekce zastaralých sdílených knihoven v paměti pomocí Uchecker
Který systém živého záplatování Linux Kernel je pro vás nejlepší?
Pro společnost provozující webové servery interně, s velkým počtem systémových administrátorů, standardizovanými systémy a stávajícími smlouvami na podporu se společnostmi Oracle, Red Hat nebo SUSE mohou výhody používání zahrnutých záplatovacích systémů převážit nad náklady. Pravidelná interakce s podpůrnými operacemi těchto dodavatelů může pomoci zefektivnit jejich vlastní.
Pro organizaci provozující webové servery, které jsou standardizované na Ubuntu, je její systém Livepatch, který je součástí jejího předplatného podpory, dobrou volbou. Systém je v pořádku a náklady jsou nízké ve srovnání s výše uvedenými smlouvami o podpoře.
Pro společnost s velkou flotilou serverů, která zahrnuje různé distribuce Linuxu, je systém KernelCare jedinou schůdnou možností. Je to také dobrá volba pro společnosti, které se týkají nákladů a efektivity, protože poskytuje automatizované, flexibilní opravy za nízkou cenu.
Pro firmy provozující zařízení s připojením k internetu jako součást „Internet of Things“ je KernelCare jedinou možností. Většina těchto zařízení používá linuxové kontejnery, a když jsou hacknuta, může to mít smrtelné následky, takže udržovat jejich jádra záplatovaná je zásadní. Díky rychlému načasování oprav v systému KernelCare je vhodný pro aplikace IoT.
Související čtení:
- Různé způsoby aktualizace jádra Linuxu pro Ubuntu
Používáte v současné době některý z výše uvedených živých záplatovacích systémů? Podělte se prosím o své myšlenky v sekci komentářů níže.