Komplexní zabezpečení sítě
1. Firewalls
1.5. Příklady brány firewall
Jedním z nejběžnějších příkladů firewallů je ten, který je k dispozici v distribucích Linuxu a nazývá se IPTables. Tento firewall, stejně jako většina firewallů pro filtrování paketů, je založen na pravidlech a seznamech řízení přístupu (ACL), které slouží k reprezentaci a vynucování bezpečnostní politiky sítě, kterou chtějí chránit, monitorovat a řídit.
V tabulkách IPTables mají tyto seznamy ACL zvláštní vlastnosti, protože používají sofistikované prvky a parametry pro sestavení pravidla na základě bezpečnostního kontextu a potřeby. To znamená, že správce je schopen sestavit jakýkoli typ ACL podle svých potřeb a v souladu s ochranou soukromí a bezpečností navržené politiky. V hlubším přístupu je tento firewall založen na navrženém tvořeném třemi různými strukturami:
· Pravidla
Pravidla jsou v podstatě příkazy předávané bráně firewall, aby mohla provést určitou akci (povolit nebo zablokovat). Musí být sestavena podle jazyka nakonfigurovaného v softwaru brány firewall, aby jim mohla porozumět, a musí se řídit specifickými vzory, aby byla správně interpretová a (obrázek 8). Obecně jsou pravidla podobná mezi mnoha softwary a zařízeními firewall, přičemž hlavní koncept pravidla dodržují všechny. Není obtížné exportovat pravidla z jednoho firewallu do jiného, pokud je jazyk pravidel podobný. V tabulkách IPTables jsou pravidla ukládána do řetězců a zpracovávána podle pořadí. První pravidlo se kontroluje jako první, druhé pravidlo se kontroluje jako druhé a tak dále až do konce všech pravidel. Zde je důležité naplánovat pořadí pravidel, která se mají použít, protože při špatném pořadí může být některý obsah blokován předchozím pravidlem, i když by ve skutečnosti měl být povolen. Plánování pravidel brány firewall je důležitým faktorem při správě sítě, nicméně mnoho softwaru brány firewall umožňuje správci pravidla po jejich konfiguraci a uložení přeorganizovat. Zaměříme-li se na konkrétní případ IPTables, nová pravidla se primárně ukládají do jádra operačního systému, což znamená, že pokud dojde k restartu počítače, veškerý obsah pravidel bude smazán a ztracen. Vzhledem k tomuto faktoru by měla být všechna pravidla uložena v souboru, který se načte při každém spuštění stroje. Je pravda, že většinou se používá vyhrazený stroj, který funguje pouze jako firewall, kde není restartování tak časté jako u běžného osobního počítače, nicméně je také běžné, že se používá velký soubor pravidel, kde je nutné je všechny konfigurovat při každém restartu stroje, což je velmi náročný úkol a časově náročné.
Obrázek 8 - Příklad pravidla Iptables
· Řetězy
Ukládání pravidel brány firewall, řetězce umožňují správci určit různé typy ošetření, které mají být použity na pakety, nezávisle na tabulce, na kterou se zaměřuje. V tabulkách IPTables je možné nalézt dva různé typy řetězců, přičemž první, nazvaný standardní řetězce, zahrnuje řetězce, které jsou již v softwaru k dispozici a lze je aplikovat na obecný síťový provoz. Druhým typem jsou řetězce vytvořené samotným správcem a jsou určeny pro splnění specifických potřeb.
V případě standardních řetězců je možné identifikovat "Předsměrování", které se skládá z příchozího provozu lokálního stroje (stroje firewallu) a zahrnuje také provoz generovaný lokálně a směřující do lokálního stroje. Dalším standardním řetězcem je "Vstupní", který se zaměřuje na veškerý provoz, jehož cílem je opět samotný stroj. Řetězec "Forward" se navíc týká síťového provozu, který prochází strojem, a řetězec "Output" se skládá z provozu, který je generován lokálně, a to jak s místním, tak se vzdáleným cílem. Jedná se v podstatě o veškerý provoz, který stroj firewallu vytváří a který je odesílán do sítě nebo do samotného stroje. Poslední řetězec je "Postrounting" a soustřeďuje provoz, který odchází ze stroje, včetně síťového provozu generovaného lokálně a majícího i lokální cíl).
· Tabulky
Pravidla se ukládají do řetězců a následně řetězce do tabulek, přičemž v každé tabulce jsou uloženy řetězce a pravidla se stejnou specifickou charakteristikou. I zde existují tři různé typy tabulek: Filtr; NAT a Mangle.
"Filtr" je tabulka odpovědná za filtrování všech paketů, které procházejí bránou firewall, bez ohledu na jejich cíl. Tato tabulka slouží k analýze síťového provozu a jeho povolení nebo zablokování podle pravidel uložených v tabulce. Při zaměření na bránu firewall je hlavní identifikovanou činností filtrace paketů, i když umožňuje i jiné činnosti. V tomto případě je za takovou filtraci paketů zodpovědná především tabulka "Filtr".
Tabulka "NAT" řídí pakety, které procházejí bránou firewall, ale mají různý původ a cíl. NAT neboli překlad síťových adres je mechanismus, který umožňuje překlad soukromých adres na veřejné a naopak. Tato tabulka se obvykle používá pro komunikaci mezi soukromou a veřejnou sítí a umožňuje počítačům v soukromé síti přistupovat k veřejné síti prostřednictvím jedné nebo více veřejných IP adres.
Poslední typ tabulky se nazývá "Mangle" a umožňuje manipulaci s charakteristikami paketů, například s typem služby. To umožňuje implementovat kvalitu služby, známou také jako QoS.
IPTables je firewall pro filtrování paketů, který je k dispozici v distribucích Linuxu a umožňuje kontrolu a monitorování sítě i samotného počítače. Poskytuje různé akce, včetně "accept", "drop", "reject" a "log", konfigurované do pravidel a personalizovaných řetězců. Jak již bylo zmíněno, pravidla musí dodržovat určité pořadí a musí být naplánována před jejich zavedením, aby všechny akce byly respektovány a pracovaly v souladu s bezpečnostní politikou organizace.