Sziasztok! LAssan mar mindent feladok, Scott is probalt mar segiteni, de tobb szem tobbet lat alapon a kovetkezo problemat vetnem fel: - adott egy 10.0.0.0-s alhalo, hozza kifele egy fix IP-s ADSL - adott most mar a vegletekig lebutitott ipchains (csak redirect van mar) es Zorp (csak HTTP szures, abban sincs kulon osztaly) Kernel: 2.2.21, a siterol letoltott patchek hozzaadva, freeswan.org-rol leszedve a 1.97-es valtozat, abbol forgatva a binaris, make menugoval megcsinalva. A csomaszureshez: CONFIG_IP_FIREWALL=y -> kotelezo ugyebar CONFIG_IP_FIREWALL_NETLINK=y CONFIG_NETLINK_DEV=y CONFIG_IP_ROUTE_FWMARK=y -> csak ugy CONFIG_IP_TRANSPARENT_PROXY=y - > kotelezo ugyebar CONFIG_IP_MASQUERADE=y -> megszokas Kernel telpitve, szukseges opciok: /proc/sys/net/ipv4/ip_forward 1 /proc/sys/net/ipv4/conf/all/rp_filter 0 es ez minden if-re igaz Interfacek: eth0 - kell a ppp0-nak, ADSL kovetelmeny eth1 - belso if lo - standard ppp0 - kifele biztositja a kapcsolatot, fix IP, ADSL instances.conf tartalma: intra --log-tags --verbose=5 -p /etc/zorp/policy.py A teszteles es orulet hataran levo policy.py tartalma: from Zorp.Core import * from Zorp.Http import * Zorp.firewall_name = 'zorp@inside' InetZone("intranet", "10.0.0.0/24", inbound_services=[], outbound_services=["intra_HTTP_inter"]), InetZone("internet","0.0.0.0/0", inbound_services=["intra_HTTP_inter"], outbound_services=[]) def intra(): Service("intra_HTTP_inter", HttpProxy) Listener(SockAddrInet("10.0.0.40", 51080), "intra_HTTP_inter") ipchainsben a kovetkezokeppen nez ki most: REDIRECT tcp ----l- 10.0.0.0/24 anywhere any -> www => 51080 De, hogy kulon lancon tartsam a dolgokat, voltak mar a kovetkezo szabalyok is: (ipchains-utils-szal es anelkul generalva) ipchains -A input -i eth1 ! -d 10.0.0.40/32 -j INtra ipchains -A INtra -d 0.0.0.0/0 80 -p tcp -j REDIRECT 51080 (es ugyanez logolva is) Routing tabla: Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface nilus-Loopback0 * 255.255.255.255 UH 0 0 0 ppp0 10.0.0.0 * 255.255.255.0 U 0 0 0 eth1 default nilus-Loopback0 0.0.0.0 UG 0 0 0 ppp0 Windowson gw a 10.0.0.40, lokalis DNS van, command-bol fel tudja oldani a neveket/cimeket, DNS a 10.0.0.40-en levo BIND. Ami tortenik: Indulaskor a kovetkezo latszik a logban: Jun 28 16:55:35 rawhide intra[980]: core.info(5): zorp version 1.4.4 going down. Jun 28 16:55:37 rawhide intra[1169]: core.debug(0): Verbosity level: 5 Jun 28 16:55:37 rawhide intra[1169]: core.info(5): zorp version 1.4.4 starting up Jun 28 16:55:38 rawhide intra[1169]: core.debug(5): (zorp/nosession): Zone(intranet): outbound service=intra_HTTP_inter Jun 28 16:55:38 rawhide intra[1169]: core.debug(5): (zorp/nosession): Zone(internet): inbound service=intra_HTTP_inter Jun 28 16:55:38 rawhide intra[1169]: core.caps(5): (zorp/nosession): Changing process capabilities; caps='= cap_net_bind_service+ep cap_net_admin+p' Jun 28 16:55:38 rawhide intra[1169]: core.caps(5): (zorp/nosession): Changing process capabilities; caps='= cap_net_bind_service,cap_net_admin+ep' Jun 28 16:55:38 rawhide intra[1169]: core.caps(5): (zorp/nosession): Resetting process capabilities; caps='= cap_net_bind_service,cap_net_admin+p' Ha kozvetlenul csatlakozom a proxyhoz (Exploderben proxy a 10.0.0.40, port a 51080) termeszetesen megakadalyoz, logban a kovetkezo latszik: Jun 28 13:00:54 rawhide intra[1114]: core.session(3): (zorp@valinal/intra_HTTP_i nter:0): Starting proxy instance; client_fd='9', client_address='AF_INET(10.0.0. 4:1138)', client_zone='Zone(intranet, 10.0.0.0/24)', client_local='AF_INET(10.0. 0.40:51080)' Jun 28 13:00:54 rawhide intra[1114]: core.session(4): (zorp@valinal/intra_HTTP_i nter:0/http): Proxy starting; class='HttpProxy', module='http' Jun 28 13:00:54 rawhide intra[1119]: core.policy(1): (zorp@valinal/intra_HTTP_in ter:0): Inbound service not permitted; service='intra_HTTP_inter', zone='Zone(in tranet, 10.0.0.0/24)' Jun 28 13:00:54 rawhide intra[1119]: http.debug(5): (zorp@valinal/intra_HTTP_int er:0/http): An error occurred, serving error file; filename='/usr/share/zorp/htt p/connecterror.html' Jun 28 13:00:54 rawhide intra[1119]: core.session(4): (zorp@valinal/intra_HTTP_i nter:0/http): Proxy ending; class='HttpProxy', module='http' Jun 28 13:00:54 rawhide intra[1119]: core.accounting(5): (zorp@valinal/intra_HTT P_inter:0): client: accounting info; duration='0', sent='842', received='297' Mikor az atiranyitasra hagyatkoztam (gw a 10.0.0.40, DNS a 10.0.0.40) akkor a kovetkezo jelent meg: Jun 28 12:26:21 rawhide intra[822]: core.session(3): (zorp@valinal/intra_HTTP_in ter:0): Starting proxy instance; client_fd='9', client_address='AF_INET(10.0.0.4 :1047)', client_zone='Zone(intranet, 10.0.0.0/24)', client_local='AF_INET(10.0.0 .40:51080)' Es megallt. Alakitottam az ipchainst es a kovetkozot ertem el: - meg logolassal sem latszik az, hogy egy csomag at lett volna iranyitva, mindegy, hogy az input lancon vagy INtra lancon iranyitom at a zorp portjara Ami furcsa: Ugyanezek a csomagok, ugyanezek a szabalyok (ipchains, zorp) berelt vonalon mennek, termeszetesen egy ket parameter mas, peldaul ott tudom ,hogy milyen network es broadcast stb cim van a kulso interfacen, igy tudom finomitani a szabalyokat a szuresre. Hardware: ASUS alaplap, Celeron II proci. Csak azert irom le, mert erdekes: alapertlemezesekent a REalTek halokartyak 0-as(!) IRQ-t kaptak, mind a ketto! BIOS buzergalas ota nem, de azota minden kis hardware valtozas utan (pl uj billentyu) felhozza a BIOS setupot.... Mit neztem el, de nagyon? Mar nem tudokm asra gondolni, mint valami nagyon trivialisra.... Udv, Ago