Jak víme, aktualizace linuxového jádra dostáváme znovu a znovu a je nezbytné pravidelně aktualizovat bezpečnostní záplaty jádra, abychom tuto zranitelnost jádra překonali. Je nutné nainstalovat nejnovější bezpečnostní záplaty co nejdříve, protože pokud budete s instalací záplaty otálet, můžete přivolat hrozby pro váš systém.
Linuxové systémy se používají pro samostatné webové servery, webové aplikace a webhostingové služby. Díky tomu se stává hlavním cílem hackerů, kteří používají techniky, jako jsou útoky DDOS (denial of service), vzdálené spouštění kódu (RCE) atd. Udržování správných bezpečnostních záplat a udržování systému v aktuálním stavu pomáhá OS zpřísnit zabezpečení proti takové hrozby. Většina linuxových distribucí však vyžaduje restart k aktualizaci jádra, což způsobí výpadky. Naučíme vás také různé způsoby aktualizace jádra.
Aktualizovat jádro pomocí příkazu
Aktualizace jádra operačního systému Linux přes příkazový řádek je velmi snadná. Stačí spustit příkaz aktualizace jádra a restartovat počítač.
- Spuštěním níže uvedeného příkazu aktualizujte jádro na CentOS nebo RHEL nebo jiné distribuci založené na RPM.
sudo yum update kernel sudo reboot
- Spusťte níže uvedený příkaz a aktualizujte jádro na Ubuntu.
sudo apt-get upgrade linux-image-generic
sudo reboot
- Aktualizujte jádro v Debianu pomocí níže uvedeného příkazu.
sudo apt-get upgrade kernel sudo reboot
Jak vidíme, výše uvedené příkazy se při aktualizaci jádra spouštějí velmi snadno, ale jedna věc, které se nemůžete vyhnout, je restartování serveru! Ano, pro dokončení aktualizace jádra je nutné restartovat server. Pokud používáte tyto OS k hostování velké webové stránky elektronického obchodu nebo spouštíte webovou aplikaci, musíte své uživatele upozornit na tuto údržbu a také musíte počkat, než se server po restartu zprovozní. Aby se těmto prostojům vyhnuli, někdy se správci systému vyhýbají aktualizacím jádra a to se stává vážným bezpečnostním problémem.
Aktualizujte pomocí kexecu pro rychlé restartování
Kexec nabízí velmi rychlý krok restartu. Přeskočí proces načítání a inicializace hardwaru, aby se zkrátila doba restartu.
CentOS/RHEL:
- Nejprve nainstalujte nástroje kexec spuštěním níže uvedeného příkazu.
sudo yum install kexec-tools
- Nainstalujte nové jádro.
sudo yum update kernel
nebo
sudo rpm -qa kernel
kernel-3.10.0-514.26.1.el7.x86_64
kernel-3.10.0-1127.el7.centos.plus.x86_64Potom spusťte systém ze zvolené verze.
sudo kexec -l /boot/vmlinuz-3.10.0-1127.el7.centos.plus.x86_64 \
-initrd=/boot/initramfs-3.10.0-1127.el7.centos.plus.x86_64.img \
-reuse-cmdline
sudo sync; sudo umount -a; sudo kexec -e
Spuštěním níže uvedeného příkazu vyberte požadované jádro.
sudo kexec -e
Ubuntu/Debian:
- Nainstalujte nástroje kexec spuštěním níže uvedeného příkazu.
sudo apt-get install kexec-tools
Po stisknutí příkazu se zobrazí níže uvedená obrazovka pro potvrzení restartu pomocí kexec-tools
- Než to uděláte, musíte si být jisti, protože kexec-tools neumožní příkaz reboot zabít procesy, synchronizovat mezipaměti nebo odpojit systém souborů a může dojít k poškození nebo ztrátě dat.
Aktualizovat jádro bez restartu
Jádro je možné aktualizovat bez restartu. Bude to užitečné pro systémy, které běží na vysoké dostupnosti. Mnoho dodavatelů distribuce Linuxu nabízí aktualizace jádra bez provedení restartu.
Kpatch Red Hat
Red Hat nabízí svůj vlastní nástroj pro záplatování jádra pro Fedoru, CentOS a další systémy založené na Debianu, jako je Ubuntu.
- Spusťte níže uvedený příkaz deploy Kpatch na RHEL7.
sudo yum install kpatch
sudo yum install kpatch-patch-X.X.X.el7.x86_64.rpm
Nejedná se však o automatickou instalaci opravy. Musíte zkontrolovat každý patch jádra, když je dostupný.
CloudLinux KernelCare
KernelCare nabízí živou službu záplatování linuxového jádra, včetně RHEL, CentOS, Oracle, Debian, Ubuntu Linux atd. Podporuje také starší verze, jako je RHEL 6.
- Spuštěním níže uvedeného příkazu nainstalujte kernelcare.
wget -qq -O -- https://kernelcare.com/installer | bash
sudo /usr/bin/kcarectl --register <your key>
Protože se jedná o řešení „nainstaluj a zapomeň“, kernelCare stahuje a aplikuje nové bezpečnostní záplaty jádra automaticky bez restartu.
KernelCare také nabízí složitější bezpečnostní záplaty pro zranitelnosti, jako je Spectre (CVE-2017-5753,CVE-2017-5715) a Meltdown (CVE-2017-5754). Podporuje také vrácení bez restartu, opravy s pevným datem, zpožděné opravy atd. CloudLinux kernelcare není bezplatný. Nabízejí 7denní bezplatnou zkušební verzi, poté bude placená.
Oracle Ksplice
Ksplice je placená verze pro aktualizaci jádra bez nutnosti restartu.
- Spusťte níže uvedený příkaz a nainstalujte Ksplice.
sudo wget -N https://ksplice.oracle.com/uptrack/install-uptrack-oc sudo sh install-uptrack-oc -autoinstall
Při použití Ksplice stačí spustit instalační skript pouze jednou za celou dobu životnosti a poté se Uptrack postará a automaticky nasadí nejnovější jádro bez výpadků.
Canonical Livepatch Service
Toto je technologie společnosti Canonical pro (hádejte co?) záplatovací jádra. (Canonical je společnost, která stojí za populární linuxovou distribucí Ubuntu.) Můžete dokonce vytvářet své vlastní opravy, i když to může být obtížná a časově náročná práce. (Někteří dodavatelé vám za poplatek vytvoří aktualizační jádro Ubuntu.)
Canonical je oblíbená softwarová společnost pro distribuci Linuxu na bázi Ubuntu. Níže uvedený příkaz bude užitečný pro Ubuntu 16.04 a novější a RHEL 7.x (beta).
Budete muset spustit níže uvedený příkaz k nasazení živé opravy.
sudo snap install canonical-livepatch
sudo canonical-livepatch enable [TOKEN]
Canonical Livepatch nabízí bezplatnou službu až pro 3 distribuce Ubuntu. Chcete se přihlásit k odběru tokenu. Klikněte sem k registraci.