ipchains - probublavani user-defined chainy - dotaz

Ing. Pavel PaJaSoft Janousek janousek na fonet.cz
Pondělí Listopad 13 10:06:34 CET 2000


	Zdravim,

	hraju si tady s nastavenim jednoho routeru/firewallu, vsechny veci,
ktere bych cekal od ipchains atd. funguji jak maji, vyjma jedne veci,
ktera mi unika (ano, existuje jiny zpusob, jak dosahnout radneho efektu,
ten se mi ale IMHO vymsti pri vetsim poctu pravidel).

Struktura je zhruba nasledujici (klasicky ISP router):
             A.B.C.D     E.F.G.H     pocitace E.F.G.H_1-31
ISP---------------->router----------->

Router obsahuje 2 sitove karty - eth1 = A.B.C.D
			       - eth0 = E.F.G.H

A.B.C.D a E.F.G.H maji obecne jiny rozsah (A.B.C.D je pouze host, kdezto
E.F.G.H je rekneme blok 32 IP adres).

Muj problem neni vubec v routovani, filtrovani, pocitani packetu atd.,
ale v mechanismech, jak s packetem zachazi jadro.

	Hodlal jsem si ze zakladnich INPUT,FORWARD,OUTPUT chainu udelat poradek
pro budouci pouziti. Vzhledem k tomu, ze vyhradne zastavam politiku, co
neni explicitne povoleno je zakazano, narazil jsem na par problemu.

	Chtel jsem si nechat packety probublavat jednotlivymi user-defined
chainy presne tak, jak IMHO packet cestuje...:

ISP -> vse co se mi objevi na A.B.C.D -> chain_ABCD
chain_ABCD -> co je pro rozsah E.F.G.H/27 -> chain_EFGH 
chain_EFGH -> co je pro IP adresi E.F.G.H1 -> chain_EFGH1

apod. Proste chci, aby packety nejprve proletely temito user-defined
chainy. Ma to jeden podstatny efekt (resp. 2) - jednak se mi deje Ip
accounting (pocet packetu a velikost prenesenych dat IN), jednak se
domnivam, ze si hodne zprehlednim firewallova pravidla (a tim take
optimalizuji prochazeni pravidel), protoze pro danou adresu E.F.G.H_X
budu mit vsechny ACCEPT/REJECT/DENY apod. definovany primo v danem
chain_EFGH_X.

	Bohuzel, nedeje se tak, ac mam pravidla vytvorena nasledovne:
(E.F.G.H/27 je treba 147.229.10.160/27 a E.F.G.H_1/32 je napr.
147.229.10.161)

ipchains -N chain_ABCD
ipchains -N chain_EFGH
ipchains -N chain_EFGH1
ipchains -I input -j chain_ABCD
ipchains -I chain_ABCD -d E.F.G.H/27 -j chain_EFGH
ipchains -I chain_EFGH -d E.F.G.H_1/32 -j chain_EFGH1

	Bohuzel, veskery provoz, ktery monitoruji (ac na E.F.G.H_1, E.F.G.H_2
atd. se bez problemu dostanu) je pouze INPUT -> chain_ABCD a chain_ABCD
-> patricny port (napr. omezovaci pravidlo). Mam dva zavery - ipchains
pozadovanou funkcnost vubec neumi (ale dle IPCHAINS-HOWTO presne takto
by mel zachazet s pakety...) nebo delam nekde chybu. Co je spravne?

	Pokud se totiz vykaslu na user-defined chainy a veskera pravidla
nasazim do INPUT a rozlisuju dle destination address, vsechno mi
funguje... - jenze to pak mam pekny gulas a vse nacpano do jedny chainy
(vykon IMHO nic moc).

	Pouzivam vlastnorucne zkompilovane jadro 2.2.17 se vsema moznyma
features, ktere se tykaji routovaciho/firewalloveho provozu vcetne QOS a
shaperu (ale toto vse jako moduly, ktere aktualne nenatahuji).

	Za pomoc predem dekuji.

-----------------------------------------------------------------------
Ing. Pavel Janousek (PaJaSoft)                 FoNet, spol. s r. o.
Vyvoj software, Intranet / Internet          Anenska 11, 602 00  Brno
E-mail: mailto:Janousek na FoNet.Cz             Tel.: +420  5  4324 4749
SMS:    mailto:P.Janousek na SMS.Paegas.Cz      Fax.: +420  5  4324 4751
WWW:    http://WWW.FoNet.Cz/               E-mail: mailto:Info na FoNet.Cz
-----------------------------------------------------------------------


Další informace o konferenci Linux