Dott. Marco Trivelli [email protected] Squid Web Proxy Cache Politiche delle Reti e...

43
dott. Marco Trivelli [email protected] Squid Web Proxy Cache Politiche delle Politiche delle Reti e Sicurezza Reti e Sicurezza

Transcript of Dott. Marco Trivelli [email protected] Squid Web Proxy Cache Politiche delle Reti e...

Page 1: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

dott. Marco [email protected]

Squid Web Proxy Cache

Politiche delle Reti Politiche delle Reti e Sicurezzae Sicurezza

Page 2: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 2

Agenda

Proxy Sever

Cos’è Squid

Come si configura

Installazione

Monitorare Squid

Page 3: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 3

Il Proxy (1/2)

Il proxy è un intermediario in una comunicazione web.

E’ un applicazione che risiede fra il client ed il server di origine.

Page 4: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 4

Il Proxy (2/2)

Controllare gli accessi alla rete ACL

Gestire la banda Limitazioni di navigazione Controllo dei download

Utilizzare strumenti di cache

Aumentare la sicurezza della rete Il proxy è un filtro tra noi ed internet. Gli attacchi che utilizzano una porta diversa da quella del

proxy sono inefficaci.

Page 5: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 5

Configurazione dei Client

I client devono essere configurati per poter utilizzare il Proxy Server.

Configurazione Manuale L’utente dovrà inserire nel browser l’indirizzo IP e la porta

su cui il proxy è in ascolto

Auto-Configurazione del Proxy Il browser esegue un Javascript. L’utente deve indicare al

browser dove risiede lo script.

Web Proxy Auto Discovery (WPAD) Nessuna configurazione necessaria, è il traffico di rete ad

essere direttamente indirizzato al proxy DHCP, SLP, DNS

Page 6: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 6

Squid (1/3)

Squid è un Web Proxy Server che fornisce funzionalità di Caching e Proxing

Le cache gerarchiche ed il protocollo Internet Cache Protocol (ICP) possono essere paragonati ai tentacoli utilizzati da un calamaro per fare suo tutto quello che lo interessa. http://www.squid-cache.org

Page 7: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 7

Squid (2/3)

Consente di stabilire regole per la politica di utilizzo delle risorse internet.

Politiche di accesso per classi di indirizzi IP (o singoli)

Limitazioni per gruppi di utenti (o singoli)

Definire un database di siti internet accessibili o vietati

Definire un elenco di parole chiave in grado di identificare i siti da rendere irraggiungibili

Controllo degli accessi

Controllo contenuti

Page 8: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 8

Squid (3/3)

Possono essere attivate funzionalità di Cache

Definizione della topologia (Gerarchica/Mesh/Singola)

Dimensionamento delle cache

Regole di memorizzazione degli oggetti

Page 9: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 9

Squid e le Cache

Web caching: meccanismo che consente di memorizzare temporaneamente tutti gli oggetti richiesti dai browser in locazioni più vicine al richiedente (cache server) rispetto alla sorgente dell’informazione (web server di origine)

Le richieste future dello stesso oggetto potranno essere soddisfatte direttamente dal cache server riducendo il tempo di latenza

Page 10: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 10

Web Cache: Topologia (1/2)

Cache Autonoma: composta da una singola unità a cui potrà accedere un numero limitato di utenti.

Cache Gerarchica: se è strutturata ad albero e c’è una precisa distinzione tra i livelli occupati dai nodi.

Page 11: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 11

Web Cache: Topologia (2/2)

Cash Mesh: nel caso in cui la topologia è destrutturata. In questo caso le cache sono tutte allo stesso livello.

Cache Cluster: gruppo di cache separate configurate per comportarsi come un singolo server.

Page 12: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 12

Scambio dei Pacchetti

Client

Proxy Cache

Internet

Page 13: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 13

Protocolli

Lo scopo principale dei protocolli di intercache è quello di aiutare le cache nelle decisioni di instradamento delle richieste

ICP (Internet Cache Protocol)

CARP (Cache Array Routing Protocol)

HTCP (Hypertext Caching Protocol)

Page 14: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 14

Configurare Squid

Il file di configurazione di Squid è squid.conf

Tutte le linee contengono una serie di numeri/chiavi o valori che vanno a costituire una regola di configurazione

Opzioni principali Opzioni di Rete Opzioni per le cache Gestione file di Log Opzioni per programmi esterni (autenticazione) Parametri amministrativi Controlli di accesso

Page 15: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 15

Opzioni di Rete

I seguenti tag indicano su quali porte squid è in ascolto per il protocollo HTTP e ICP.

# TAG: http_port http_port 3128

# TAG: icp_port icp_port 3130

Page 16: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 16

Opzioni per le Cache

Definizione delle Cache# TAG: cache_peer cache_peer 192.168.0.154 parent 3128 3130

login=quov:36598 cache_peer 192.168.0.118 sibling 3128 3130

login=ocram:32098

Le Cache vicine non vengono consultate se nell’URL compiono le parole elencate # TAG: hierarchy_stoplist hierarchy_stoplist cgi-bin ?

