From: Mark Hobley on
In comp.infosystems.www.browsers.x Balwinder S Dheeman <bsd.SANSPAM(a)cto.homelinux.net> wrote:

> The best way to control use of network is control it from your
> gateway/router possibly with the help of filtering proxy sever.

I use tinyproxy for filtering.

Mark.

--
Mark Hobley
Linux User: #370818 http://markhobley.yi.org/

From: Balwinder S Dheeman on
On 09/20/2009 06:38 AM, Mark Hobley wrote:
> In comp.infosystems.www.browsers.x Balwinder S Dheeman <bsd.SANSPAM(a)cto.homelinux.net> wrote:
>
>> The best way to control use of network is control it from your
>> gateway/router possibly with the help of filtering proxy sever.
>
> I use tinyproxy for filtering.

"* Easily modified: If you're looking to build a custom web proxy,
Tinyproxy is very easy to modify to your custom needs. The source is
straightforward, adhering to the KISS principle. As such, it can be used
as a foundation for anything you may need a web proxy to do."

The above is quote from https://www.banu.com/tinyproxy/, home page of
Tinyproxy; though I never had a chance to try it, but it seems promising
and useful for your use case.

Hope you will add a requisite routine to bypass client requests based on
User-Agent header to it and be able to run it as a transparent proxy
behind a firewall.

On most of the school, college, cyber-cafe and, or Internet kiosk sites
which I manage, we either use Squid or Polipo as transparent proxy.

On other sites, where we want a relaxed control we provide an auto_proxy
configuration script for most of the browsers, down-loaders and, or
other such tools:

-------- 8< --------
function FindProxyForURL(url, host)
{
/* If user have specified only a hostname, go directly. */
if (isPlainHostName(host))
return "DIRECT";

/* If user have specified on an ipaddr, go directly. */
if (isInNet(host, "192.168.1.0", "255.255.255.0")
|| isInNet(host, "192.168.2.0", "255.255.255.0")
...
)
return "DIRECT";

/* Connect directly to our domains and, or vhosts */
if (dnsDomainIs(host, "local")
|| dnsDomainIs(host, "example.com")
...
)
return "DIRECT";

/* We only cache http, https, ftp and, or gopher */
if (url.substring(0, 5) == "http:"
|| url.substring(0, 6) == "https:"
...
)
/* Change the ":8123" to the port that your cache runs on, and point
* the "proxy.sebs.org.in" to a machine that runs the caching
server */
return "PROXY proxy.example.com:8123; DIRECT";

return "DIRECT";
}
-------- 8< --------

Which the clients may or may not use. Or it is useful only for
non-technical users and, or those who don't want to set a proxy by hand.

--
Balwinder S "bdheeman" Dheeman Registered Linux User: #229709
Anu'z Linux(a)HOME (Unix Shoppe) Machines: #168573, 170593, 259192
Chandigarh, UT, 160062, India Plan9, T2, Arch/Debian/FreeBSD/XP
Home: http://werc.homelinux.net/ Visit: http://counter.li.org/
First  |  Prev  | 
Pages: 1 2 3
Prev: SO_BINDTODEVICE
Next: Ping domain name vs nslookup IP