Ugrás a tartalomhoz

Sütibeállítások

Típusonként válassza ki, mely sütiket engedélyezi. Választását bármikor módosíthatja a Sütibeállítások linken, amely minden oldal alján megtalálható. Adatvédelmi nyilatkozat

Szükséges

Mindig bekapcsolva

A bejelentkezéshez, a kosár megőrzéséhez és a választásai megjegyzéséhez szükségesek. Ezek mindig be vannak kapcsolva.

Milyen sütik?
  • weboke_sessie, weboke_klant, weboke_remember: a munkamenet és a bejelentkezve maradás
  • weboke_basket: a kosár
  • wkBtwIncl: az árak megjelenítése ÁFÁ-val vagy anélkül
  • wok_cookies: a sütiválasztás, 12 hónap

Méri, melyik hirdetés vezet látogatáshoz vagy rendeléshez, hogy ne fizessünk hatástalan hirdetésekért.

Milyen sütik?
  • Google Ads a Google Tag Manageren keresztül (_gcl_au, _gcl_aw), legfeljebb 90 napig
  • OpenAI Ads, hirdetések a ChatGPT-ben
  • wok_aff: melyik partnerünk ajánlására érkezett (partnerprogram), 60 nap

4,6

Ország és nyelv

Minden országnak saját oldala van, az adott ország áraival és ÁFA-jával.

Megtekintés

Hardening és CIS-elvek

Modul 10: Biztonságban maradni · Olvasási idő: 11 perc

Tanulási cél: A lecke után el tudja magyarázni, mi a hardening és milyen elvek állnak mögötte, tudja, mik a CIS Benchmarks és hogyan használja őket körültekintően, és a Lynis segítségével rendszerezetten át tudja vizsgálni a szerverét.

Kulcsfogalmak: hardening (rendszerkeményítés), támadási felület, minimális telepítés, minimális jogosultságok (least privilege), többrétegű védelem (defense in depth), CIS Benchmarks, Level 1 és Level 2, CIS Controls, Lynis, hardening index, AppArmor, SELinux, sysctl, időszinkronizálás

Mi a hardening?

Egy frissen telepített Debian vagy Ubuntu meglehetősen biztonságos, de úgy készült, hogy minél több helyen működjön. A hardening (rendszerkeményítés) azt jelenti, hogy a szervert pontosan az Ön felhasználási módjához igazítja: minden megszűnik, amire nincs szüksége, és minden szigorúbb lesz, ami szigorúbb lehet, anélkül hogy a saját szolgáltatásai elromlanának.

Az előző modulokban ezt már lépésről lépésre megtette: SSH kulcsokkal (modul 2), egy hétköznapi felhasználó sudo jogosultsággal (modul 3), automatikus frissítések (modul 4), tűzfal és fail2ban (modul 5), saját felhasználók alatt futó szolgáltatások (modul 6). Ez a lecke keretbe foglalja ezeket a különálló intézkedéseket, így láthatja, mi hiányzik még.

Négy elv

1. Kicsi támadási felület. Ami nincs, az nem tud elromlani. Minden telepített szolgáltatás, minden nyitott port, minden fiók lehetséges belépési pont (lecke 5.1). Telepítsen minimálisan, és takarítsa el, amit már nem használ:

anna@web1:~$ systemctl list-units --type=service --state=running
anna@web1:~$ sudo ss -tulpn
anna@web1:~$ apt list --installed | wc -l

Ha olyan szolgáltatás fut, amelyet nem ismer, derítse ki, mit csinál (lecke 6.1). Ha nincs rá szüksége, távolítsa el a csomagot.

2. Minimális jogosultságok. Minden felhasználó és minden program csak a szükséges jogosultságokat kapja meg (lecke 3.2). Ne végezzen napi munkát root felhasználóként, a szolgáltatások fussanak saját felhasználók alatt, az adatbázis-felhasználók csak a saját adatbázisukhoz kapjanak jogot, és soha ne használjon chmod 777 beállítást.

3. Többrétegű védelem. Induljon ki abból, hogy egy intézkedés kudarcot vall. Egy adatbázis, amely csak a 127.0.0.1 címen figyel, és tűzfal mögött van, és erős jelszóval rendelkezik, akkor is biztonságos marad, ha a három közül az egyik véletlenül kiesik. Ezt nevezik defense in depth elvnek.

4. Tudni, mi történik. A hardening nemcsak lezárást jelent, hanem rálátást is: megőrzött naplókat (lecke 6.2), riasztó felügyeletet (lecke 8.3) és biztonsági mentéseket, amelyekkel vissza tud térni (modul 8). Ezek nélkül csak akkor veszi észre a betörést, amikor már késő.

A CIS Benchmarks

