EDU::GAMF::IPTABLES
Az iptables általában alapból telepítve van Linux alapú operációs rendszereken. A legtöbb ember ennek ellenére igen ritkán találkozik vele, de sokszor a szakemberek is a ráépülő eszközöket használják, mint például az ufw és a firewalld. Utóbbiak rendelkeznek egy nagy előnnyel: az iptables utódjaként szolgáló nft-t is képesek kezelni, így nem kell más programot megtanulni a fejlődéshez.
Az iptables egy szabálylánc alapú tűzfalrendszer, amelyeket különböző táblákba rendeznek (az nft szintén láncokkal dolgozik, de az ufw és a firewalld ezekkel ellentétben zónákba rendezi a szabályokat. Ne feledjük el azonban, hogy minden ufw és firewalld programokkal felvett szabály végül az iptables/nft láncokba kerülnek be, amiből levonható az a következtetés, hogy az alapvetően szabályláncokkal operáló alkalmazásban is tudunk zóna szerű, átlátható struktúrát kialakítani). Vannak alapértelmezetten létező láncok, amelyeket le sem tudunk törölni: ezeket a netfilter kernelmodul hívja meg, amikor a csomag életútjának megadott fázisában jár. A láncok meghívási sorrendjét packetflow-nak nevezzük. Érdemes a tűzfal tervezésekor figyelembe venni, hogy minél hamarabb szabadulunk meg egy nem kívánt csomagtól, annál kevesebb CPU időt igényel. Az eldobás akcióval ellentétben az elfogadás sokkal körülményesebb: ezek a csomagok a létező összes alapértelmezett láncon át kell menjenek és elfogadásra kell kerüljenek (nagyon könnyen belátható, hogy ha egy láncban az adott csomagot tovább engedjük, akkor a csomag életútjának következő fázisában a netfilter meg fogja hívni a következő láncot, ahol egy eldobás művelet a feldolgozás megszakítását jelenti, tehát a csomag nem fog célba érkezni).
Témakörök:
- Alapértelmezett -
- táblák,
- láncok
- Packetflow
- Szabályok létrehozása
- Láncok létrehozása
- Váltás a láncok között
- "Zóna szerű", átlátható struktúra kialakítása
Fontosabb teendők
- Érdemes áttekinteni a kézikönyvet! Ezáltal lesz fogalmunk arról, hogy milyen funkciók vannak és később könnyebben keresünk benne.
man iptables # az iptables parancs kapcsolóit dokuemntálja main iptables-extensions # az iptables parancs -m kapcsolója után megadható kiterjesztéseket és kapcsolóit írja le
- Érdemes megjegyezni, hogy hogyan tudjuk a szabályainkat kilistázni, menteni és visszaállítani.
iptables [-t table] --list # ez a hosszú formátum, de alapértelmezetten a filter tábla tartalmát listázza és használhatjuk a rövidebb, -L kapcsolót is a --list helyett. iptables -L # ez tehát a számunkra legfontosabb filter tábla tartalmát listázza ki iptables-save # ez a parancs minden szabályt kiír a képernyőre - ha menteni akarjuk, irányítsuk át egy fájlba! iptables-restore # ez a parancs visszaállítja a szabályrendszert a STANDARD INPUT-ról. Ha nem billentyűzettel szeretnénk beírni a szabályokat, akkor irányítsuk át egy korábbi mentésünket a bemenetre (< saved_rules)