Az automatikus, újraindítás nélküli rendszermag-frissítések beállítása a Linux szervereken - HowtoForge
Az automatikus, újraindítás nélküli kernelfrissítések beállítása a Linux szervereken
A kernel javítása Linux szerveren egyszerűnek tűnik. Meg lehet csinálni olyan általános eszközökkel, mint a dpkg, az apt-get vagy a kexec. Ezek a módszerek azonban bonyolultabbá válnak, ha egy szervezetnek több száz vagy ezer szervere van. Sok kiszolgáló több disztribúciót jelent a javításhoz, amelyek mindegyikéhez rendszergazda vagy mérnök személyes figyelmére van szükség.

Ezek a manuális javítási módszerek abban az esetben is kockázatosak, mert újraindítást igényelnek. Az újraindítás a kiszolgáló leállásával jár, ami mindig problémás, ezért általában újraindítási ciklusokban hajtják végre őket. Mivel a manuális javítás ezekben a ciklusokban történik, a hackereknek „időablakot” ad, hogy megtámadják a szerver infrastruktúráját.
Néhány szervernél többet futtató szervezetek számára jobb megoldás az élő javítás. Ez egy automatizált módszer a Linux kernel javítására a kiszolgáló futása közben, ezáltal hatékonyabbá és biztonságosabbá teszi, mint a manuális módszereket. Tanuljuk meg, hogyan állíthat be négy legnépszerűbb élő javító rendszert a Canonical, az Oracle, a Red Hat és a CloudLinux alkalmazásból.
Mi az élő javítás és hogyan működik?
Végül két módszer létezik a kernek és könyvtárak élő javítására: ideiglenes és tartós. Az ideiglenes módszer egy javítást újraindítás nélkül alkalmaz, de valójában a kiszolgáló későbbi újraindítását igényli. A folyamatos élő javítás nem igényel újraindítást.
Az ideiglenes módszer
Az ideiglenes módszert (vagy "verem" javítást) csomagkezelő szoftverrel (például a YUM beépülő modullal) hajtják végre. A javításokat a tárolókhoz szállítjuk, és a felhasználó által meghatározott frissítési munkafolyamatoknak megfelelően alkalmazzuk.
A „verem” javítás a szerver újraindításának és az üzemszünetnek a szinonimája, bár lehet, hogy a javítás telepítése után nem kell azonnal újraindítania, de az ilyen típusú élő frissítés architektúrája miatt a biztonsági javítások idővel felhalmozódnak, növelve a teljesítményt és A stabilitás csökkenhet. Az egyetlen megoldás erre a problémára a kiszolgáló újraindítása, hogy új kernelt töltsön be a memóriába.
Az ideiglenes javításokat nyújtó szolgáltatók a következők:
A kitartó módszer
Perzisztens módszer esetén a szerver a legújabb javításokat tárolja, ezeket a javításokat azért hívják „monolitikusnak”, mert korábbi javításokat tartalmaznak. A szerverek frissítéséhez egy ügynökprogram fut a háttérben, amely ellenőrzi a javítószerver javításait. Ha van javítás egy rendszermaghoz a javítószerveren, az ügynök felhívja a javítómotort, és alkalmazza a javítást.
A tartós javításnak további fontos előnyei vannak:
- A perzisztens módszert használó szerverek ragaszkodnak olyan hardveres sebezhetőségekhez is, amelyek javításához általában újraindításra van szükség, például a Spectre, az Meltdown és a Zombie Load;
- Csökkenti a szerverek kezeléséhez szükséges időt és erőfeszítést a javítási folyamat teljes automatizálásával;
- Ez lehetővé teszi a szerverek számára, hogy folyamatosan működjenek, gyakran évekig .
Az állandó javítási módszer általában a gyártói díjakkal jár, a legtöbb gyártó ingyenes próbaidőszakokat kínál:
Automatikus, újraindítás nélküli kernelfrissítések beállítása Linux szervereken
A következőkben bemutatjuk, hogyan állíthatunk be újraindítás nélküli kernelfrissítéseket a Linux szervereken a Livepatch, Kpatch, Ksplice és KernelCare szolgáltatások használatával.
Megjegyzés: Mielőtt elkezdené végrehajtani ezeket az utasításokat, ellenőrizze, hogy rendszere naprakész és biztonságos-e.
1. Állítsa be a kanonikus livepatch-et
A Canonical Livepatch Service telepítés közben vagy után is beállítható. Csak akkor telepíti a rendszermag biztonsági javításait, amikor az apt-get upgrade parancsot futtatja (ezért félautomata).
Előnyök: Könnyen. Félautomata. Nincs szükség újraindításra.
Hátrányok: Drága 4 vagy több gazdagép számára (de szabadítson fel akár 3 gazdagépet mindenki számára, és akár 50 gépet is, ha tagja az Ubuntu közösségnek). Nincs patch rollback.
Díjak szerverenként: Havonta (nem elérhető), évente (225 USD).
A Livepatch telepítéséhez egy Ubuntu 20.04 LTS szerverre (a 16.04 LTS, 14.04 LTS és 18.04 LTS verziókon is működik) nyissa meg a terminált, és futtassa a következő két parancsot:
Kiszolgáló regisztrációjának törléséhez használja ezt a parancsot:
A szolgáltatás állapotának ellenőrzéséhez használja ezt a parancsot:
2. Állítsa be az Oracle Ksplice alkalmazást
Ha nem az Oracle Cloud szolgáltatásban futtatja a Ksplice példányát, akkor a telepítéshez hozzáférési kulcsra lesz szüksége. Ezt úgy kaphatja meg, hogy bejelentkezik az Unbreakable Linux Network-be, és követi az utasításokat a rendszer regisztrálásához a Ksplice-be.
A Ksplice telepítéséhez a rendszernek hozzáférnie kell az internethez. Ha proxyt használ, állítsa be a proxyt a héjában:
A proxynak támogatnia kell a HTTPS kapcsolatokat, és a proxy karaktersorozatnak a következő formátumban kell lennie:
- A protokoll a proxyhoz (http vagy https) való csatlakozás protokollja
- A felhasználónév és a jelszó a proxy használatához szükséges hitelesítési információ (ha van ilyen).
- A hoszt és a port a hosztnév/IP-cím és a portszám, amelyet a proxyhoz való csatlakozáshoz használnak
Futtassa az alábbi utasításokat root felhasználóként, és cserélje le a YOUR_ACCESS_KEY kulcsot az előző lépésben kapott hozzáférési kulccsal.
Az Oracle felhő belsejében
A Ksplice telepítéséhez az Oracle Cloud szolgáltatásba a kernelfrissítések automatikus telepítéséhez futtassa az alábbi parancsokat:
Az elérhető frissítések alkalmazásához az Uptrack alkalmazáshoz, amely automatikusan telepíti a rendszermag-frissítéseket, futtassa a következő parancsot:
Ha az Uptrack már telepítve van, akkor bekapcsolhatja az autoinstall = ja használatával az /etc/uptrack/uptrack.conf fájlban a Ksplice telepítése után.
A Ksplice telepítéséhez a frissítések manuális elvégzéséhez futtassa az alábbi parancsokat:
Az Oracle felhőn kívül
A Ksplice telepítéséhez az Oracle Cloudon kívülre, hogy a kernelfrissítések automatikusan települjenek, futtassa az alábbi parancsokat:
A Ksplice telepítéséhez a frissítések manuális alkalmazásához futtassa az alábbi parancsokat:
Megjegyzés: Ha a Ksplice-t Debian vagy Ubuntu szerverre telepíti, akkor szüksége lehet a ca igazolások Csomagolás apt-get install ca tanúsítványok . A csomag nélkül "Tanúsítványellenőrzési hiba" jelenik meg.
4. Állítsa be a Red Hat Kpatch alkalmazást
A Kpatch telepítése egyszerű és egyszerű:
Futtassa a frissítési parancsot a csomagtárak frissítéséhez és a legfrissebb csomaginformációk megszerzéséhez:
A csomagok és függőségek gyors telepítéséhez futtassa az install parancsot a -y jelzővel:
5. Állítsa be a CloudLinux KernelCare alkalmazást
Ha meg szeretné tudni, hogy a futó kernelt támogatja-e a KernelCare, futtassa az alábbi parancsok egyikét:
A KernelCare telepítéséhez futtassa a két parancs egyikét:
Ha IP-alapú licencet használ, semmi másra nincs szükség. Ha kulcsalapú licencet használ, futtassa a következő parancsot:
A KEY a regisztrációs kulcs kódsztringje, amelyet akkor kapott, amikor megvásárolta a KernelCare programot, vagy amikor regisztrált egy ingyenes próbaverzióra. Itt kaphat kulcsot .
Kiszolgáló regisztrációjának futtatásához futtassa azt:
A szolgáltatás állapotának ellenőrzéséhez futtassa:
A KernelCare 4 óránként automatikusan ellenőrzi az új javításokat. Az automatikus manuális frissítéshez futtassa őket:
következtetés
A több élő javító megoldás telepítési útmutatója ismerteti az összes olyan lépést, amely szükséges egy ilyen megoldás telepítéséhez a környezetébe. Ha ez megtörtént, élvezheti az élő javítási technológia előnyeit: frissítheti a kernelt a szerver leállítása nélkül, hónapok vagy évek újraindítása nélkül.