A Center for Internet Security (CIS) egy amerikai nonprofit szervezet, amely a CIS Benchmarks dokumentumokat készíti: termékenként részletes listákat ajánlott beállításokkal, amelyeket a biztonsági szakma önkéntesei állítanak össze. Több mint száz ilyen létezik, a Debian Linuxhoz és az Ubuntu Linuxhoz is, verziónként. A pdf-fájlok nem kereskedelmi célra ingyenesen letölthetők, egy fiók létrehozása után.

Egy Linuxra vonatkozó benchmark több száz ajánlást tartalmaz, mindegyikhez magyarázattal, ellenőrzési móddal és beállítási móddal. Az ajánlások profilokba vannak sorolva:

  • Level 1: alapintézkedések, amelyeket viszonylag gyorsan be lehet vezetni, egyértelmű biztonsági előnnyel, anélkül hogy a szerver sokkal kevésbé lenne használható. A legtöbb szervernél ez a cél.
  • Level 2: további intézkedések olyan környezetekhez, ahol a biztonság az elsődleges szempont (többrétegű védelem). Funkciókba vagy sebességbe kerülhetnek, és maga a CIS szerint kárt is okozhatnak, ha gondatlanul alkalmazzák őket.

Linuxnál külön profilok vannak szerverekhez és munkaállomásokhoz.

Példák egy Linux-benchmark témáira: külön partíciók a /tmp és a /var/log számára, nem használt fájlrendszerek és hálózati protokollok kikapcsolása, időszinkronizálás, auditnaplózás, SSH-beállítások (ezek közül sokat a 2.2-es leckéből ismer), jelszószabályzat, fontos fájlok jogosultságai és a tűzfal.

A Benchmarks mellett léteznek a CIS Controls is (jelenleg 8.1-es verzió): ezek nem termékenkénti beállítások, hanem egy egész szervezetre vonatkozó, tizennyolc intézkedéscsoportból álló lista, például "szoftverleltár", "sérülékenységek kezelése" és "adatok helyreállítása". Egyetlen szerverhez a Benchmarks hasznosabbak; a Controls akkor segítenek, ha az egész vállalkozásán gondolkodik.

Használja körültekintően a benchmarkot

A benchmark nem egy gomb, amelyet egyszerűen megnyom. Néhány szabály:

  • Előbb értse meg, csak utána alkalmazza. Minden ajánláshoz tartozik magyarázat. Ha nem érti, miért szükséges, egyelőre ne alkalmazza.
  • Egyszerre egy dolgot, és teszteljen. Egy szigorú kernel- vagy hálózati beállítás tönkreteheti az alkalmazását. Készítsen pillanatképet (snapshot), változtasson meg egy dolgot, és ellenőrizze, hogy minden működik-e még.
  • Nem minden Önnek szól. Egy meglévő VPS-en egy külön /var/log-partícióra vonatkozó ajánlás nehezen valósítható meg, és kevés haszonnal jár. Válasszon tudatosan, és jegyezze fel, miért nem valósít meg valamit.
  • Legyen óvatos az internetről származó kész hardening-szkriptekkel, amelyek egyszerre "mindent a CIS-ből" alkalmaznak. Úgy módosíthatják az SSH-t, a tűzfalat vagy a naplókat, hogy kizárja magát, és utána már nem tudja, mi változott.

Lynis: audit belülről

A Lynis a CISOfy ingyenes, nyílt forráskódú (GPL) programja, amely belülről vizsgálja át a szerverét, és témánként figyelmeztetéseket és javaslatokat ad. Önmagában semmit nem változtat meg, csak jelentést készít.

