[zorp-hu] http connect for ssl

Hegedus Ferenc zorp-hu@lists.balabit.hu
Fri, 21 May 2004 14:56:31 +0200


Szia

Igy szerintem nem tudsz szurni, mert ott meg nem tudod, hogy mi a
teljes url, csak azt, hogy melyik host:port-ra connect-elsz.
Ha megvan a connect es a 443 port, akkor self.connect_proxy-val hivsz
egy ssl proxy-t, abba pedig stackelsz self.stack_proxy-val egy 
transzparens http proxy-t. Ebben a http proxy-ban tudod szurni az url-eket,
igaz ezek http://-vel kezdodo url-ek lesznek, de ezek azok a https://-el
kezdodo url-ek.
Azthiszem ez igy korrekt is, mert a https egy ssl-be csomagolt http.
Egy peldakonfig: http://dark.chaos.hu/docs/zorp/02-non-transparent-http-https

On 2004 May 21 at 14:42, narancs wrote:
> Szia,
> 
> ez igy tenyleg mukodik, de akkor mire vannak ezek a Http.py-ban leirt
> sajat attributumok?
> Azt is szeretnem szurni, hogy az url 'https://' -el kezdodjon, de
> valamiert azt a zorp levagja...?
> 
> def filterHTTPS(self, method, url, version):
>                log("https.info", 3, "%s: CONNECT: %s" %
> (self.session.session_id, url))
>                if method =="CONNECT":
>                        if search("^https://",url):
>                                if search(":443$",url):
>                                                return HTTP_REQ_ACCEPT
>                self.error_info = 'Connection to arbitary HTTPS ports
> are denied by policy.'
>                return HTTP_REQ_REJECT
> 
> ezert ez mindig REJECTre fut. Szoval, hogy kellene az elejet is megnezni?
> 
> koszi...
> 
> Hegedus Ferenc írta:
> 
> >Szia
> >
> >from re import search
> >
> >def filterURL(self, method, url, version):
> >      if method == "CONNECT":
> >	    if search(":443$",url):
> >               ...
> >           else:
> >               ...
> >
> >Lehet nem elegans, de mukodik...:)
> >
> >On 2004 May 21 at 13:42, narancs wrote:
> > 
> >
> >>Sziasztok,
> >>
> >>kénytelen vagyok az üzemelő proxy szerverek miatt a következőre:
> >>
> >>Hogyan lehet úgy bekonfigolni a zorp http modulját, hogyha a kérés a 
> >>443-as portra megy az url-ben, akkor engedje át connecttel, de egyébként 
> >>ne legyen a connect engedélyezve?
> >>
> >>valami ilyesmire gondolok:
> >>
> >>class IntraHttp(HttpProxyURIFilterNonTransparent):
> >>      matcher=RegexpFileMatcher('/etc/zorp/http.deny', 
> >>'/etc/zorp/http.ignore')
> >>
> >>      def config(self):
> >>              HttpProxyURIFilterNonTransparent.config(self)
> >>              self.transparent_mode = FALSE
> >>              self.request["GET"] = (HTTP_REQ_POLICY, self.filterURL)
> >>              self.request["CONNECT"] = (HTTP_REQ_POLICY, 
> >>self.filterHTTPS)
> >>
> >>      def filterHTTPS(self, method, url, version):
> >>              if (self.request_method=="CONNECT"):
> >>                      if (self.request_url_proto=="https"):
> >>                              if (self.request_url_port=="443"):
> >>                                              return HTTP_REQ_ACCEPT
> >>              self.error_info = 'Content denied by policy.'
> >>              return HTTP_REQ_REJECT
> >>
> >>      def filterURL(self, method, url, version):
> >>            log("http.info", 3, "%s: GET: %s" % 
> >>(self.session.session_id, url))
> >>              return HTTP_REQ_ACCEPT
> >>
> >>
> >>szoval hogy nez ez ki pythonban? mukodik ez igy?
> >>
> >>köszönöm
> >>_______________________________________________
> >>zorp-hu mailing list
> >>zorp-hu@lists.balabit.hu
> >>https://lists.balabit.hu/mailman/listinfo/zorp-hu
> >>   
> >>
> _______________________________________________
> zorp-hu mailing list
> zorp-hu@lists.balabit.hu
> https://lists.balabit.hu/mailman/listinfo/zorp-hu
-- 
krad