Ze paket prochazi filtrem v mem pripade dvakrat je mi jasne,..manualovou stranku jsem cetl nekolikrat a i prave ono skipto v plne mire pouzivam, i kdyz to z me otazky neni zrejme, protoze jsem poslal pouze fragment pravidel.
Asi jsme si uplne nerozumneli, tak to zkusim popsat jinak: Poslu paket z lokalni site do DMZ a projde to nasledujicimi pravidly: prvni pruchod: $fwcmd add 2900 skipto 5000 all from any to any in via $lan_if $fwcmd add 5000 count all from any to any in recv $lan_if $fwcmd add 5100 allow all from any to any in recv $lan_if druhy: $fwcmd add 2800 skipto 11000 all from any to any out via $dmz_if $fwcmd add 11000 count all from any to any out xmit $dmz_if $fwcmd add 11100 skipto 26000 all from any to any out recv $lan_if xmit $dmz_if // skok do NATu pro LAN $fwcmd add 26000 count all from any to any via $dmz_if $fwcmd add 26200 nat 2 all from any to any via $dmz_if konfigurace NATu pro $dmz_if: $fwcmd nat 2 config ip $public_ip deny_in same_ports cesta paketu zpet: prvni pruchod: $fwcmd add 2700 skipto 10000 all from any to any in via $dmz_if $fwcmd add 10000 count all from any to any in recv $dmz_if $fwcmd add 10100 allow all from any to any in recv $dmz_if setup // povoli SYN, !ACK spojeni z DMZ do internetu # SYN+ACK pakety se prelozi zpet, pokud jsou v nat tabulce a otaguji se $fwcmd add 10200 nat 2 log tag 2 all from any to any in recv $dmz_if druhy pruchod: $fwcmd add 3000 skipto 6000 all from any to any out via $lan_if $fwcmd add 6000 count all from any to any out xmit $lan_if $fwcmd add 6200 allow all from any to any out recv $dmz_if xmit $lan_if tagged 2 // otagovane povoli Kazpopadne vyse zmineny system pravidel funguje pouze pro TCP a ja hledam reseni i pro ICMP a UDP Ted uz to bude snad lepe pochopitelne :) Diky P. Dne 9.8.2012 11:17, Zbyněk Burget napsal(a): > Myslim, ze to s tak jemnym filtrovanim, jako je napr. podle SYN > priznaku, je az zbytecne prehnane. > Mozna bude stacit si uvedomit, ze kazdy packet prochazejici skrz router, > vchazi do firewallu minimalne dvakrat (v pripade filtrovani na urovni > layer2 ctyrikrat) - jednou (dvakrat) na vstupnim interface a jednou > (dvakrat) na interface vystupnim. > Mne vzdycky stacilo si ve firewallu provoz pomoci skipto rozhodit do > ruznych vetvi firewallu a tam je filtrovat tim nejjednodussim zpusobem. > NAT se pak samozrejme provadi na vnejsim interface a ruzne filtrovani, > co kam ma nebo nema projit na vnitrnim. Jde to i na vnejsim, jen si > clovek musi hlidat, v jake casti firewallu je jaka IP adresa (pred / po > prekladu). > V mem pripade vypadaji pravidla tak, ze propousti prakticky vsecho, jen > je vyjmenovano, co blokuji. A v minulem zamestanni jsme to meli zase > naopak, ze zakazano bylo vse, pouze bylo explicitne vyjmenovani, co je > povoleno (tedy opravdu, pro DNS byl ve firewallu zaznam, ze je povoleny > provoz UDP na port 53). Pak clovek musi jen uhlidat, co vsechno > potrebuje ke spokojenemu zivotu... > > Zbynek > > Dne 9.8.2012 10:43, Petr Valenta napsal(a): >> Zdravim, >> >> uz nejaky ten tyden si hraju s IPFW a in-kernel NATem. Premyslim, jak >> elegantne vyresit NAT do DMZ, kdy je problem s ICMP a UDP, protoze jsou >> nestavove. >> Pravidlo 10100 mi povoli SYN pakety jdouci z DMZ (a dale budou >> pokracovat do internetu). Neco podobneho bych potreboval s ICMP a UDP a >> to predtim, nez paket dorazi na pravidlo 10200, ktere ho zahodi, pokud >> se nejedna o odpoved na pozadavky prichazejici z $lan_if (v NAT tabulce). >> >> Problem je v tom, ze pravidla pred 10200 musi byt natolik chytra, aby >> nepasovala na odpovedi do $lan_if. Takove demonstracni chybne pravidlo >> je 10100, diky kteremu se mi nevrati pingy puvodne z $lan_if do $dmz_if, >> kdyz do $lan_if poustim pouze pakety tagged 2. >> >> Existuje na to vubec nejake elegantni reseni pro IPFW, krome presne >> specifikace pravidel typu udp jdouci na port 53, atd atd...? >> >> Diky >> >> Petr >> >> >> >> # DEMILITARIZOVANA ZONA (em0) >> # >> # NAT >> $fwcmd nat 2 config ip $public_ip deny_in same_ports >> >> # IN na DMZ_IF >> $fwcmd add 10000 count all from any to any in recv $dmz_if >> $fwcmd add 10100 allow all from any to any in recv $dmz_if setup >> >> >> $fwcmd add 10100 allow icmp from any to any in recv $dmz_if >> // povoluje ICMP >> $fwcmd add 10200 nat 2 log tag 2 all from any to any in recv $dmz_if >> // taguje pakety prochazejici NATem na dmz_if >> > -- FreeBSD mailing list ([email protected]) http://www.freebsd.cz/listserv/listinfo/users-l
