######################################
Procedimento
Configurazione Squid Web Cash Proxy
######################################
Per prima cosa procuriamoci l'ultima versione stabile
dal sito http://www.squid-cache.org.
Lo scarichiamo e lo compiliamo a seconda che sia
un rpm o un sorgente. Dopo questo andiamo nella directory
/etc/squid, e modifichiamo il file squid.conf,
nelle seguenti righe:
http_port
di default sta in listening su tutti gli ip della
macchina sulla porta 3128, conviene cambiarlo:
esempio: http_port 192.168.1.1:31336
cache_mem
di default 8 MB, dovete settare questo paramentro
ad ¼ della ram totale.
esempio: cache_mem 128 MB
cache_dir ufs
è la directory in cui risiederà la
cache, dovrete specificare la dimensione massima allocabile.
esempio: cache_dir ufs /var/spool/squid 10000 16
256
|
MB Allocabili sull'HD
acl
Le access list servono a dire a squid, quali sono
le porte sicure su cui può accedere, quali
indirizzi ip accettare ed i metodi di connessione.
Prendiamo una configurazione minimale che ci fornisce
squid stesso:
acl all src 0.0.0.0/0.0.0.0 (da qualsiasi ip accetta
le connessioni)
acl manager proto cache_object (gestisce la cache)
acl localhost src 127.0.0.1/255.255.255.255 (specifica
l'indirizzo di locahost come sorgente)
acl to_localhost dst 127.0.0.0/8 (specifica l'indirizzo
di localhost come destinazione)
acl SSL_ports port 443 563 (porta sicura su cui può
accedere)
acl Safe_ports port 80 # http (porta sicura su cui
può accedere)
acl Safe_ports port 21 # ftp (porta sicura su cui
può accedere)
acl Safe_ports port 443 563 # https, snews (porta
sicura su cui può accedere)
acl Safe_ports port 70 # gopher (porta sicura su
cui può accedere)
acl Safe_ports port 210 # wais (porta sicura su cui
può accedere)
acl Safe_ports port 1025-65535 # unregistered ports
(porta sicura su cui può accedere)
acl Safe_ports port 280 # http-mgmt (porta sicura
su cui può accedere)
acl Safe_ports port 488 # gss-http (porta sicura
su cui può accedere)
acl Safe_ports port 591 # filemaker (porta sicura
su cui può accedere)
acl Safe_ports port 777 # multiling http (porta sicura
su cui può accedere)
acl CONNECT method CONNECT (metodo di connessione)
http_access
Serve ad impostare la politica delle access list
(deny, all).
esempio:
http_access allow manager localhost
http_access deny manager
Modificando queste righe di squid e lasciando invariate
(di default) le altre abbiamo una configurazione minimale
di squid, ben lontana da una configurazione applicabile
ad una lan aziendale e simili, per una lan casalinga
può andar anche bene se non volete perdere
troppo tempo dietro a squid.
Bene adesso non ci resta che lanciarlo, con questi
due comandi:
[root@main alessio]# squid -z
così crea la cache e si imposta le directory.
[root@main alessio]# /etc/init.d/squid start
Se non ci sono errori abbiamo squid avviato, e quindi
abbiamo fatto la metà del lavoro :)
#########################################
Procedimento
Configurazione iptables per Trasparent Proxy
#########################################
Adesso abbiamo due possibilità:
1 Specifichiamo al browser manualmente l'indirizzi
ip del proxy e lo facciamo navigare attraverso
essso.
2 Configuriamo iptables in modo da avere un
Trasparent Proxy che forwarda i pacchetti destinati
alla porta 80, alla porta del nostro proxy server.
Iniziamo:
Per prima cosa dobbiamo assicurarci di avere iptables
installato.
Utilizziamo il modulo NAT.
iptables -t nat -A POSTROUTING -i <lan_interface>
-p tcp -s <lan_hosts> --sport 1024:65535 dport
80 -j REDIRECT --to-port 3128
iptables -A INPUT -i <lan_interface> -p tcp
-s <lan_hosts sport 1024:65535 -d <lan_address>
iptables -A OUTPUT -o <public_interface> -p
tcp -s <public_address> --sport 1024:65535 --dport
80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i <public_interface> -p
tcp --sport 80 -d <public_address> --dport 1024:65535
-m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o <lan_interface> -p tcp
-s <lan_address> --sport 80 --dport 1024:65535
-m state --state ESTABLISHED,RELATED -j ACCEPT
Così avrete un Trasparent Proxy vero e proprio.
Le rules di iptables dovranno essere sulla macchina
che ha squid ovviamente e dovrà essere la macchina
gateway per tutta la rete.
Per chiarimenti, dubbi, domande, mi trovate su irc.grolug.org
#grolug.
Saluti
BlAcKm[S]
|