[zorp-hu] HTTP-proxy

Balazs Scheidler bazsi@balabit.hu
Tue, 6 Mar 2001 13:36:06 +0100


On Tue, Mar 06, 2001 at 12:11:12PM +0100, Kis-Szabo Andras wrote:
> Szervusztok!
> 
> Egy hülye kérdés, de ...
> 
> - tud a http-proxy URL alapon szűrni?
>   pl. http.allow http.deny fileok...
>   (regexp vagy felsorolás...)
> - User-Agent-re szűrni (adott agentek jöhetnek csak...)

persze :) valahogy igy:

class MyHttp(HttpProxy):
	def config(self):
		HttpProxy.config(self)
		self.request_headers["User-Agent"] = \
			(Http.HTTP_POLICY, self.filterUserAgent)
		self.request["GET"] = \
			(Http.HTTP_POLICY, self.checkURL)
		self.request["POST"] = \
			(Http.HTTP_POLICY, self.checkURL)

	user_agent_filter = re.compile('Mozilla')

	def filterUserAgent(self, name, value):
		if self.user_agent_filter.search(value):
			return Z_ACCEPT
		return Z_ABORT

	valid_urls = re.compile('valid')
	invalid_urls = re.compile('sex')

	def checkURL(self, method, url, version):
		"""Defaultbol engedi az url-t kiveve ha benne van az
		invalidban es nincs benne a validban."""

		if self.invalid_urls.search(url) and not self.valid_urls.search(url):
			return Z_DENY
		return Z_ACCEPT

-- 
Bazsi
PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1