ipfw dynamic ruleset + NAT
Dan Lukes
dan at obluda.cz
Mon Oct 29 15:09:32 CET 2001
Michal Kutnohorsky wrote:
> 00300 0 0 check-state
> 00301 0 0 deny tcp from any to any in established
> 00302 21 15144 allow tcp from any to any out keep-state setup
> 65535 142 10531 deny ip from any to any
> vse funguje z boxu nadherne, ale z vnitrni site za natem uz ne :(
>
> 192.168.0.0/24
> | NAT
> LAN | ---------------| box | ---------------|ISP|
> | 192.168.0.22 62.24.xxx.xxx
>
> paket z vnitrni site odejde, hlavicka je zmenena, dojde k cili, ale
Neni mozna. Paket muze odejit, ale hlavicka nemuze byt zmenena. Paket
odchazi s interni src adresou. Nebo nemame vypis firewallovych pravidel
kompletni.
> problem nastava, kdyz se paket vraci..v logu se mi jako duvod "deny" ukaze
> cil|port a zdroj /tam uz se objevi privatni adresa - a diky tomu to
> neprojde FW, protoze ve state-table se jako zdroj nachazi verejna adresa
> vnejsiho interfacu.../
> hmmm je to nejaky dloiuhy, snad nekoho napadne, jak to vyresit. Problem
> bych videl s NAT. kdo prebira kontrolu nad paketem privni? FW nebo NAT
> demon?
IPFW - protoze NAT je user-level proces, kteremu paket nekdo musi predat,
a tim "nekdo" je v tomto pripade IPFW. A pokud mu ho nikdo explicitne
nepreda, vubec ho nedostane.
Pri psani ruli je nutne pocitat i s tim, ze paket prochazi firewallem
vlastne dvakrat - na vstupnim interface a znovu na vystupnim a pri
pouziti NATu a predavani paketu pres DIVERT (a v zavislosti na nastaveni
net.inet.ip.fw.one_pass) pocitat i s tim, ze pred divertem se paket
rulemi pohybuje "pred prekladem" a po divertu "po prekladu".
Tak jak to mas to nelze uplne jednoduse upravit jen pridanim divertu tak,
aby to fungovalo. Na druhou stranu, jak tady spravne nekdo poznamenal,
sam NAT zajistuje, ze pakety bez setupu zevnitr dovnitr nemohou, takze
cela konstrukce chrani jen samotny router - vnitrni sit uz je ochranena
tak jako tak.
Ostatne, je na miste upozornit, ze konstrukce firewallu za pouziti
"keep-state" je pomerne nachylna na DoS utoky, takze je rozumne se ji
vyhnout vzdy, kdyz to je jen trochu mozne.
Dan
--
Dan Lukes tel: +420 2 21914205, fax: +420 2 21914206
root of FIONet, KolejNET, webmaster of www.freebsd.cz
AKA: dan at obluda.cz, dan at freebsd.cz, dan at kolej.mff.cuni.cz
More information about the Users-l
mailing list