Sziasztok!
Attachmentben talaltok egy patchet, ami nagyban egyszerusitheti a Zorp-hoz
szukseges ipchains letrehozasat. A mukodese kb. annyi, hogy minden egyes
Listener automatikusan felveszi a mukodesehez szukseges rule-t, egy megadott
chain-be. Hasznalata a kovetkezo:
- kell egy skeleton ipchains, ami a Zorptol fuggetlen szabalyokat
tartalmazza (dns, ntp, !-y stb)
- a skeleton ipchains a megfelelo iranybol "hivjon" meg egy olyan lancot,
aminek a neve Z_<peldanynev>
- a Zorp peldany init fuggvenyebol meg kell hivni az enableIPChains() nevu
fuggvenyt (opcionalis parameter a chain neve, ha nem jo a default), ehhez be
kell importalni mindent az IPChains modulbol: from Zorp.IPChains import *
- a Listener-t egy kicsit maskepp kell meghivni:
regebben:
Listener(SockAddrInet('1.2.3.4', 50080), 'http')
# ahol az 50080 az a port, ahova az ipchains redirektalt
mostantol, ha automata ipchains-t szeretnel:
Listener(SockAddrInet('1.2.3.4', 80), 'http', transparent=TRUE)
# azaz portkent az eredeti portszamot kell megadni,
# a redirektkent hasznalt portot a Zorp automatikusan generalja
# portszam+50000 modszerrel.
A letrejovo szabaly a kovetkezo alaku:
ipchains -A Z_<peldany> -s 0/0 0:65535 -d 0/0 80 -j REDIRECT 50080
ha a cel vagy a forras cimtartomanynak nem jo a 0/0, akkor az is megadhato a
Listener-nel:
Listener(SockAddrInet('1.2.3.4', 80), 'http', transparent=TRUE,
transparent_redir_to=50080,
transparent_src=InetDomain('0.0.0.0/0'),
transparent_dst=InetDomain('192.168.131.5'))
'transparent' nevu parametere eddig is volt a Listenernek, aminek az
ertelmezese ezzel a patchel megvaltozna. Ezert hezitalok, hogy az 1.4-es
branchbe bekeruljon-e ez a patch vagy se.
Az 1.5-os valtozatunk egyenlore szet van bombazva, ezert az most nem
lehetoseg, hogy abban release-ljuk.
Kerdes, hogy a 'transparent' nevu parameter ilyen megvaltozasa zavaro-e
szamotokra, illetve, hogy altalaban mi a velemenyetek egy ilyen feature-rol?
--
Bazsi
PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1