ipfw: beznych sluzeb od p2p

Dan Lukes dan at obluda.cz
Thu Oct 21 00:05:29 CEST 2004


Cizek Milan wrote:

> laboruji ted s jednim problemem. Protoze se mi v siti nehorazne rozmohli p2p
> (lide to neomezuji, stahuji jak o zivot, jsou neohleduplni k ostatnim) stava
> se, ze chvilema bezne sluzby ani nenajedou.

>  ${fwcmd} pipe 1 config bw 512Kbit/s   # běžné služby
>  ${fwcmd} pipe 2 config bw 512Kbit/s   # bezohledné stahovače
> 
>  ${fwcmd} add 6000 pipe 1 ip from not 10.0.0.0/8 ${FairServices} to
> 10.0.0.0/8 in via ed0
>  ${fwcmd} add 7000 pipe 2 ip from not 10.0.0.0/8 not ${FairServices} to
> 10.0.0.0/8 in via ed0

	Ono se nad tim trochu slozite premysli, kdyz nezname IP konfiguraci 
toho pocitace. Informace, zda ed0 je vnitrni nebo vnejsi interface, jake 
jsou na vnitrnim interface site (nebo alespon zda je tam i nejaka jina 
nez cely ten A blok) jsou tim, co by nam premysleni nad podobnym 
problemem znacne usnadnilo ...


> Pokusim se prelozit sve myslenky. :-)
> * vse co neni z LAN (INET) a funguje na portech ${FairServices} a je
> smerovane do LAN a prichazi pres ed0 dej do pipe 1
 > * vse co neni z LAN (INET) a nebezi na portech ${FairServices} a je
 > smerovane do LAN a prichazi pres ed0 dej do pipe 2

	Ja uz jsem psal, je tezke posoudit, zda napsane pravidlo odrazi 
dostatecne verne tento slovni popis - nemame na to dost informaci. Ale 
pripada mi to ponekud prekombinovane.

	Jestlize je ed0 vnejsi interface a vnitrni je ed1 a neni na nem jina 
sit nez "LAN", pak vhodnejsi je patrne
... ip from any ${FS} to any out recv ed0 xmit ed1

	Slovne receno nam jde o "pakety jdouci zvenku dovnitr".

> Jeste jeden pod poddotaz. Co napsat do vyctu FairServices kdyz tam chci
> jeste DNS a ICMP?

	Coz o DNS - to odpovida z portu 53, jehoz slovni nazev je "domain" - s 
tim problem neni.

	Ale s tim ICMP ano. Tvoje $FairServices obsahuje seznam portu. Pojem 
"port" ma vyznam jen u nekolika malo protokolu rodiny IP. Napriklad u 
TCP a UDP. U vetsiny protokolu pak tento pojem definovan neni.

	Podminka (napriklad) "any $FS" tak zahrnuje pakety s lobovolnou IP 
adresou a portem ze seznamu FS. Jenze to samo o sobe implikuje, ze IP 
paket je takoveho typu, pro ktery ma pojem "port" vyznam. ICMP nepatri 
mezi protokoly, ktere by takovou podminku splnovaly - proto podminka 
"port ze seznamu" nemuze byt nikdy splnena. ICMP paketu se takto 
koncipovane pravidlo nikdy tykat nebude (ledaze bude seznam portu zcela 
prazdny).

	Pro ICMP je nutne podminku sestavit zvlast - a o zadnych portech se 
nezminovat. Nemusim snad zduraznovat, ze  "Podminku zvlast" neznamena, 
ze musi mit samostatnou separatni pipe ...

  ----------------

	No, schazi dodat jeden zasadni postreh. Filtrujeme az "za linkou" - tj. 
(pripadne) zahazujes az pakety, ktere uz linkou prosly a jeji kapacitu 
vyuzily.

	Takove filtrovani ma smysl jen u tech protokolu, ktere maji nejakou 
flow-control a ktera zareaguje na tuto situaci spravne - tedy snizenim 
frekvence zasilanych paketu.

	To lze ale s jistotou rict jen o TCP (pozor, UDP neni TCP, to je neco 
jineho) ...

	U ostatnich IP protokolu je flow-control zalezitosti aplikacni vrstvy a 
zminene chovani zaruceno v zadnem pripade neni.

	Pokud by tedy prenosy probihaly nejakym "neohleduplnym" protokolem, pak 
konfigurace, o ktere se bavime, sice zabrani uzivateli, aby data dostal, 
ale nezabrani, aby ta data (pred svym zahozenim) nezacpala totalne 
linku, o jejiz ochranu se snazime ...

  ------------------

	A, v neposledni rade, bojujes boj predem prohrany. Jestli's ty neslysel 
o tom, ze skrz SSH a HTTP protokol lze protunelovat jakakoliv data (a to 
nemluvimo moznosti, ze na druhem konci na patricnem portu vubec nesedi 
SSH a HTTP, ale neco uplne jineho), pak tvoji uzivatele o tom slyseli 
urcite - a pokud ne, opatreni je zahy donuti si tuto diru ve vzdelani 
doplnit.

	Domnivam se, ze "shaping" neni vhodnym nastrojem pokud se nam jedna o 
vynuceni "fair-use" od uzivatelu, kteri se aktivne snazi pojem "rozumne 
uziti" ignorovat. Ver mi. Mam v siti 800 uzivatelu ...


						Dan






More information about the Users-l mailing list