anna@web1:~$ sudo apt install lynis
anna@web1:~$ sudo lynis audit system
...
  -[ Lynis 3.x Results ]-

  Warnings (1):
  ----------------------------
  ! Found one or more vulnerable packages. [PKGS-7392]

  Suggestions (34):
  ----------------------------
  * Consider hardening SSH configuration [SSH-7408]
      - Details  : AllowTcpForwarding (set YES to NO)
  ...
  Lynis security scan details:

  Hardening index : 66 [#############       ]
  Tests performed : 262

Így olvassa az eredményt:

  • A Warnings (figyelmeztetések) olyan dolgok, amelyeket valóban meg kell néznie, például ismert sérülékenységű csomagok (ilyenkor függő frissítései vannak, lecke 4.1).
  • A Suggestions (javaslatok) tanácsok. Sok közülük hasznos, néhány nem illik az Ön szerveréhez. Ha például a AllowTcpForwarding kikapcsolását javasolja, az tönkreteszi az SSH-alagutakat (lecke 2.3). Válasszon tudatosan.
  • Minden üzenethez tartozik egy szögletes zárójelben álló kód, például [SSH-7408]. Ezzel keresheti meg a /var/log/lynis.log naplóban, pontosan mit vizsgált a program.
  • A hardening index egy legfeljebb 100-as szám. Iránymutató, nem pedig hajszolandó pontszám. A módosításai utáni növekedés azt mutatja, hogy halad előre; a 100 nem cél.

A disztribúciója csomagforrásában lévő Lynis-verzió kissé elmaradhat a legújabbtól. Egy első audithoz ez nem jelent problémát.

További három téma röviden

  • Az AppArmor és a SELinux további biztonsági rétegek a kernelben, amelyek programonként rögzítik, mit tehet az adott program. A Debian és az Ubuntu az AppArmort használja, alapértelmezetten bekapcsolva; az AlmaLinux és a Rocky a SELinuxot. Ne kapcsolja ki őket "mert valami nem működik": keresse meg az üzenetet a journalban, és célzottan oldja meg a problémát.
  • A sysctl a kernel beállításait módosítja, például a hálózatra vonatkozóan. A Debian és az Ubuntu alapértékei ésszerűek. Ha valamit módosítani szeretne, tegye egy saját fájlba a /etc/sysctl.d/ könyvtárban (a Debian 13 már nem olvassa a /etc/sysctl.conf fájlt).
  • Idő: egy rossz idővel futó szerver használhatatlanná teszi a naplókat, és érvénytelennek tekinthet tanúsítványokat. Ellenőrizze a timedatectl paranccsal, hogy a kimenetben "System clock synchronized: yes" szerepel-e.

A gyakorlatban

A WebOké-nál, ahogy más VPS-szolgáltatóknál is, a szerveren belüli biztonságot Ön kezeli: a szolgáltató gondoskodik a hardverről, a hálózatról és a virtualizációs platformról. Ez a tanfolyam önsegítő jellegű: senki nem figyeli a szerverét. Egy hardening-kör előtt készítsen pillanatképet a panelen, és tudja, hogyan nyithatja meg a konzolt, ha mégis kizárná magát.

Összefoglalás

  • A hardening azt jelenti, hogy a szervert a saját felhasználási módjához igazítja: ami nem szükséges, az megszűnik, ami lehet, az szigorúbb lesz.
  • Négy elv: kicsi támadási felület, minimális jogosultságok, többrétegű védelem és rálátás arra, mi történik.
  • A CIS Benchmarks termékenként több száz ajánlást adnak Level 1 (alap) és Level 2 (szigorú) profilokban; alkalmazza őket megértéssel, egyszerre egy lépést téve.
  • A Lynis belülről vizsgálja át a szerverét, és figyelmeztetéseket, javaslatokat és egy hardening indexet ad; önmagában semmit nem változtat meg.
  • Az AppArmort/SELinuxot ne kapcsolja ki; a saját kernelbeállítások a /etc/sysctl.d/ könyvtárba kerülnek; ellenőrizze az időszinkronizálást.

Kvíz

1. Mi a többrétegű védelem (defense in depth) lényege?



2. Mi a különbség a CIS Benchmarks Level 1 és Level 2 profilja között?



3. A Lynis azt javasolja, hogy kapcsolja ki az SSH-ban a AllowTcpForwarding beállítást. Ön SSH-alagutakat használ az adatbázisa eléréséhez. Mit tesz?



4. Egy kolléga talál az interneten egy szkriptet, amely "az összes CIS-ajánlást egyszerre" beállítja a szerverén. Mi a legnagyobb kockázat?



5. Az alkalmazása nem működik, és a journalban az AppArmor elutasítása szerepel. Mi a helyes megközelítés?



Feladat

Feladat O10.1: Biztonsági audit a Lynis segítségével. Készítsen pillanatképet, telepítse a Lynist a szerverére, és futtassa a sudo lynis audit system parancsot. Jegyezze fel a hardening indexet, az összes figyelmeztetést és öt javaslatot. Válasszon ki három javaslatot, amelyet megvalósít, és egyet, amelyet tudatosan nem valósít meg, az indoklással együtt. Ezután futtassa újra az auditot, és jegyezze fel az új indexet.

O10.1. feladat: Biztonsági audit a Lynis segítségével

Ezt a feladatot saját maga végzi el, senki nem ellenőrzi. Pipálja ki, amit elvégzett, és jelölje meg a feladatot elvégzettként.




A pipái és jegyzetei csak ebben a böngészőben maradnak meg, sehova nem küldjük el őket. Ha bejelentkezett, a Fiókomban csak azt tároljuk, hogy elvégezte a feladatot.

További olvasnivaló

Egy pillanat…

Domainek beállítása

Állítsa be domainenként a névszervereket, a tárhelyhez való kapcsolást és azt, hogy ki legyen a tulajdonos.

Domainek betöltése…