Vlákno názorů k článku Stavíme firewall (1) od Yenya - Hlavni know-how pri vytvareni firewallu neni v tom, jak...

  • Článek je starý, nové názory již nelze přidávat.
  • 18. 12. 2001 9:02

    Yenya (neregistrovaný)

    Hlavni know-how pri vytvareni firewallu neni v tom,
    jak se ta pravidla pisou, ale v tom do jakych casti
    vlastne to filtrovani rozdelit. Prijde mi napriklad
    naprosto zbytecne filtrovat cokoli v retezci OUTPUT. Take nevim, proc vsichni rozdeluji zvlast UDP a zvlast TCP provoz - tady zadnou funkcnost zavedenim dalsiho chainu neziskame. Naproti tomu kdybychom treba zavedli retezec "spoof", ktery by delal ochranu pred IP spoofingem a treba zahazovani RFC1918 IP adres na vstupu, tak tady se uz zvlastni chain vyplati - jednak muzeme misto ACCEPT/DROP rozhodovat stylem RETURN/DROP a pak zpracovavat dal, a jednak tento chain lze volat jak z INPUT tak z FORWARD (ja vim, ze zrovna tohle lze udelat i pomoci route path filteru, ale jsou situace, kdy rp_filter nelze pouzit - treba IPsec).

    Dalsi poznamka je, ze vam to nebude fungovat, aspon pokud mate dostatecne novy BIND - ten pro odchozi dotazy nepouziva zdrojovy port 53, ale neco nahodneho nad 1023 (lze ho ovsem direktivou query-source prinutit k pevnemu portu). Takze odpovedi na vlastni DNS dotazy zahazujete v INPUT (i v INPUT je treba pouzit stavovou filraci, pripadne povolit packety z portu 53 na port query-source).

    -Yenya

  • 18. 12. 2001 19:22

    Miroslav Petricek (neregistrovaný)

    Ad: rozdělení TCP a UDP.
    TCP je vhodné oddělit například tehdy, když chceme
    filtrovat TCP pakety s příznakem SYN, které zároven
    nejsou ve stavu NEW. Jistě to lze udělat i jinak, ale
    tohle mi připadá jako dobrá motivace. Více bude v přpravovaném třetím díle článku.

    Ad BIND:
    Ano, funkční firewall by měl povolovat --state
    ESTABLISHED,RELATED i v řetezci INPUT.