"Content filtering for the Web can be a messy proposition. A
business may need to block only the most objectionable Web sites,
while schools may be required by law to follow a more thorough
process. Whatever your needs, you can build a solution with only
open source pieces: squid, squidGuard, and blacklists.
"The squid server acts as an intermediary between a Web browser
and Web server. As a proxy, it receives a URL request from the
browser, connects to the server on behalf of the browser, downloads
content, then provides it to the browser. It also saves the content
to disk so it can provide it more quickly to another browser if the
same URL is requested in the near future. Generally, this leads to
more efficient utilization of an Internet connection and faster
response times for Web browsers..."