squid.conf

Il file di configurazione principale di Squid è squid.conf, il prefix cambia a seconda del package utilizzato per l'installazione, esempio il prefix del file di configurazione dei sorgenti è /usr/local/etc mentre per l'rpm di redhat è /etc/squid.
Il file di configurazione base risulta essere molto verboso e ostico per il numero di parametri configurabili, ma teoricamente si potrebbe commentare tutte le voci e il demone partirebbe con i valori settati a quelli di default.

Di seguito sono riportati le principali opzioni settabili nel file di configurazione con relativa  spiegazione:

http_port
Specifica la porta ove squid si metterà in ascolto, come nell'esempio è possibile specificare più porte, La porta di default è 3128
Esempio: http_port 7575 8080

cache_dir
Specifica la directory ove risiede la cache gestita da squid; i valori a seguire risulatano essere, la dimensione della cache in mega (512) e il numero delle sottodirectory  di primo livello (16) e secondo (256). Come nel caso di http_port è possibile specificare più entry per lo stesso operatore.
I valori di default sono: 100 16 256.
Esempio: cache_dir /var/cache/ 512 16 256

cache_effective_user , cache_effective_group
Parametro per specificare l'owner dei processi di squid.
Per motivi di sicurezza è bene evitare di utilizzare l'owner di root ma di un utente creato ad hoc.
Di default, se le opzioni sono commentate, l'owner del processo corrisponde a quello dell'utente che ha lanciato il demone.
Esempio:
cache_effective_user squid
cache_effective_group squid


cache_peer
Abilitata questa opzione, squid ha la possibilità di comunicare con altri squid nella stessa network, con una specificata gerarchia, per gestire in modo più funzionale la cache distribuita nei vari nodi.
Esempio: cache_peer proxy.openskills.info parent 3128 3130 default
Il primo campo specifica l'hostname dell'affiliato ovvero l'host con il quale comunicherà per l'interrogazione della cache. Il secondo campo specifica un vero e proprio grado di parentela fra i due host. Il terzo campo specifica la porta http del server destinatario, mentre il quarto valore specifica la porta ICP (UDP) query port, ovvero la porta utilizzata per l'interrogazione della cache remota, l'ultimo e quinto valore specifica le opzioni.

cache_mem
Specifica  l'ammontare della shm (shared memory) in mega da dedicare alla cache. Da ricordare che squid di fatto acquisisce tre volte tanto il valore specificato

cache_mgr
Parametro per configurare l'email del "cache manager", visualizzato anche nelle pagine di errore.

acl, http_access, icp_access
L'uso delle acl permette usufruire di uno strumento molto flessibile per il controllo degli accessi alle risorse del proxy. Tipicamente viene utilizzata la regola generale di negare a tutti quanti e di limitare l'accesso ai  soli host appartenenti alle proprie network ma è possibile limitare l'accesso per altre discriminanti come l'ora locale e il dominio di destinazione, per il tipo di browser o addirittura per la comunity SNMP.
Per definire le acl occorre differenziare due elementi:

classi : Identificano le regole che gestiscono l'accesso per un gruppo di client con una determinata descriminante. Per esempio per ip o per dominio.
operatori : Gestiscono le regole o le stessi classi per uno specifico protocollo. Esempio: http_access, icp_access and snmp_access
Esempio di classe:acl all src 0.0.0.0/0.0.0.0
Creazione di una acl chiamata "all" che identifica tutti i client (src 0.0.0.0/0.0.0.0)
Esempio di operatore:http_access deny all
Uso dell'operatore http_access per negare l'accesso in modo indiscriminato.

Sintassi acl
acl name type (string|"filename") [string2] [string3] ["filename2"]
La sintassi minima prevede come primo argomento un nome univoco per determinare la acl stessa(name), il tipo della acl come secondo argomento (type) e come terzo argomento la descriminante (string)

Sintassi operatore
operatore allow|deny [!]aclname [& [!]aclname2 ... ]
il primo argomento specifica l'azione ovvero permette (allow) o nega (deny) l'acl che segue. L'acl deve essere specificata con il suo nome e possono essere specificate + acl sulla stessa linea di configurazione.

Privacy Policy