Squid Proxy Server 3.1 Beginner's Guide
Time for action – identifying the right version
Time for action – downloading Squid
Time for action – using Bazaar to obtain source code
Time for action – running the configure command
Time for action – compiling the source
Time for action – installing Squid
Time for action – exploring Squid files
Syntax of the configuration file
Time for action – setting the HTTP port
Time for action – constructing simple ACLs
Controlling access to the proxy server
Time for action – combining ACLs and HTTP access
Time for action – adding a cache peer
Time for action – specifying space for memory caching
Time for action – creating a cache directory
Time for action – adding a cache directory
Tuning Squid for enhanced caching
Time for action – preventing the caching of local content
Time for action – calculating the freshness of cached objects
Playing around with HTTP headers
Time for action – adding DNS name servers
Other configuration directives
Time for action – listing the options
Time for action – finding out the Squid version
Time for action – creating cache directories
Time for action – debugging output in the console
Time for action – testing our configuration file
Automatically starting Squid at system startup
Time for action – adding the init script
Getting Started with Squid's Powerful ACLs and Access Rules
Time for action – constructing ACL lists using IP addresses
Time for action – using a range of IP addresses to build ACL lists
Time for action – constructing ACL lists using domain names
Time for action – building ACL lists using destination ports
Time for action – using a request protocol to construct access rules
Time for action – enforcing proxy authentication
Time for action – denying miss_access to neighbors
Mixing ACL lists and rules – example scenarios
Time for action – avoiding caching of local content
Time for action – blocking video content
Time for action – writing rules for special access
Testing access control with squidclient
Time for action – testing our access control example with squidclient
Time for action – testing a complex access control
Understanding Log Files and Log Formats
Time for action – understanding the cache log
Time for action – understanding the access log messages
Time for action – analyzing a syntax to specify access log
Time for action – learning log format and format codes
Time for action – customizing the access log with a new log format
Time for action – using access_log to control logging of requests
Time for action – enabling the referer log
Time for action – translating the referer logs to a human-readable format
Time for action – enabling user agent logging
Emulating HTTP server-like logs
Time for action – enabling HTTP server log emulation
Managing Squid and Monitoring Traffic
Time for action – installing Apache Web server
Time for action – configuring Apache to use cachemgr.cgi
Time for action – installing Calamaris
Time for action – generating stats in plain text format
Time for action – generating graphical reports with Calamaris
Protecting your Squid Proxy Server with Authentication
Time for action – exploring Basic authentication
Time for action – configuring NCSA authentication
Time for action – configuring PAM service
Time for action – configuring MSNT authentication
Time for action – configuring Squid to use SASL authentication
Time for action – configuring RADIUS authentication
Time for action – configuring Digest authentication
Time for action – configuring Negotiate authentication
Using multiple authentication schemes
Writing a custom authentication helper
Time for action – writing a helper program
Making non-concurrent helpers concurrent
Common issues with authentication
Building a Hierarchy of Squid Caches
Reasons to use hierarchical caching
Problems with hierarchical caching
Time for action – joining a cache hierarchy
Controlling communication with peers
Time for action – configuring Squid for domain-based forwarding
Time for action – forwarding requests to cache peers using ACLs
Time for action – configuring Squid to switch peer relationship
Configuring Squid as a server surrogate
Time for action – adding backend web servers
Logging messages in web server log format
Time for action – configuring Squid to ignore the browser reloads
Access controls in reverse proxy mode
Time for action – understanding interception caching
Advantages of interception caching
Problems with interception caching
Diverting HTTP traffic to Squid
Time for action – enabling IP forwarding
Time for action – redirecting HTTP traffic to Squid
Writing URL Redirectors and Rewriters
Squid, URL redirectors, and rewriters
Time for action – exploring the message flow between Squid and redirectors
Time for action – writing a simple URL redirector program
Writing our own URL redirector program
Time for action – writing our own template for a URL redirector
A special URL redirector – deny_info
Time for action – changing the ownership of log files
Time for action – fixing cache directory permissions
Time for action – creating swap directories
Time for action – finding the program listening on a specific port
Time for action – debugging HTTP requests