Pravidla rozšířeného paketového filtru se zobrazují v záložce Pravidla okna Rozšířený paketový filtr.
Pravidla tvoří uspořádaný seznam. Při zachycení síťové komunikace se seznam prochází shora dolů a použije se první pravidlo, kterému daná komunikace vyhoví. Tlačítky se šipkami nahoru a dolů v pravé části okna nebo klávesami Ctrl + šipka nahoru, Ctrl + šipka dolů lze pořadí pravidel v seznamu upravit dle potřeby. Díky těmto vlastnostem je možno vytvářet složitější kombinace filtrovacích pravidel.
Pro zvýšení přehlednosti lze pravidla paketového filtru řadit do skupin. Členství ve skupině nemá žádný vliv na vyhodnocování pravidel — vždy jsou procházena pravidla ve všech skupinách. Skupiny pravidel se zobrazují v levé části záložky Pravidla.
Po kliknutí na jméno skupiny se ve střední části okna zobrazí seznam pravidel patřících do této skupiny.
Následující dvě skupiny jsou předdefinované a nelze je zrušit:
Všechna pravidla („nadřazená skupina“) — obsahuje všechna pravidla paketového filtru
Výchozí (výchozí skupina) — do této skupiny je automaticky zařazeno každé nově vytvořené pravidlo, pokud uživatel nezvolí jinou skupinu.
Poznámka: Skupiny pravidel nelze explicitně vytvářet a rušit. Skupinu lze vytvořit zadáním názvu nové (dosud neexistující) skupiny při definici pravidla. Zaniká automaticky při odstranění posledního pravidla.
K manipulaci s pravidly paketového filtru slouží tlačítka pod seznamem skupin:
Změnit — úprava vybraného pravidla (dialog pro úpravu pravidla lze také otevřít dvojitým kliknutím myší na vybrané pravidlo)
Přidat — přidání nového pravidla na konec seznamu
Vložit — přidání (vložení) nového pravidla na aktuální pozici (nad označené pravidlo)
Odebrat — smazání označeného pravidla
Poznámky:
Není-li označeno žádné pravidlo, je aktivní pouze tlačítko Přidat.
Přidržením klávesy Ctrl nebo Shift lze označit více pravidel současně. Takto označenou skupinu pravidel lze pouze přesunout nebo smazat. Tlačítko Změnit v tomto případě otevře dialog pro změnu prvního (horního) označeného pravidla. Funkce Vložit vloží nové pravidlo nad první pravidlo skupiny.
Po stisknutí tlačítka Přidat, Vložit nebo Změnit se otevře dialog pro definici pravidla paketového filtru. Pravidlo má tyto parametry:
Název/popis pravidla. Do této položky doporučujeme vyplnit stručný popis pravidla (účel pravidla, název aplikace atd.) — výrazně se tím zlepší přehlednost seznamu pravidel. Do automaticky vytvářených pravidel se jako popis vkládá název lokální aplikace, která se účastní dané komunikace.
Lokální aplikace, pro kterou pravidlo platí. Aplikaci lze zadat ručně (jméno spustitelného souboru včetně plné cesty), vybrat ze seznamu (při rozbalení této položky se nabídne seznam aplikací použitých v jiných pravidlech) nebo vyhledat na disku počítače (po stisknutí tlačítka Procházet... se zobrazí standardní systémový dialog pro otevření souboru).
Filtrovací pravidlo může být i obecné, tj. bude platit pro libovolnou aplikaci. Toho dosáhneme výběrem speciální volby any, příp. ponecháme pole Application prázdné.
Skupina pravidel, do které má být pravidlo zařazeno. Zařazení do skupiny nemá žádný vliv na funkci pravidla, slouží pouze pro zpřehlednění seznamu pravidel.
V položce Skupina lze vybrat některou z již existujících skupin nebo zadat název nové skupiny — tím dojde k vytvoření skupiny, do které bude pravidlo zařazeno. Při vytváření nového pravidla je vždy nastavena výchozí skupina Výchozí. Totéž platí pro pravidla vytvářená automaticky (viz výše nebo kapitola Dialog Upozornění na spojení (zachycení neznámé komunikace)).
Zapnutí/vypnutí záznamu komunikace vyhovující tomuto pravidlu do záznamu Síť (viz kapitola Záznam Síť).
Zapnutí/vypnutí zobrazení upozornění uživateli (viz kapitola Upozornění na událost) při zachycení komunikace vyhovující tomuto pravidlu.
Nastavení komunikačních protokolů, pro které má pravidlo platit. Typicky je při komunikaci používán jeden protokol (např. TCP nebo UDP), některé aplikace však mohou využívat více protokolů současně (např. TCP a UDP na stejných portech).
Zůstane-li pole Protocol prázdné (tj. nezadáme žádný komunikační protokol), bude pravidlo platit pro libovolný komunikační protokol.
Poznámka: Komunikuje-li aplikace protokolem TCP i UDP, přičemž každý protokol používá jiné porty, je třeba v paketovém filtru definovat dvě různá pravidla.
Po stisknutí tlačítka Přidat nebo Změnit se otevře dialog pro definici protokolu.
Protokol je specifikován číslem protokolu v hlavičce IP paketu. Toto číslo lze přímo zadat do položky Číslo. V položce Jméno je možno vybrat některý z předdefinovaných standardních protokolů.
Položka Popis slouží k zadání popisu protokolu (pro zvýšení přehlednosti). Zobrazuje se pouze v tomto dialogu.
Při výběru protokolu ICMP se v dialogu zobrazí speciální položka Kódy. V ní lze nastavit typy ICMP zpráv, pro které bude pravidlo platit.
Typy zpráv se zadávají jejich číselnými kódy (jednotlivé kódy musí být odděleny čárkou). Zůstane-li položka Kódy nevyplněna, bude pravidlo platit pro všechny typy ICMP zpráv.
K snadnému nastavení typů ICMP zpráv slouží speciální dialog, který se zobrazí stisknutím tlačítka Vybrat. V tomto dialogu je možné vybrat požadované typy ICMP zpráv. Jejich kódy budou po stisknutí tlačítka OK automaticky dosazeny do položky Kódy.
Specifikace lokální strany spojení. Kerio Personal Firewall implicitně používá všechny lokální IP adresy včetně zpětnovazebních (loopback). Z tohoto důvodu lze pro lokální stranu spojení specifikovat pouze porty.
Tlačítkem Přidat lze přidat jeden port (Přidat port) nebo rozsah portů (Přidat rozsah portů). Jednotlivých portů i rozsahů portů může být zadáno více — takto lze pokrýt libovolnou množinu portů.
Port může být zadán číslem v položce Číslo (platné jsou pouze hodnoty z rozsahu 1-65535) nebo výběrem předdefinované standardní služby v položce Jméno. Položka Popis slouží k zadání popisu portu, resp. služby (pro zvýšení přehlednosti).
V případě rozsahu portů dialog obsahuje dvě části: První port (počáteční port rozsahu) a Poslední port (koncový port rozsahu).
Specifikace vzdálené strany spojení. Dle potřeby je možno zadat IP adresu, port, případně obojí. Pravidlo se pak uplatní, jestliže zachycený paket bude obsahovat některou z IP adres a zároveň některý z portů uvedených v poli Vzdálený.
Vzdálený port může být opět zadán jednotlivě (Přidat port) nebo jako rozsah portů (Přidat rozsah portů).
IP adresa může být zadána jako:
jedna IP adresa (Přidat adresu)
rozsah IP adres (Přidat rozsah adres) — zadáme počáteční a koncovou adresu požadovaného rozsahu
subsíť (Přidat adresu / masku) — zadáme adresu subsítě a odpovídající masku
skupina IP adres (Přidat skupinu IP adres) — v položce Vybrat vybereme některou ze skupin IP adres definovaných v záložce Skupiny IP adres
Jednotlivé možnosti zadání portů a IP adres lze libovolně kombinovat.
Směr komunikace, pro který má pravidlo platit: oba směry, příchozí komunikace nebo odchozí komunikace.
Směrem komunikace je v tomto případě míněn směr navazování spojení (resp. směr prvního paketu, který zahajuje komunikaci).
Akce, kterou má Kerio Personal Firewall provést při zachycení komunikace odpovídající tomuto pravidlu:
Povolit komunikaci
Zakázat komunikaci
Při definici filtrovacího pravidla je třeba znát logické vztahy mezi jednotlivými částmi pravidla a položkami v nich obsaženými.
Vztah mezi poli Protokol, Lokální a Vzdálený je „a zároveň“. Pravidlu tedy vyhoví komunikace, která splní podmínky ve všech těchto polích.
Mezi položkami stejného typu (tj. protokoly, IP adresy a porty) v jednom poli platí vztah „nebo“.
Příklad: Pole Vzdálený obsahuje dva rozsahy portů: 80-88 a 8000-8080. Podmínka bude splněna, bude-li vzdálený port patřit do jednoho z těchto rozsahů.
Mezi položkami typu „IP adresa“ a „port“ v poli Vzdálený platí vztah „a zároveň“.
Příklad: Pole Vzdálený obsahuje IP adresu 65.131.55.1 a port 80. Tuto podmínku splní komunikace se vzdáleným počítačem s IP adresou 65.131.55.1 na portu 80.
Položky Protocol, Lokální a Vzdálený spolu úzce souvisejí. Při definici filtrovacích pravidel by měl uživatel dodržovat několik základních zásad:
Porty mají smysl pouze v případě komunikačních protokolů TCP a UDP. U ostatních protokolů jsou ignorovány.
Platí-li pravidlo pro libovolný protokol (pole Protokol je prázdné), pak se porty uplatní v případě, kdy je zachycena komunikace protokolem TCP nebo UDP.
Aplikační služba je dána čísly portů a protokoly. V dialogu pro definici filtrovacího pravidla však název služby představuje pouze port — odpovídající protokol je třeba doplnit ručně.
Příklad: Chceme vytvořit pravidlo pro příchozí HTTP komunikaci (např. povolit přístup na WWW server na počítači, který je chráněn Kerio Personal Firewallem).
V sekci Lokální přidáme jeden port (Přidat port), zvolíme službu HTTP — tím se nastaví port 80.
V sekci Protokol musíme nastavit protokol TCP, který služba HTTP používá.
Velmi rošířený je model komunikace klient-server, kdy server čeká na známém (dohodnutém) portu na příchozí spojení. Klient při navazování spojení požádá operační systém o přidělení volného lokálního portu (který není předem znám). Z toho vyplývá, že zatímco port serveru musí být znám, port klienta může být (téměř) libovolný.
Tyto skutečnosti je třeba brát v úvahu při definici pravidel paketového filtru. Pro ilustraci uveďme dva příklady:
Příklad 1: Chceme povolit přístup k WWW serveru na lokálním počítači z počítače s IP adresou 60.80.100.120. Definujeme pravidlo:
Protokol — [6] TCP (služba HTTP využívá transportní protokol TCP)
Lokální — Port: [80] HTTP (na lokálním počítači běží WWW server)
Vzdálený — Address: 60.80.100.120 (na vzdáleném počítači bude provozován klient — WWW prohlížeč; port předem neznáme, proto v pravidle uvedeme pouze IP adresu)
Příklad 2: Z lokálního počítače chceme zakázat přístup k WWW serveru s IP adresou 90.80.70.60. Pravidlo definujeme takto:
Protokol — [6] TCP
Lokální — toto pole ponecháme nevyplněné (port klienta nelze předem určit)
Vzdálený — Port: [80] HTTP, Address: 90.80.70.60 (specifikujeme vzdálený server)