Squid – caching proxy for the Web

Squid is a high-performance proxy caching server and web cache daemon. It supports FTP, gopher and HTTP data objects.

Squid has a wide variety of uses, from speeding up a web server by caching repeated requests, caching web, DNS and other computer network lookups for a group of people sharing network resources; to aiding security by filtering traffic.

Squid consists of a main server program squid, a Domain Name System lookup program dnsserver, some optional programs for rewriting requests and performing authentication, together with some management and client tools.

Squid offers a rich access control, authorization and logging environment to develop web proxy and content serving applications.

Features include:

  • Web proxy:
    • Caching to reduce access time and bandwidth use.
    • Keeps meta data and especially hot objects cached in RAM.
    • Caches DNS lookups.
    • Supports non-blocking DNS lookups.
    • Implements negative checking of failed requests.
  • Squid caches can be arranged in a hierarchy or mesh for additional bandwidth savings.
  • Enforce site-usage policies with extensive access controls.
  • Anonymize connections, such as disabling or changing specific header fields in a client’s HTTP request.
  • Reverse proxy.
  • Media-range limitations.
  • Supports SSL.
  • Support for IPv6.
  • Error Page Localization – error pages presented by Squid may now be localized per-request to match the visitors local preferred language.
  • Connection Pinning (for NTLM Auth Passthrough) – a workaround which permits Web servers to use Microsoft NTLM Authentication instead of HTTP standard authentication through a web proxy.
  • Quality of Service (QoS) Flow support:
    • Select a TOS/Diffserv value to mark local hits.
    • Select a TOS/Diffserv value to mark peer hits.
    • Selectively mark only sibling or parent requests.
    • Allows any HTTP response towards clients to have the TOS value of the response coming from the remote server preserved.
    • Mask certain bits in the TOS received from the remote server, before copying the value to the TOS send towards clients.
  • SSL Bump (for HTTPS Filtering and Adaptation) – Squid-in-the-middle decryption and encryption of CONNECT tunneled SSL traffic, using configurable client- and server-side certificates.
  • eCAP Adaptation Module support.
  • ICAP Bypass and Retry enhancements – ICAP is now extended with full bypass and dynamic chain routing to handle multiple adaptation services.
  • ICY streaming protocol support – commonly known as SHOUTcast multimedia streams.
  • Dynamic SSL Certificate Generation.
  • Support for the Internet Content Adaptation Protocol (ICAP).
  • Full request logging.

Website: www.squid-cache.org
Support: FAQ
Developer: National Laboratory for Applied Networking Research (NLANR) and Internet volunteers
License: GNU GPL v2

Squid is written in C++. Learn C++ with our recommended free books and free tutorials.

Return to Web Caches Home Page | Return to Optimize Web Delivery Home Page


Popular series
Guide to LinuxNew to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux.
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions.
ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information.
Alternatives to Proprietary SoftwareReplace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS.
Linux Around The WorldLinux Around The World showcases events and usergroups that are relevant to Linux enthusiasts.
AudioSurveys popular streaming services from a Linux perspective: Amazon Music Unlimited, Myuzi, Spotify, Deezer, Tidal.
Saving Money with LinuxSaving Money with Linux looks at how you can reduce your energy bills running Linux.
System ToolsEssential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users.
ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
Home ComputersHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years. It can be a bumpy ride.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery.
DockerGetting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers.
Android AppsBest Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series.
Programming BooksThese best free books accelerate your learning of every programming language. Learn a new language today!
Programming TutorialsThese free tutorials offer the perfect tonic to our free programming books series.
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA.
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.