Che cos’è un proxy e perchè usarlo?

By | Maggio 7, 2014

Riporto integralmente la definizione di proxy “Un proxy è un programma che si interpone tra un client ed un server, vagliando e decidendo se  inoltrare le richieste e le risposte dall’ uno all’ altro o se reindirizzarle da qualche altra parte. Il client si collega al proxy invece che al server, e gli invia delle richieste. Il proxy a sua volta si collega al server e inoltra la richiesta del client, riceve la risposta e la inoltra al client”. Alla domanda perchè usarlo ci possono essere risposte diverse, tutte altrettanto valide e che possono essere usate singolarmente oppure no e cioè:

 

a) per fare caching cioè per  immagazzinare per un certo tempo i risultati delle richieste di un utente, e se un altro utente effettua le stesse richieste rispondere senza dover consultare il server originale permettendo  un miglioramento delle prestazioni ed una riduzione del consumo di ampiezza di banda.

b) per fare monitoraggio cioè  un proxy può permettere di tenere traccia di tutte le operazioni    effettuate (ad esempio,tutte le pagine web visitate), consentendo statistiche ed osservazioni dell’utilizzo della rete.

c) per fare controllo cioè un proxy può applicare regole definite dal SysAdmin per determinare quali richieste inoltrare e quali rifiutare, oppure limitare l’ampiezza di banda utilizzata dai client, oppure filtrare le pagine Web in transito, ad esempio bloccando quelle il cui contenuto è ritenuto offensivo in base a determinate regole.

d) per mantenere la privacy un proxy può garantire un maggiore livello di privacy mascherando il vero indirizzo IP del client in modo che il server non venga a conoscenza di chi ha effettuato la richiesta. Squid è senza dubbio uno dei piu’ famosi e usati proxy server, nel caso in oggetto funziona da cache proxy  e come autenticatore della connessione per l’utenza.

 

I proxy possono lavorare da soli o in serie (parent), normalmente  nelle  realta’ aziendali lavorano in parent in modo tale che ogni proxy svolga un determinato compito sequenziale sino all’ ottenimento del risultato finale. Tipicamente oltre al discorso caching nella lan aziendali c’e’ una componente di filtraggio dei contenuti che la policy interna definisce, e altro aspetto da non trascurare e’ quello della protezione dai virus che si possono trovare sul web, se e’ vero che ogni client windows in lan deve avere  il suo antivirus aggiornato, e’ altrettanto vero che se si puo’ bloccare il pericolo prima che entri  il vantaggio  e’ evidente. Altro aspetto importante e’ l’autenticazione un proxy puo’ essere con o senza autenticazione dell’utente, e se prevede autenticazione ce ne sono di diversi tipi, l’autenticazione che ha senso (ovviamente) solo in determinati contesti e’ in primo luogo assunzione di responsabilita’, in secondo luogo puo’ essere la discriminante per i permessi di navigazione, a puro titolo d’esempio: l’utente clark ha pieno accesso alla navigazione l’utente tucker puo’ navigare solo per quanto concesso dalle norme  generali l’utente maceo non puo’ navigare. La mia realizazione aziendale prevede una “catena” di proxy che contempla nell’ordine squid3 –> Dansguardian–> Squid. Molto spesso nelle aziende si ricorre ai proxy per ottemperare  alle linee  guida  del garante per la privacy. In linea di massima si puo’ dire che i mezzi aziendali non devono essere usati per scopi personali o comunque per scopi non strettamente attinenti al raggiungimento degli obbiettivi aziendali. Dato che purtroppo siamo in un paese dove è assolutamnte necessario cautelarsi e dato che il SysAdmin e’ il responsabile all’interno dell’azienda è una cosa buona predisporre un sitema di filtraggio molto stretto che poi si va ad aprire man mano che serve. Purtroppo non esiste un solo proxy che faccia tutto quello che normalmente serve, quindi nasce il concetto di proxy in parent o in catena/cascata. I proxy possono essere con o senza autenticazione, tipicamente per un uso “casalingo” l’autenticazione e’ del tutto inutile viceversa in un contesto aziendale specie in caso di contestazioni o peggio di richiesta dei log da parte delle forze dell’ordine (c’è capitato anche questo per un brutto ceffo che girava qui). il sapre chi ha fatto cosa e quando puo’ essere molto importante da qui l’autenticazione. Nella realizzazione che ho adottato in azienda ho usato Squid e Dansguardian o meglio per la precisione squid+dansguardian+squid. Squid è il piu’ usato e il piu’ performante proxy che ci sia in circolazione, può anche in minima parte fare da filtro ma per i contenuti il top e’ Danguardian. Il terzo squid è li solo come appoggio, infatti Dansguardian non può essere l’ultimo di una catena. Questo giro  decisamente complesso, si rende necessario per una cosa molto semplice, vale a dire sfruttare l’autenticazione di ogni singolo utente quando accede alla rete, senza dover ripetere le proprie credenziali per poter navigare. Sulla macchina che fa da proxy bisognerà pertanto installare squid, dansguardian e samba per l’autenticazione ntlm presa dal samba PDC aziendale.