iptables a ipsec

Libor Chocholaty libor_ml1 na mts.cz
Úterý Leden 17 14:27:43 CET 2006


Libor Chocholaty wrote:

> Petr Šobáň wrote:
>
>> Zdenek Prchal napsal(a):
>>  
>>
>>> Je nekde k sehnani diagram jak prochazi pakety
>>> chainy iptables (kernel 2.6.13), pokud je situace
>>> zkomplikovana tim, ze na tom routeru je jeden
>>> konec ipsec tunelu? Da se rici, ze po dekodovani
>>> paketu ten znovu prochazi odpovidajicimi chainy?
>>> Nebo je to nejak jinak - jak?
>>> Mam totiz problem s tim, ze se mi nedari spojeni
>>> z LAN za tim tunelem na smtp primo na tom routeru.
>>> Odpovidajici spojeni (tj. LAN - remote router) je
>>> v ipsec.conf definovano, na ping z LAN ten router
>>> odpovida, ale na smtp ani tuk. Nejak se mi nedari
>>> zahlednout na tom routeru dekodovane pakety,
>>> Ani ty icmp, ktere zjevne prochazeji, tcpdump
>>> ukazuje jen ty kodovane. Myslel jsem, ze povesim
>>> LOG target do nekterych chainu, ale (viz vyse)
>>> nejak si nejsem jisty, ze to tak vubec ma neco
>>> ukazovat (ze tudy ty dekodovane pakety
>>> prochazeji) ...
>>> BTW, ten ipsec je openswan 2.3.1, ktery pouziva
>>> nativni ipsec moduly z kernelu.
>>>
>>> Zdenek Prchal
>>>
>>>   
>>
>>
>> To je takovej problém si to najít ?
>>
>> http://www.sibbald.com/unixutil/iptables-firewall.html
>> http://www.siliconvalleyccie.com/linux-hn/iptables-intro.htm
>> http://usenet.jyxo.cz/cz.comp.linux/0206/fwd-lartc-iptables-diagram.html
>> http://www.fi.muni.cz/~kas/p090/referaty/2005-podzim/ct/firewall.html
>> http://www.linuxguruz.com/iptables/howto/iptables-HOWTO-5.html
>>  
>>
> Pekny odkazy, ale co kdyz pouzivam IMQ a pakety posilam do IMQ v 
> mangle-postrouting. Vubec jsem nenasel, kde se nachazi 
> mangle-postrouting.
> Pouzivam IMQ pro shaping pres vice rozhrani a _skoro_ vse funguje jak 
> ma. Jen pakety, na ktere se aplikuje NAT 1:1 se zda, ze do IMQ vubec 
> neprijdou. Pravidla mam nasledujici:
>
> heaven:~# iptables -t mangle -L -v
> ---kraceno---
> Chain POSTROUTING (policy ACCEPT 630M packets, 407G bytes)
> target  prot opt in     out     source    destination
> IMQ     all  --  any    eth1    anywhere  anywhere    IMQ: todev 0
> IMQ     all  --  any    eth2    anywhere  anywhere    IMQ: todev 0
> IMQ     all  --  any    eth4    anywhere  anywhere    IMQ: todev 0
>
> a onen NAT:
> heaven:~# iptables -t nat -L -v
> Chain PREROUTING (policy ACCEPT 11M packets, 851M bytes)
> target  prot opt in    out  source    destination
> DNAT    all  --  eth0  any  anywhere  vlada_pub   to:vlada_lan
> DNAT    all  --  eth0  any  anywhere  marvin_pub  to:marvin_dummy
>
> Chain POSTROUTING
> target  prot opt in   out   source      destination
> SNAT    all  --  any  eth0  vlada_lan   anywhere    to:vlada_pub
> SNAT    all  --  any  eth0  marvin_if1  anywhere    to:marvin_pub
> SNAT    all  --  any  eth0  marvin_if2  anywhere    to:marvin_pub
>
> Muzete me nekdo nasmerovat?
>
Odpovim si sam. Je to zpusobene pouzitim spatneho hooku pro IMQ:
.config obsahuje: CONFIG_IMQ_BEHAVIOR_BA=y
a kernel:
#if defined(CONFIG_IMQ_BEHAVIOR_BA) || defined(CONFIG_IMQ_BEHAVIOR_BB)
       printk(KERN_INFO "\tHooking IMQ before NAT on PREROUTING.\n");

Ach jo, ja nechci menit kernel... :-(

Libor





Další informace o konferenci Linux