IPsec, FreesWan a Masquerade
Zdenek Kaminski
xkaminsk na fi.muni.cz
Čtvrtek Červen 6 13:26:42 CEST 2002
On Thu, 6 Jun 2002, Ing. Pavel PaJaSoft Janousek wrote:
> Zdenek Kaminski wrote:
> > Pokud to nebude v elaboratu :-), muzete prosim napsat, ve kterych
> > pripadech nelze maskaradu pouzit? Teda ja si to na jejich webu necetl,
> > protoze mi zatim vse (asi haluzove) fungovalo; a to maskaraduji jak
> > vztekly...
>
> To Vam prave zabezpecuje left|right firewall = yes... - pridava
> pravidla do FORWARD chainu, aby obesel jakekoli dalsi pravidla (vcetne
> masquerade)...
no, v mem ipsec.conf zadne left|right firewall nemam, mam tam zato vlastni
rightupdown a leftuptdown a v nem opravuji a pouze opravuji routovani...
A navic svuj firewall poustim mimo jine po startovani ipsecu a mam tam
vsude povolene forwardovani a v tabulce nat mam na stroji A:
iptables -t nat -A POSTROUTING -s "$int_net0_0" -o "eth1" -j MASQUERADE
iptables -t nat -A POSTROUTING -s "$tunel_net0_0" -d "$int_net0_0" -j MASQUERADE
iptables -t nat -A POSTROUTING -d "$tunel_net0_0" -s "$int_net0_0" -j MASQUERADE
iptables -t nat -A POSTROUTING -s "$tunel_net0_1" -d "$int_net0_0" -j MASQUERADE
iptables -t nat -A POSTROUTING -d "$tunel_net0_1" -s "$int_net0_0" -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.4.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -d 192.168.4.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -d "192.168.2.100" -j MASQUERADE
iptables -t nat -A POSTROUTING -s "$int_net0_0" -o "eth0" -j MASQUERADE
pricemz eth1 je sitovka do Inetu a eth0 je sitovka do vnitrni site a
ipsec0 je "svazan" s eth1 radkem interfaces=%defaultroute v odstavci setup
a default gw ma stroj A skutecne do eth1...
To prvni pravidlo je proto, aby uzivatele mohli lezt do Inetu...
To druhe, aby z nejakeho duvodu, kdyz neco jde z tunelu (ono tam je vzdy
videt packet se zdrojovou adresou stroje B protoze ten maskaraduje vse, co
jde z jeho vnitrni site do tunelu), aby se to tvarilo, jakoze to jde ze
stroje A.
To treti, aby z nejakeho duvodu, kdyz jde neco z vnitrni site do tunelu,
aby stroj B si myslel, ze to je ze stroje A...
a zbyvajici pravidla taky maji nejaky duvod, nicmeme se netykaji provozu v
tunelech...
Samozrejme pred startem firewallu si mazu vsechna pravidla.
Pouzivam iptables a kdyz nahodim ipsec a dam iptables -t filter -F;
iptables -t filter -X a totez pro tabulku nat a pak pousitim svuj
firewall, tak jsem dodnes myslel a stale myslim, ze ipsec sam od sebe nic
nemaskaraduje a ze hlavne provoz v tunelech nijak iptables neobchazi.
Resp. kdyz shodim firewall, tak v tunelech chodi pakety se skutecnymi
zdrojovymi adresami a kdyz ho firewall nahodim, tak tam chodi s takovymi
adresami, jake chci mit.
Posloucham tcpdumpem na obou strojich a to jak na
zarizenich ipsec0 a na vnitrnich ethernetech onech routeru, tak na
ethernetech stroju ve vnitrnich sitich...
Nebo je to vsechno jenom nahoda a ja se v jinych pripadech spalim?
Tohle bych samozrejme chtel vedet... ;-)
---------------------------------------------------------------------------
Bc. Zdenek Kaminski <xkaminsk at fi.muni.cz>
homepage: http://www.fi.muni.cz/~xkaminsk/
IPv6 router homepage: http://merlot.ics.muni.cz/
Další informace o konferenci Linux