{"id":317,"date":"2013-01-21T17:13:02","date_gmt":"2013-01-21T16:13:02","guid":{"rendered":"http:\/\/clark.tipistrani.it\/?p=317"},"modified":"2013-06-27T10:44:10","modified_gmt":"2013-06-27T08:44:10","slug":"proxy-parent","status":"publish","type":"post","link":"http:\/\/clark.tipistrani.it\/?p=317","title":{"rendered":"Proxy parent ovvero come creare una catena di proxy che facciano ognuno un lavoro diverso"},"content":{"rendered":"<p>Che cos&#8217;\u00e8 un <a href=\"http:\/\/it.wikipedia.org\/wiki\/Proxy\">proxy<\/a> e perch\u00e8 usarlo?<br \/>\nRiporto integralmente la definizione di proxy &#8220;Un proxy \u00e8 un programma che si interpone tra un client ed un server, vagliando e decidendo se\u00a0 inoltrare le richieste e le risposte dall&#8217;uno all&#8217;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&#8221;.<br \/>\nAlla domanda perch\u00e8 usarlo ci possono essere risposte diverse, tutte altrettanto valide e che possono essere usate singolarmente oppure no\u00a0 e cio\u00e8:<br \/>\na) per fare caching cio\u00e8 per\u00a0 immagazzinare per un certo tempo i risultati delle richieste diun utente, e se un altro utente effettua le stesse richieste rispondere senza dover consultare il server originale permettendo\u00a0 un miglioramento delle prestazioni ed una riduzione del consumo di ampiezza di banda.<br \/>\nb) per fare monitoraggio cio\u00e8\u00a0 un proxy pu\u00f2 permettere di tenere traccia di tutte le operazioni\u00a0\u00a0\u00a0 effettuate (ad esempio,tutte le pagine web visitate), consentendo statistiche ed osservazioni dell&#8217;utilizzo della rete.<br \/>\nc) per fare controllo cio\u00e8 un proxy pu\u00f2 applicare regole definite dal SysAdmin per determinare quali richieste inoltrare e quali rifiutare, oppure limitare l&#8217;ampiezza di banda utilizzata dai client, oppure filtrare le pagine Web in transito, ad esempio bloccando quelle il cui contenuto \u00e8 ritenuto offensivo in base a determinate regole.<br \/>\nd) per mantenere la privacy un proxy pu\u00f2 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.<\/p>\n<p>Squid \u00e8 senza dubbio uno dei piu&#8217; famosi e usati proxy server, nel caso in oggetto funziona da cache proxy\u00a0 e come autenticatore della connessione per l&#8217;utenza.<br \/>\nUn ottimo anche se un p\u00f2 datato\u00a0 tutorial su squid lo si puo&#8217; trovare a questo indirizzo\u00a0 <a href=\"http:\/\/www.acmeconsulting.it\/Squid-Book\/\">squid-book oltre le FAQ<br \/>\n<\/a>I proxy possono lavorare da soli o in serie (parent), normalmente\u00a0 nelle\u00a0 realta&#8217; aziendali lavorano in parent in modo tale che ogni proxy svolga un determinato compito sequenziale sino all&#8217;ottenimento del risultato finale.<br \/>\nTipicamente oltre al discorso caching nella lan aziendali c&#8217;e&#8217; una componente di filtraggio dei contenuti che la policy interna definisce, e altro aspetto da non trascurare e&#8217; quello della protezione dai virus che si possono trovare sul web, se e&#8217; vero che ogni client windows in lan deve avere\u00a0 il suo antivirus aggiornato, e&#8217; altrettanto vero che se si puo&#8217; bloccare il pericolo prima che entri\u00a0 il vantaggio\u00a0 e&#8217; evidente.<br \/>\nAltro aspetto importante e&#8217; l&#8217;autenticazione un proxy puo&#8217; essere con o senza autenticazione dell&#8217;utente, e se prevede autenticazione ce ne sono di diversi tipi, l&#8217;autenticazione che ha senso (ovviamente) solo in determinati contesti e&#8217; in primo luogo assunzione di responsabilita&#8217;, in secondo luogo puo&#8217; essere la discriminante per i permessi di navigazione, a puro titolo d&#8217;esempio:<br \/>\nl&#8217;utente clark ha pieno accesso alla navigazione<br \/>\nl&#8217;utente tucker puo&#8217; navigare solo per quanto concesso dalle norme\u00a0 generali<br \/>\nl&#8217;utente maceo non puo&#8217; navigare.<br \/>\nLa mia realizazione aziendale prevede una &#8220;catena&#8221; di proxy che contempla nell&#8217;ordine squid3 &#8211;&gt; Dansguardian&#8211;&gt; Squid.<\/p>\n<p style=\"text-align: left;\">Molto spesso nelle aziende si ricorre ai proxy per ottemperare\u00a0 alle linee\u00a0 guida\u00a0 del garante per la privacy.<br \/>\nIn linea di massima si puo&#8217; dire che i mezzi aziendali non devono essere usati per scopi personali o comunque per scopi non strettamente attinenti al raggiungimento degli obbiettivi aziendali.<br \/>\nDato che purtroppo siamo in un paese dove \u00e8 assolutamnte necessario cautelarsi e dato che il SysAdmin e&#8217; il responsabile all&#8217;interno dell&#8217;azienda \u00e8 una cosa buona predisporre un sitema di filtraggio molto stretto che poi si va ad aprire man mano che serve.<br \/>\nPurtroppo non esiste un solo proxy che faccia tutto quello che normalmente serve, quindi nasce il concetto di proxy in parent o in catena\/cascata.<br \/>\nI proxy possono essere con o senza autenticazione, tipicamente per un uso &#8220;casalingo&#8221; l&#8217;autenticazione e&#8217; del tutto inutile viceversa in un contesto aziendale specie in caso di contestazioni o peggio di richiesta dei log da parte delle forze dell&#8217;ordine (c&#8217;\u00e8 capitato anche questo per un brutto ceffo che girava qui). il sapre chi ha fatto cosa e quando puo&#8217; essere molto importante da qui l&#8217;autenticazione.<br \/>\nNella realizzazione che ho adottato in azienda ho usato Squid e Dansguardian o meglio per la precisione squid3+dansguardian+squid come rappresantato nell&#8217;immagine sotto.<\/p>\n<p style=\"text-align: left;\"><a href=\"http:\/\/clark.tipistrani.it\/?attachment_id=659\" rel=\"attachment wp-att-659\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-659\" title=\"Dansguardian\" alt=\"\" src=\"http:\/\/clark.tipistrani.it\/wp-content\/uploads\/2013\/01\/Dansguardian.jpg\" width=\"710\" height=\"376\" srcset=\"http:\/\/clark.tipistrani.it\/wp-content\/uploads\/2013\/01\/Dansguardian.jpg 710w, http:\/\/clark.tipistrani.it\/wp-content\/uploads\/2013\/01\/Dansguardian-300x158.jpg 300w\" sizes=\"auto, (max-width: 710px) 100vw, 710px\" \/><\/a><\/p>\n<p><a href=\"http:\/\/it.wikipedia.org\/wiki\/Squid\">Squid<\/a> \u00e8 il piu&#8217; usato e il piu&#8217; performante proxy che ci sia in circolazione, pu\u00f2 anche in minima parte fare da filtro ma per i contenuti il top e&#8217; Danguardian.<br \/>\nIl terzo squid \u00e8 li solo come appoggio, infatti Dansguardian non pu\u00f2 essere l&#8217;ultimo di una catena.<br \/>\nQuesto giro\u00a0 decisamente complesso, si rende necessario per una cosa molto semplice, vale a dire sfruttare l&#8217;autenticazione di ogni singolo utente quando accede alla rete, senza dover ripetere le proprie credenziali per poter navigare.<br \/>\nSulla macchina che fa da proxy bisogner\u00e0 pertanto installare squid squid3 dansguardian e samba per l&#8217;autenticazione ntlm presa dal samba PDC aziendale.di\u00a0 seguito le configurazioni.<br \/>\n<a title=\"samba per proxy NTLM\" href=\"http:\/\/clark.tipistrani.it\/?p=680\">samba<\/a><br \/>\n<a title=\"squid di appoggio\" href=\"http:\/\/clark.tipistrani.it\/?p=695\">squid<\/a><br \/>\n<a title=\"Dansguardian configurazione\" href=\"http:\/\/clark.tipistrani.it\/?p=713\">dansguardian<\/a><br \/>\n<a title=\"Squid3 configurazione  squid.conf\" href=\"http:\/\/clark.tipistrani.it\/?p=892\">squid3<\/a><br \/>\nsarg<br \/>\n<a title=\"malware.sh\" href=\"http:\/\/clark.tipistrani.it\/?p=897\">malware<\/a><\/p>\n<p>Da notarsi una cosa tutte queste configurazioni vanno spostate nella directory \/jumper\/etc\/\u00a0 che ho creato quando ho configurato la <a title=\"Preparazione delle macchine.\" href=\"http:\/\/clark.tipistrani.it\/?p=618\">macchina<\/a> e che corrisponde al device r0 del DRBD\u00a0 e quindi si\u00a0 creano\u00a0 dei\u00a0 link simbolici ad \/etc, altra cosa &#8220;furba&#8221;\u00a0 da fare e&#8217; di togliere i servizi\u00a0 da init.d con update-rc.d -f nome del servizio remove in modo che partano solo quando sar\u00e0 heartbeat a chiamarli nel giusto ordine.<br \/>\nPosso capire che appaia strano clusterizzare un proxy o meglio una serie di proxy, la spiegazione \u00e8 in realt\u00e0 abbastanza semplice, storicamente da noi il gateway address \u00e8 l&#8217;indirizzo del proxy e con l&#8217;andare degli anni si \u00e8 reso sempre pi\u00f9 vitale avere un gateway che funzioni sempre, da qui una linea di riserva e tutto il giro di cambio del gateway.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Che cos&#8217;\u00e8 un proxy e perch\u00e8 usarlo? Riporto integralmente la definizione di proxy &#8220;Un proxy \u00e8 un programma che si interpone tra un client ed un server, vagliando e decidendo se\u00a0 inoltrare le richieste e le risposte dall&#8217;uno all&#8217;altro o se reindirizzarle da qualche altra parte. Il client si collega al proxy invece che al [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,13,6],"tags":[],"class_list":["post-317","post","type-post","status-publish","format-standard","hentry","category-linux","category-proxy","category-work"],"_links":{"self":[{"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/posts\/317","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=317"}],"version-history":[{"count":23,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/posts\/317\/revisions"}],"predecessor-version":[{"id":711,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/posts\/317\/revisions\/711"}],"wp:attachment":[{"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=317"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=317"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=317"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}