Firewally

Zařízení (ať už hardwarové nebo softwarové) určené k zabezpečení síťového provozu.

Typy

Paketové filtry

Fungují na úrovni paketů, resp. 3. a 4. vrstvě ISO/OSI. Propouští pakety v závislosti na zdrojové nebo cílové adrese a portu. Jednoduché a rychlé řešení, implementačně nenáročné, které ovšem nijak nekontroluje samotný obsah paketu, tj. nelze filtrovat podle obsahu, proto vyhovuje jen pro základní použití.

Stavové paketové filtry

Podobné paketovým filtrům, navíc ukládají informace o již navázaných spojeních a umožňují tak urychlit proces rozhodování. Jsou tedy rychlejší, ale opět poskytují jen poměrně jednoduché možnosti rozhodování.

Aplikační brány / Proxy

Kontrola probíhá na aplikační vrstvě, takže brána musí být optimalizovaná pro konkrétní protokol. Nicméně umožňuje filtraci i na základě konkrétního obsahu. Hardwarově náročnější, ale spolehlivější. Princip je v tom, že vnější stroj je připojí jako klient k proxy a proxy se pak jako klient připojí přímo k serveru.

Stavové paketové filtry s kontrolou protokolů

Nejpokročilejší ze zmíněných variant. Nabízí to, co předchozí, navíc umí kontrolovat obsah paketů do hloubky, takže například mohou odhalit tunelování např. zakázaného ICQ nebo P2P sítí přes HTTP.

Paketové filtry v Linuxu

Od verze 1.1 je paketový filtr zabudován v jádře. Jednalo se o ipfw, které bylo převzato z BSD. V současnosti je nahrazen netfilterem, který se nastavuje pomocí nástroje iptables.

Princip netfilteru

Podle následujícího schématu prochází pakety kontrolou pravidly v jednotlivých řetězech (chain; seznamy pravidel, prochází se sekvenčně od prvního). V každém může být paket buď akceptován (ACCEPT), zahozen (DROP) nebo zahozen s upozorněním (REJECT).

schema netfilteru

Iptables a FirewallBuilder

Veškeré nastavení netfilteru lze z příkazové řádky provádět pomocí příkazu iptables. Jeho syntaxe je poměrně komplikovaná a proto doporučuji použití grafického volně šiřitelného a multiplatformního nástroje FirewallBuilder. Ve většině distribucí má svůj balíček fwbuilder a umí spolupracovat i s netfilterem (dokáže generovat skripty pro iptables).

Nastavení netfilteru je nutné provádět při každém startu znovu, proto je dobré příkazy pro nastavení filtru umístit do startovacích skriptů.

Příklad příkazů iptables:

Další příklady jsou detailně vysvětleny v referátu z jara 2009 případně v prezentaci firmy WebStep. V případě používání aplikace FirewallBuilder je netřeba znát.

NAT

Network adress translation je technika, kterou lze odstínit celou podsíť tím, že odchozím paketům je na routeru přiřazena jedna společná IP. Lze využít i k zabezpečení počítačů za routerem, které nemají veřejnou adresu a nelze na ně tedy přímo přistupovat z internetu. Často to ale způsobuje problémy některým aplikacím (typicky s protokolem SIP).

V netfilteru existuje speciální tabulka nat určená právě pro pravidla natování.

Odkazy a literatura