Hello! Uj vagyok a listan, ezert eloszoris udvozlok mindenkit. Egy nagyon hosszu levellel kezdek, amelyben egy konkret konfiguracion keresztul szeretnem kerni a segitsegeteket, illetve megtanulni (legalabbis megprobalni) a Zorp konfiguralasat. Akkor jojjon a konfig: from Zorp import Zorp, SockAddr, Listener, Zone, Service, Chainer from Zorp import Stream, Plug, POP3, AnyPy, Ftp, Session, Sink from Zorp import Receiver, Http, Auth from Zorp.Zorp import * from Zorp.LabelSet import LabelSet # Ez a tuzfal neve. Zorp.firewall_name = 'proba1@shinwa.hu' # Definialom az intranet zonat (192.168.0.0/255.255.255.0), # es a belulrol a DMZ-be engedni kivant szolgaltatasokat. # Egyelore http, ftp, ssh, pop3 es smtp kellene. Az # smtp-vel kapcsolatban: felteszek egy csak tovabbito # modban mukodo smtp-szervert a tuzfalra - ekkor kell-e # valamilyen Zorp service-t vagy ipchains szabalyt definialnom? Zorp.zones= [ Zone.InetZone("intranet","192.168.0.0","255.255.255.0", None, outbound_services["BDHttp","BDFtp","BDSsh","BDPop"], inbound_services[]), # Definialom a DMZ zonat (192.168.1.0/255.255.255.0), # es a belso halozatra iranyulo szolgaltatasokat. Zone.InetZone("DMZ", "192.168.1.0", "255.255.255.0", None, outbound_services[], inbound_services["BDHttp","BDFtp","BDSsh","BDPop"]) ] # A belso halorol a DMZ fele iranyulo http keresek # iranyitasara szolgal. # Ha azt szeretnem, hogy csak a belso proxy-szerveren # keresztul erhessek el a DMZ-t is, akkor fel kell # venni egy zonat a proxy-szervernek, es csak onnan # engedelyezni a szolgaltatast. Peldaul: # Zone.InetZone("proxy","192.168.0.210","255.255.255.0",None, # outbound_services["PDHttp","PDFtp"], # inbound_services[])] # Ekkor a "DMZ inbound_services"-be fel kell venni a # "PDHttp"-t es a "PDFtp"-t, valamint ki kell venni a # "BDHttp"-t es a "BDFtp"-t a DMZ-bol es az intranetbol is. # Ha "transparent_mode = 1" (ebben az esetben), akkor a # belso-proxyn nem kell beallitanom semmit. Ha viszont 0, # akkor be kell allitani, hogy o a gyermek-proxy, es a # tuzfal a szulo-proxy. # Ha transzparens, akkor kell egy redirect ipchains # szabaly hozza. class BDHttp(Http.HttpProxy): def config(self): self.transparent_mode = 1 # A belso halorol a DMZ fele iranyulo ftp keresek # iranyitasara szolgal. # A command_accept-ben megadott ftp parancsokat tudja # hasznalni a kliens. A NAT = 1 azt jelenti, hogy # maszkolom a kereseket. # Ha azt szeretnem, hogy csak a belso proxy-szerveren # keresztul erhessek el a DMZ-t is, akkor fel kell # venni egy zonat a proxy-szervernek, es csak onnan # engedelyezni a szolgaltatast. A fenti peldahoz tartozo # classok ugyanazok, mint a "BDFtp" es a "BDHttp", csak # a nevuk valtozik meg? Illetve a "def"-juk is ugyanaz, # ott is csak a nevuket kell megvaltoztatni? # # Az external_data_address a tuzfal DMZ feloli laba, az # internal_data_address pedig a tuzfal belso halozat # feloli laba. class BDFtp(Ftp.FtpProxy): def config(self): self.command_accept = 0x00000000 self.NAT = 1 self.fw_external_data_address="192.168.1.1" self.fw_internal_data_address="192.168.0.250" # A belso halorol a DMZ fele iranyulo ssh keresek # iranyitasara szolgal. class BDSsh(Plug.PlugProxy): def config(self): pass # A belso halorol a DMZ fele iranyulo pop3 keresek # iranyitasara szolgal. class BDPop(Plug.PlugProxy): def config(self): pass # Szolgaltatasok definicioi. def init(name): BDPop_service = \ Service.Service("BDpop", # Ha transzparensnek allitom be a pop3 service-t, akkor a # klienseknek a tuzfalat kell megadnom pop3 szerverkent? # A transzparensseg miatt kell ipchains redirect? # A "None,0" azt jelenti, hogy ne irja at a kliens cimet? Chainer.TransparentChainer(None,0), BDPop) BDHttp_service = \ Service.Service("BDHttp", # Ha nem transzparens http-t szeretnek, akkor InbandChainer-t # kell hasznalnom? A "None,1" azt jelenti, hogy nem adunk meg # cimet, es a kliens eredeti cime latszodjon? # A transzparensseg miatt kell ipchains redirect? Chainer.TransparentChainer(None,1), BDHttp) BDFtp_service = \ Service.Service("BDFtp", # Ha nem transzparens ftp-t szeretnek, akkor InbandChainer-t # kell hasznalnom? A "None,1" azt jelenti, hogy nem adunk meg # cimet, es a kliens eredeti cime latszodjon? # A transzparensseg miatt kell ipchains redirect? Chainer.TransparentChainer(None,1), BDFtp) BDSsh_service = \ Service.Service("BDSsh", # A transzparensseg miatt kell ipchains redirect? A "None,1" # azt jelenti, hogy nem adunk meg cimet, es a kliens eredeti # cime latszodjon? Chainer.TransparentChainer(None,1), BDSsh) # A 192.168.0.250 a tuzfal belso halo fele eso laba, de miert # ezek a portszamok vannak megadva? Ide irhatok nekem tetszo # portszamokat is, csak az ipchains redirect-et kell ezekre # beallitanom? Listener.Listen( SockAddr.SockAddrInet("192.168.0.250",2110), BDPop_service) Listener.Listen( SockAddr.SockAddrInet("192.168.0.250",3080), BDHttp_service) Listener.Listen( SockAddr.SockAddrInet("192.168.0.250",3021), BDFtp_service) Listener.Listen( SockAddr.SockAddrInet("192.168.0.250",3022), BDSsh_service) Elnezest kerek, ha tul hosszura nyult a levelem. A kovetkezok mar (remelhetoleg) rovidebbek lesznek :) -- Udvozlettel Zsiga