Tartalomjegyzék
A Netfilter
- Szerző: Sallai András
- Copyright © Sallai András, 2020
- Web: https://szit.hu
A Netfilter-ről
A netfilter egy csomagszűrő szoftver, a 2.4.x és későbbi Linux kernelek számára.
Lehetővé teszik a csomagok:
- szűrését
- címfordítást
- csomagnaplózás
- csomagok sorba állítása a felhasználó térben
- IP fejlécek átírása
Netfilter kampók
A Netfilter kampók, angolul hook, kapcsolódási pontok, ahol beleszólhatunk a csomagok áramlásába.
5 alapértelmezett kampó van, ezeket az alábbi táblázat mutatja be.
Név | Név forráskódban |
---|---|
prerouting | NF_IP_PRE_ROUTING |
input | NF_IP_LOCAL_IN |
forward | NF_IP_FORWARD |
output | NF_IP_LOCAL_OUT |
postrouting | NF_IP_POST_ROUTING |
A nagybetűs alak a kernel forráskódjában megadott neveket mutatja.
A beállítások során láncokat hozunk létre, amelyeknek a neve célszerűen megegyezik a kampók nevével.
A netfilter beállítás során szabályokat írnunk, amelyek listát alkotnak. A listákat láncokhoz, azokon keresztül pedig a kampókhoz rendeljük.
Táblák
A táblák egy-egy tevékenység típust jelölnek.
Az alábbi táblázat bemutatja milyen típusú tevékenységeket végezhetünk.
Lehetőség | Táblanév | Milyen kampón használható |
---|---|---|
szűrés | filter | INPUT, OUTPUT, FORWARD |
címfordítás | nat | PREROUTING, INPUT, POSTROUTING, OUTPUT |
fejléc átírás | mangle | PREROUTING, INPUT, FORWARD, OUTPUT, POSTROUTING |
csomagkövetés | raw | PREROUTING, POSTROUTING |
hozzáférési lista | security | INPUT, OUTPUT, FORWARD |
Szűrés
A Netfilter egyik lehetősége a szűrés. Ahogy az előző részben látható volt, a csomagok útjába 5 kampónál szólhatunk bele a csomagok áramlásába. Szűrésre ezek közül 3 áll rendelkezésre. Ezek:
- input
- forward
- output
A csomagokat engedhetjük az útjukra, eldobhatjuk, átadhatjuk egy alrendszernek, sorba állíthatjuk, vagy visszairányíthatjuk szabálylista elejére a láncon.
A csomagok sorsa a következő lehet:
- ACCEPT - a csomagok folytathatják útjukat
- DROP - a csomagokat eldobjuk
- STOLEN - egy alrendszer kezeli tovább a csomagot
- QUEUE - a csomag sorba állítása
- REPEAT - átirányítás újra erre a kampóra
Címfordítás
A címfordítás angolul Network Address Translation, vagy csak röviden NAT. IPv4-s címtérben a privát címek nyilvános IP címekké fordítását és nyilvános címek privát címmé fordítását jelentik.
Címfordítást, a következő láncokon végezhetünk:
- prerouting
- input
- postrouting
- output