iptables a modul string

l.vlcek na noel-plus.cz l.vlcek na noel-plus.cz
Pátek Červen 13 14:54:36 CEST 2008


l.vlcek na noel-plus.cz wrote:
> Dalibor Toman wrote:
>   
>> DD,
>>
>> On Friday, June 13, 2008 1:08 PM ,
>> l.vlcek na noel-plus.cz <l.vlcek na noel-plus.cz> wrote:
>>
>>   
>>     
>>> zdravim,
>>>
>>> nejak uz na mne pada trudnomyslnost. Nemuzu se dobrat reseni
>>> nasledujiciho problemu.
>>>
>>> Pomoci iptables chci (=musim) presmerovat nektere webove pozadavky,
>>> ktere by radi uzivatele na jine stranky, ktere chce zase veleni.
>>> Takze jsem si sestudoval, ze pro tyto ucely sepouziva cil DNAT. 
>>> Tento
>>> lze umistit pouze v tabulce NAT a retezcich OUTPUT a PREROUTING.
>>> OK, zatim dobry.
>>> Kdyz jsem ale chtel pouzit i modul string pro filtrovani 
>>> pozadovanych
>>> textu (stringu), tak mi to proste nechce fungovat.
>>>
>>> Zadam-li pravidla:
>>>
>>>     $ipt -t nat -A OUTPUT -p tcp -m string --algo bm --string
>>> abclinuxu.cz -j DNAT --to-destination "$LocRedir"
>>>     $ipt -t nat -A OUTPUT -j ACCEPT
>>>
>>> normalne se mi vlozi do tablulky nat a retezce OUTPUT (pro lokalni
>>> uzivatele toho stroje...)
>>>     
>>>       
>> tahle to nepujde udelat. Je treba presmerovat cele TCP spojeni - jenze 
>> v dobe kdy prijde prvni _datovy_ packet od klienta (HTTP hlavicka) je 
>> jiz spojeni navazano  s nejakym WWW serverem - uprostred komunikace 
>> jej neni mozne presmerovat jinam
>>   
>>     
> Jo, to zni rozumne.
> Kdyz jsem zmenil cil z DNAT na DROP, chovalo se to stejne, mysleno, ze 
> se stranka normane nacetla.
> Jen nerozumin tomu, proc, kdyz misto tabulky nat pouziju tabulku filter, 
> tak se pozadovana stranka nenacte, proste to vytika na timeout. To by 
> melo byt uz TCP spojeni take davno postavene, ne ?
>   
Jen male doplneni,
pri vypisu pravidel je videt, ze pocitadla jsou nenulova, takze pravidlo 
zabralo. Kdyz bylo toto pravidlo v tabulce filter. V tabulce nat 
zustavala nulova...

>
>
> L.V.
> jezevec
>   




Další informace o konferenci Linux