Politiche delle Reti e Sicurezza Squid Web Proxy Cache Politiche delle Reti e Sicurezza
Agenda Proxy Sever Cos’è Squid Come si configura Installazione Monitorare Squid Squid Web Proxy Cache
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. Squid Web Proxy Cache
Il Proxy (2/2) Controllare gli accessi alla rete Gestire la banda 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. Squid Web Proxy Cache
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 SLP Service Location Protocol permette ai singoli nodi di trovare i servizi disponibili su una rete locale Squid Web Proxy Cache
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 Squid Web Proxy Cache
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 Squid Web Proxy Cache
Squid (3/3) Possono essere attivate funzionalità di Cache Definizione della topologia (Gerarchica/Mesh/Singola) Dimensionamento delle cache Regole di memorizzazione degli oggetti Squid Web Proxy Cache
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 Squid Web Proxy Cache
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. Squid Web Proxy Cache
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. Squid Web Proxy Cache
Scambio dei Pacchetti Squid Web Proxy Cache
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) ICP (query response) UDP CARP è un algoritmo si basa su funzione hash con cui si calcola un punteggio per ogni cache HTCP (query response) UDP include alcune caratteristiche sperimentali in ICP (comunicazione di oggetti scaduti o refresh) Squid Web Proxy Cache
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 Squid Web Proxy Cache
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 Squid Web Proxy Cache
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 Squid Web Proxy Cache
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 Squid Web Proxy Cache
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 Squid Web Proxy Cache
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 80 acl Safe_ports port 21 acl password proxy_auth REQUIRED acl nnconsentiti url_regex “/nnconsentiti.txt" http_access deny !Safe_ports http_access deny nnconsentiti http_access allow password Squid Web Proxy Cache
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 Squid Web Proxy Cache
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 Squid Web Proxy Cache
Una soluzione si trova sempre… Installazione Problemi!?!?!?!? Una soluzione si trova sempre… Squid Web Proxy Cache
Avvio di Squid Squid Web Proxy Cache
Configurazione manuale del proxy Squid Web Proxy Cache
Prova di navigazione Squid Web Proxy Cache
Configurazione post Installazione Squid Web Proxy Cache
Gestione permessi – Abilitare la navigazione a tutti Squid Web Proxy Cache
Gestione permessi – Negare l’accesso ad un Host (1/3) Squid Web Proxy Cache
Gestione permessi – Negare l’accesso ad un Host (2/3) Squid Web Proxy Cache
Gestione permessi – Negare l’accesso ad un Host (3/3) Squid Web Proxy Cache
Gestione permessi – Accesso alla rete temporizzato (1/2) Squid Web Proxy Cache
Gestione permessi – Accesso alla rete temporizzato (2/2) Squid Web Proxy Cache
Gestione permessi – Richiesta di autenticazione degli utenti (1/3) Squid Web Proxy Cache
Gestione permessi – Richiesta di autenticazione degli utenti (2/3) Squid Web Proxy Cache
Gestione permessi – Richiesta di autenticazione degli utenti (3/3) Squid Web Proxy Cache
Programma di autenticazione (1/2) Squid Web Proxy Cache
Programma di autenticazione (2/2) Squid Web Proxy Cache
Creazione utenti (1/2) Squid Web Proxy Cache
Creazione utenti (2/2) Squid Web Proxy Cache
Login Squid Web Proxy Cache
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 Inseire report e altri prog di analisi Squid Web Proxy Cache
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 Squid Web Proxy Cache
FINE!!! Squid Web Proxy Cache