Using Squid as a Accelerating Proxy

I needed to accelerate some web traffic, we're using a new web system in house and wanted to make sure that the multiple users who access the system didn't clog up the busy broadband lines. 

The solution was to setup a Squid Proxy. Squid can be used in many different ways, one of the most simple solutions is for Squid to sit between your internet connection and desktop browsers and provide a local cache of content. 

Once Squid is installed edit /etc/squid/squid.conf or take a backup and paste in this one below:

 

http_port 192.168.10.108:8000 transparent

acl my_network src 192.168.10.0/24

http_access allow my_network

acl all src all

acl manager proto cache_object

acl localhost src 127.0.0.1/32

acl to_localhost dst 127.0.0.0/8 0.0.0.0/32

acl purge method PURGE

 

acl CONNECT method CONNECT

http_access allow manager localhost

http_access deny manager

http_access allow purge localhost

http_access deny purge

#http_access deny !Safe_ports

http_access allow localhost

http_access deny all

 

cache_dir ufs /cache 200 16 256

access_log /var/log/squid/access.log squid

refresh_pattern ^ftp: 1440 20% 10080

refresh_pattern ^gopher: 1440 0% 1440

refresh_pattern -i (/cgi-bin/|\?) 0 0% 0

refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880

refresh_pattern . 0 20% 4320

acl apache rep_header Server ^Apache

broken_vary_encoding allow apache

extension_methods REPORT MERGE MKACTIVITY CHECKOUT

hosts_file /etc/hosts

coredump_dir /var/spool/squid

I have a cache_dir set to /cache and have given it 200MB if you delete this Squid will use a sesible default. 

This configuration is based on the Squid server living at 192.168.10.108 and listening on port 8000. All you need to do now is setup a http proxy in your browser pointed to this IP/Port and all traffic will pass through the Squid box.