I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Squid nella rete aziendaleConfigurazioni e soluzioni
Daniele Albrizio
E-mail: [email protected]
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Cos’e’ un Proxy
• Procura, messo, persona mandata al posto del titolare e che rappresenta lo stesso
• Server proxy memorizza le ultime pagine visitate dagli utenti per cui, se un utente vuole collegarsi a una pagina da poco visitata da qualcun altro, essa può essere scaricata dal server proxy invece che dal sito remoto, aumentando così la velocità di risposta e ottimizzando l’utilizzo della rete. (caching)
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Cos’e’ un Proxy
• nelle reti locali protette i proxy sono utilizzati soprattutto come gateway in modo tale che una sola macchina possa accedere all'esterno e tutti gli altri calcolatori possano ottenere i dati dall'esterno della rete, appoggiandosi ad essa.
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Il proxy open source Squid
• Proxy pensato principalmente per ilweb
• Uno dei piu’ diffusi su Internet soprattutto per quanto riguarda gli ISP e i backbones
• Implementato, con qualche modifica, in molti net-cache, firewalls e network appliances (ad es.: Sun-Cobalt CacheRaq 4) (http://www.squid-cache.org/products.html)
• Lavora bene sui grandi numeri
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Squid http://www.squid-cache.org/
• Software Free Open Source• proxying and caching of HTTP, FTP, and other URL's• proxying for SSL• cache hierarchies• ICP, HTCP, CARP, Cache Digests• transparent caching• extensive access controls• HTTP server acceleration• SNMP• caching of DNS lookups
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Configurazioni possibili
• Proxy only
• Proxy and Cache
• Transparent Proxy
• Cache Hierarchy
• HTTP accelerator
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Proxy only
• Soluzione “gateway” per reti protette
• Ho banda a sufficienza, ma voglio proteggere i client e l’intranet
• Voglio che i miei dipendenti possano fare ricerche in Internet ( come strumento di lavoro, aumentando il loro know-how)
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Proxy onlyCome:
• Isolo l’intranet sul router facendo passare solo l’IP del proxy
• Posso impedire l’accesso ad alcuni siti che “distraggono” i miei dipendenti
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Proxying and Caching
• Alla funzionalità precedente voglio aggiungere un risparmio di banda in uscita
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
proxying and caching of HTTP, FTP, and other URL's
Host dacontattare
Proxy delProvider
Client(Browser)
Internet
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
proxying and caching of HTTP, FTP, and other URL's
Internet
Proxy delProvider
Client(Browser)
Computer locale Provider Internet (il resto)
RAM
Dischi
Dischi
RAM
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Cache Hierarchies
• In una grossa organizzazione con un’intranet veloce ed un collo di bottiglia verso Internet
• In un grande ISP
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Cache Hierarchies
Child Proxy
Oceano
Client(Browser)
Parent Proxy
LocalInternet
RemoteInternet
Sibling Proxy
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Cache Hierarchies
• Il Parent puo’ fare da forwarder della richiesta e in tal caso tiene una copia di essa nella sua cache
• Il Sibling non inoltra le richieste dei fratelli
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Esempio Hierarchy GARR
• Proxy Parentsui nodi principali
• Proxy Siblingsui nodisecondari
• http://cache.garr.it/
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
HTTP acceleratorconfigurazione 1
• Ho un sito web lento o affollato che richiede risorse hardware ingenti
• I contenuti del sito non si aggiornano molto velocemente in rapporto alla frequenza delle connessioni
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Http Accelerator 1 (http 1.0 safe)
Squid http accelerator12.21.2.5
(httpd_accel_single_host)
Client(Browser)
DNSpubblico
Internetwww.pinco.it12.21.2.5
Web Server10.0.0.3
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
HTTP acceleratorconfigurazione 2
• Ho piu’ di un sito web su una sottorete nascosta
oppure
• Devo bilanciare il carico fra piu’ server con applicazioni piuttosto pesanti
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Richiesta del browser
• Host: euro.pinco.it:555• Connection: Keep-Alive
• GET /prova.html HTTP/1.1• Accept: image/gif, image/x-xbitmap,
image/jpeg, […], */*• Accept-Language: it• Accept-Encoding: gzip, deflate• User-Agent: Mozilla/4.0 (compatible[…]
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Richiesta del browser
• Host: euro.pinco.it:555• Connection: Keep-Alive
• GET /prova.html HTTP/1.1• Accept: image/gif, image/x-xbitmap,
image/jpeg, […], */*• Accept-Language: it• Accept-Encoding: gzip, deflate• User-Agent: Mozilla/4.0 (compatible[…]
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Http Accelerator 2
Squid httpaccelerator12.21.2.510.0.0.10
Client(Browser)
DNSpubblico
Internet
DNS ohosts
privato
Web Server10.0.0.5
www.pinco.it12.21.2.5
www.pinco.it10.0.0.5
Web Server10.0.0.2
Web Server10.0.0.3
Web Server10.0.0.4
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Http Accelerator 3
Squid httpaccelerator12.21.2.510.0.0.10
Client(Browser)
DNSpubblico
Internet
Web Server10.0.0.5
www.pinco.it12.21.2.5
www.pinco.it <-> 10.0.0.5Web Server
10.0.0.2
Web Server10.0.0.3
Web Server10.0.0.4
Redirector
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Transparent proxying and caching
applicabilità
• Realtà client eterogenee e unmanaged
• Grossi backbones
• Configurazioni particolari della rete e politiche aziendali che lo richiedano
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Transparent proxying and caching
• Pro» accoppiato al caching normale riduce
notevolmente il traffico sui backbones
• Contro» diversi “flavour” di protocollo HTTP» complica il network debugging» non completamente transparent (errori del
proxy arrivano sul client)
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Transparent proxying and caching
Router oL3+ switch
Proxy
Client(Browser)
I pacchetti in uscita dalla lan verso la porta 80 vengonoinviati al proxy dal router.
Transparent Proxy with Linux and Squid mini-HOWTO
Client(Browser)
Client(Browser)
Client(Browser)
Internet
ProxyParent
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Transparent proxying and caching
LinuxRouter+ Squid
Client(Browser)
Configurazione flessibile per piccole LAN
Client(Browser)
Client(Browser)
Client(Browser)
Internet
ProxyParent
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Alternativa al Transparent Proxy
• Proxy Autoconf (Netscape)» javascript function FindProxyForURL(url,
host)» url exclusion, proxy load balancing, proxy
takeover
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Alternativa al Transparent Proxy
• WPAD (web proxy auto discovery)» permette la scoperta automatica dell’host
contenente il proxy.pac» pino.econ.univ.trieste.it cerchera’ wpad.dat
(formerly proxy.pac) in ordine nelle seguenti url:
• http://wpad.econ.univ.trieste.it/wpad.dat• http://wpad.univ.trieste.it/wpad.dat• http://wpad.trieste.it/wpad.dat
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Alternativa al Transparent Proxy
• WPAD (web proxy auto discovery)» IETF draft scaduto - implementato solo in
InternetExplorer e attivato di default» porta un consistente aumento dei client che
utilizzano il proxy in una rete unmanaged» si puo’ usare anche nel DHCP e nei campi
DNS TXT
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Da tenere bene in mente
• Squid non e’ un proxy per il protocollo FTP
• L’IP based authentication viene compromessa (soprattutto dalle gerarchie di proxy e dal transparent proxy)
• SSL ed estensioni del protocollo http vengono tunnellizzate
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Da tenere bene in mente
• Le pagine che si vanno a mettere in cache dovrebbero riportare informazioni corrette riguardo alla scadenza, validita’ e cachabilita’ del loro contenuto (IETF draft on Known HTTP Proxy/Caching Problems )
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Proxying SSL
Host dacontattare
Proxy
Client(Browser)
CONNECTIl protocollo SSL viene instradatoda e verso il server destinatariosenza usare la cache in quantocriptato.A tale scopo viene usato il metodohttp CONNECTNon ha senso mettere in cachepagine dinamiche e sicure.
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Proxying e caching FTP (CERN like)
Host dacontattare
Proxy
Client(Browser)
FTPIl client fa una richiesta httpal Proxy contenente una risorsa ftp:(GET ftp://ftp.unina.it/README HTTP/1.0)
Il Proxy effettua una connessioneftp e redirige il contenuto sullacomunicazione http con il client
HTTP
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Impatto di un proxy httpsulla rete aziendale
• -25% di traffico
• -52% richieste
• calo di efficienza su traffico ftp a causa di bug dei clients (IE5/6) e aggiornamento antivirus con connessioni dirette
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Configurazioni possibili
Quale fa per noi?
• Proxy only
• Proxy and Cache
• Cache Hierarchy
• HTTP accelerator
• Transparent Proxy
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Bibliografia
• Web Caching (The Internet Protocol Journal -CISCO)http://www.cisco.com/warp/public/759/ipj_2-3.pdf
• IE and CERN-Based FTP proxy servers
• FTP folders bug in IE 5 - 6http://support.microsoft.com/support/kb/articles/Q217/8/88.ASP
• Introducing Transparent Web Caching in a LAN (CNR) http://www.cmg.org/national/showcase/pdfs/BestItaly.pdf
• IETF draft on Known HTTP Proxy/Caching Problems draft-ietf-wrec-known-prob-02.txt
• IETF draft on Web Proxy Auto-Discovery Protocoldraft-cooper-webi-wpad-00.txt
• Navigator Proxy Auto-Config File Formathttp://home.netscape.com/eng/mozilla/2.0/relnotes/demo/proxy-live.html
I marchi sono di proprietà dei rispettivi possessori
© 2001 Daniele Albrizio
Bibliografia
• rfc 2186 - Internet Cache Protocol (ICP), version 2
• rfc 2616 - Hypertext Transfer Protocol -- HTTP/1.1
• Linux Networking HOWTOhttp://www.linuxdoc.org/HOWTO/Net-HOWTO/index.html
• Transparent Proxy with Linux and Squid mini-HOWTOhttp://www.linuxdoc.org/HOWTO/mini/TransparentProxy.html
• Firewall and Proxy Server HOWTOhttp://www.linuxdoc.org/HOWTO/Firewall-HOWTO.html
• Linux 2.4 Advanced Routing HOWTOhttp://www.linuxdoc.org/HOWTO/Adv-Routing-HOWTO.html
• SQUID Frequently Asked Questionshttp://www.squid-cache.org/Doc/FAQ/FAQ.html
• Servizio Web Cache Nazionale GARRhttp://cache.garr.it/