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