Következő Előző Tartalom

6. Hogy keresztezik a csomagok a szűrőket?

Mikor a kernel elindul, 3 szabálysort tartalmaz a "szűrési" táblájában; ezeket a szabálysorokat tűzfal láncoknak vagy egyszerűen csak láncoknak hívjuk. A három beépített lánc az INPUT, OUTPUT és a FORWARD.

ASCII-art rajongóknak: a láncok az alábbiak szerint rendeződnek: (Figyelem: ez nagy mértékben különbözik a 2.0 és a 2.2 kernelek láncaitól!)

                          _____
Bejövő                   /     \         Kimenő
       -->[Routolás]--->|FORWARD|------->
          [ Döntés ]     \_____/        ^
               |                        |
               v                       ____
              ___                     /    \
             /   \                   |OUTPUT|
            |INPUT|                   \____/
             \___/                       ^
               |                         |
                ----> Helyi Process -----

A három "kör" a fent említett három láncot jelenti. Ha egy csomag elér egy kört ezen a diagramon, az a lánc dönt a csomag sorsáról. Ha a lánc eldobja a csomagot (DROP), az itt megsemmisül, és ha a lánc továbbengedi a csomagot (ACCEPT), az tovább vándorol a diagramon.

Minden lánc szabályok sorozata. Minden egyes szabály azt mondja ki, hogy "ha a csomag fejléce olyan mint ez vagy az, akkor amazt kell a csomaggal csinálni". Ha a szabály nem illik a csomagra, a lánc következő szabálya kerül vizsgálatra. Végül, ha minden szabályt végignéztünk, a kernel megnézi a lánc policy-ját (irányelv arra az esetre, ha egy szabály sem illik a csomagra) hogy eldöntse, mit kell tenni a csomaggal. Egy tudatosan biztonságra törekvő rendszerben ez általában azt jelenti, hogy a kernel a csomagot eldobja (DROP).

  1. Ha egy csomag bejön (például a hálózati csatolón keresztül) a kernel először is megnézi a csomag célcímét, vagyis azt, hogy hova kell azt továbbítani: ezt hívják "routolás"-nak vagy útválasztásnak.
  2. Ha a célcím ezen a gépen van, a csomag "lefele" megy a diagramon, az INPUT lánc felé. Ha az átengedi, a csomag átkerül a feldolgozását végző processhez.
  3. Egyébként, ha a kernelben a továbbítás (FORWARD) nincs engedélyezve, vagy a kernel nem tudja eldönteni, hogy hogy továbbítsa a csomagot, a csomag eldobásra kerül. Ha a továbbítás engedélyezve van, és a csomag egy másik hálózati interfészre lett címezve (már amennyiben van olyan), a csomag a diagramon jobbra vándorol, a FORWARD lánc felé. Ha a lánc elfogadja, a csomagot a kernel elküldi.
  4. Végül vannak olyan programok a gépen, melyek csomagokat továbbítanak a gépedről. ezek a csomagok az OUTPUT láncon keresztül hagyhatják el a gépet: ha az elfogadja őket (ACCEPT), a csomagok folytatják útjukat a céljuk felé.


Következő Előző Tartalom