# Squid

Squid és un popular programa de programari lliure que implementa un servidor proxy i un domini per memòria cau de pàgines web, publicat sota llicència GPL. Té una àmplia varietat d'utilitats, des d'accelerar un servidor web, guardant en memòria cau peticions repetides a DNS i altres cerques per a un grup de gent que comparteix recursos de la xarxa, fins a memòria cau de web, a més d'afegir seguretat filtrant el trànsit. Està especialment dissenyat per executar-se sota entorns Unix-like.
Squid ha estat desenvolupat durant molts anys i se'l considera molt complet i robust. Encara que orientat a principalment a HTTP i FTP és compatible amb altres protocols com Internet Gopher. Implementa diverses modalitats de xifrat com TLS, SSL, i HTTPS.

## Característiques

Squid té les següents característiques:

### Proxy i Memòria cau HTTP, FTP, i altres adreces

    Squid proporciona un servei de Proxy que suporta peticions HTTP, HTTPS i FTP a equips que necessiten accedir a Internet i al seu torn proveeix la funcionalitat de memòria cau especialitzat en el que conté de forma local les pàgines consultades recentment pels usuaris. D'aquesta manera, s'incrementa la rapidesa d'accés als servidors d'informació Web i FTP que es troba fora de la xarxa interna.

### Proxy per SSL

    Squid també és compatible amb SSL (Secure Socket Layer) amb el que també accelera les transaccions xifrades, i és capaç de ser configurat amb amplis controls d'accés sobre les peticions d'usuaris.

### Jerarquies de memòria cau

    Squid pot formar part d'una jerarquia de caches. Diversos proxys treballen conjuntament servint les peticions de les pàgines. Un navegador demana sempre les pàgines a un sol proxy, si aquest no té la pàgina en la memòria cau fa peticions als seus germans, que si tampoc les tenen les fan al seu / s pare / s. .. Aquestes peticions es poden fer mitjançant dos protocols: HTTP i ICMP.

### ICP, HTCP, CARP,memòria cau digests

    Squid segueix els protocols ICP, HTCP, CARP imemòria cau digestsque tenen com a objectiu permetre a un proxy "preguntar" a altres proxys memòria cau si tenen emmagatzemat un recurs determinat.

### Caché transparent

    Squid es pot configurar per ser usat com a proxy transparent de manera que les connexions són encaminades dins del proxy sense configuració per part del client, i habitualment sense que el mateix client conegui de la seva existència. De manera predefinida Squid utilitza el port 3.128 per atendre peticions, però es pot especificar que ho faci en qualsevol altre port disponible o bé que ho faci en diversos ports disponibles a la vegada.

### WCCP

    A partir de la versió 2.3 Squid implementa WCCP (Web Cache Control Protocol). Permet interceptar i redirigir el tràfic que rep un router cap a un o més proxys memòria cau, fent control de la connectivitat d'aquests. A més permet que un dels proxys memòria cau designat pugui determinar com distribuir el trànsit redirigit al llarg de tot la matriu de proxys memòria cau.

### Control d'accés

    Ofereix la possibilitat d'establir regles de control d'accés. Això permet establir polítiques d'accés en forma centralitzada, simplificant l'administració d'una xarxa.

### Acceleració de servidors HTTP

    Quan un usuari fa petició cap a un objecte a Internet, aquest és emmagatzemat en memòria, si un altre usuari fa petició cap al mateix objecte, i aquest no ha sofert cap modificació des que el va accedir l'usuari anterior, Squid mostrarà el que ja es troba en memòria en lloc de tornar a descarregar-lo des d'Internet. Aquesta funció permet navegar ràpidament quan els objectes ja estan en memòria i, a més optimitza enormement la utilització de l'amplada de banda.

### SNMP

    Squid permet activar el protocol SNMP, aquest proporciona un mètode simple d'administració de xarxa, per poder supervisar, analitzar i comunicar informació d'estat entre una gran varietat de màquines, podent detectar problemes i proporcionar missatges d'estats.

### Memòria cau de resolució DNS

    Squid està compost també pel programa dnsserver, que s'encarrega de la recerca de noms de domini. Quan Squid s'executa, produeix un nombre configurable de processos dnsserver, i cada un d'ells realitza la seva recerca en DNS. D'aquesta manera, es redueix la quantitat de temps que la memòria cau ha d'esperar a aquestes cerques DNS.

## Proxy web

El proxy caché és una manera de guardar els objectes demanats d'Internet (per exemple, dades com pàgines web) disponibles via protocols HTTP, FTP i Gopher en un sistema més proper al lloc on es demanen. Els navegadors web poden usar la memòria cau local Squid com un servidor proxy HTTP, reduint el temps d'accés així com el consum d'amplada de banda. Això és moltes vegades útil per als proveïdors de serveis d'Internet per incrementar la velocitat dels seus consumidors i per a les xarxes d'àrea local que comparteixen la connexió a Internet.
Com que també és un proxy (és a dir, es comporta com un client en lloc del client real), pot proporcionar un cert grau d'anonimat i seguretat. No obstant això, també pot introduir problemes significatius de privacitat, ja que pot registrar molta informació, incloent-hi els URL sol·licitats juntament amb altra informació addicional com la data de la petició, versió del navegador i del sistema operatiu, etc.
Un programa client (per exemple, un navegador) o bé ha d'especificar explícitament el servidor proxy que voleu utilitzar (típic per a consumidors d'ISP) o bé podria estar usant un proxy sense cap configuració extra. A aquest fet se l'anomena memòria cau transparent, en el qual totes les peticions HTTP són interceptades per squid i totes les respostes en memòria cau. Això últim és típic en xarxes corporatives dins d'una xarxa d'accés local i normalment inclou els problemes de privacitat esmentats prèviament.
Squid té algunes característiques que poden facilitar establir connexions anònimes. Característiques tals com eliminar o modificar camps determinats de la capçalera de peticions HTTP dels clients. Aquesta política d'eliminació i alteració de capçaleres s'estableix en la configuració de Squid. L'usuari que demana pàgines a través d'una xarxa que utilitza Squid de forma transparent, normalment no és conscient d'aquest procés o del registre d'informació relacionada amb el procés.

## Compatibilitat

Squid funciona sobre els Sistemes Operatius:
* AIX
* BSDI
* Digital Unix
* FreeBSD
* HP-UX
* IRIX
* GNU / Linux
* Mac OS X
* NetBSD
* NextStep
* OpenBSD
* SCO Unix
* SunOS / Solaris
* Windows NT
Per a Windows s'utilitzen els paquets Cygwin / GnuWin32. Obs.: Hi ha, actualment, paquets que corren squid en W32 sense necessitat de Cygwin.
Per analitzar els seus logs es pot utilitzar Sarg

## Vegeu també

* GNU / Linux
* Firewall

## Enllaços externs

* Web oficial de Squid Web Proxy Cache
* Informació de squid en castellano
* Millores de rendiment Arxivat 2008-05-01 a Wayback Machine.
* # Download | outline Squid-setup for Windows NT / 2k / XP Arxivat 2010-03-27 a Wayback Machine.
* Manual simple i en espanyol de Squid Arxivat 2010-02-07 a Wayback Machine.