Si determinano gli oggetti che non devono mai essere cachati # TAG: no_cache acl QUERY urlpath_regex cgi-bin \? no_cache deny QUERY

Page 17: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 17

File di Log

Transazioni effettuate dai client # TAG cache_access_log

cache_access_log /var/log/squid/access.log

Informazioni sullo stato della cache # TAG cache_log

cache_log /var/log/squid/cache.log

Attività eseguite dallo storage manager di Squid # TAG cache_store_log

cache_store_log /var/log/squid/store.log

Informazioni relative alle tipologie dei browser utilizzati dagli utenti # TAG useragent_log

useragent_log /var/log/squid/useragent.log

Page 18: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 18

Opzioni per Programmi Esterni

Per l’ autenticazione del proxy ci si può avvalere di un programma esterno indicando diversi parametri

schema usato per l’autenticazione

la directory dove risiede il programma

la directory del file contente lo username e la password da controllare

# TAG: auth_param auth_param basic program /usr/lib/squid/ncsa_auth /usr/lib/squid/passwd auth_param basic children 30 auth_param basic realm Squid proxy-caching web

server auth_param basic credentialsttl 2 hour

Page 19: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 19

ACL - Access Control List (1/3)

Le Access Control List consentono di definire regole per:

impedire o consentire agli utenti di accedere a determinati siti o a determinati contenuti

limitare l'utilizzo di particolari protocolli di rete,

consentire o negare l’uso della banda per operazioni di download ecc.

acl Safe_ports port 80acl Safe_ports port 21acl password proxy_auth REQUIRED acl nnconsentiti url_regex “/nnconsentiti.txt"

http_access deny !Safe_ports http_access deny nnconsentiti http_access allow password

Page 20: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 20

ACL - Access Control List (2/3)

Formato utilizzato da Squid acl nomeacl tipoacl valore

Alcuni tipi riconosciuti da Squid Src: indirizzo IP del sorgente (client) dst: indirizzo IP del server di destinazione url_regex: espressione regolare che identifica una

URL Port: seleziona e specifica il numero di porta per il

server di destinazione proxy_auth: autenticazione degli utenti attraverso

un processo esterno

Page 21: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 21

ACL - Access Control List (3/3)

Le regole ACL vengono rigorosamente applicate nell'ordine nel quale sono state scritte

Non appena squid trova una ACL che "metcha" con la richiesta del client la esegue ignorando le ACL successive

Le regole vanno quindi scritte con molta attenzione

Page 22: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 22

Installazione

Problemi!?!?!?!?

Una soluzione si trova sempre…

Page 23: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 23

Avvio di Squid

Page 24: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 24

Configurazione manuale del proxy

Page 25: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 25

Prova di navigazione

Page 26: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 26

Configurazione post Installazione

Page 27: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 27

Gestione permessi – Abilitare la navigazione a tutti

Page 28: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 28

Gestione permessi – Negare l’accesso ad un Host (1/3)

Page 29: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 29

Gestione permessi – Negare l’accesso ad un Host (2/3)

Page 30: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 30

Gestione permessi – Negare l’accesso ad un Host (3/3)

Page 31: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 31

Gestione permessi – Accesso alla rete temporizzato (1/2)

Page 32: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 32

Gestione permessi – Accesso alla rete temporizzato (2/2)

Page 33: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 33

Gestione permessi – Richiesta di autenticazione degli utenti (1/3)

Page 34: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 34

Gestione permessi – Richiesta di autenticazione degli utenti (2/3)

Page 35: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 35

Gestione permessi – Richiesta di autenticazione degli utenti (3/3)

Page 36: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 36

Programma di autenticazione (1/2)

Page 37: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 37

Programma di autenticazione (2/2)

Page 38: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 38

Creazione utenti (1/2)

Page 39: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 39

Creazione utenti (2/2)

Page 40: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 40

Login

Page 41: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 41

Analisi dei log: Calamaris

Calamaris è un tool in grado di analizzare i files di log, prodotti da Squid. E’ in grado di creare statistiche di utilizzo riguardanti:

Status-report per richieste UDP e TCP

Request-Method (GET, HEAD etc. etc.)

Tipi dei file richiesti

Performance della cache ora per ora

Richieste TCP per host

Page 42: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 42

Analisi dei log: Webalizer

Nasce per generare reports per i log dei server web, può funzionare egregiamente anche per la gestione dei log di Squid

Webalizer è particolarmente indicato per i file di grosse dimensioni poichè è molto veloce nell'elaborazione del file di log

Istogramma accessi giornalieri Istogramma accessi per ora Statistiche mensili, giornaliere ed orarie per: Pagina,

File, Kbytes,Contatti Statistiche delle Top per quello che riguarda: Utenza,

URL e Kbytes

Page 43: Dott. Marco Trivelli marco.trivelli@unicam.it Squid Web Proxy Cache Politiche delle Reti e Sicurezza.

Squid Web Proxy Cache 43

FINE!!!