lunedì 24 gennaio 2011

Proxy: cos'è e come funziona

Un proxy è un server che agisce da intermediario in una connessione, ricevendo le richieste da un computer cliente e reindirizzandole verso altri server, destinatari delle richieste. Tutto chiaro, no?
In termini più umani, un proxy è un mezzo per deviare una connessione tra due computer o tra un computer e la rete internet: invece di collegare direttamente i due computer, un proxy funziona come un centralinista, ricevendo la chiamata dal primo computer e girandola al secondo. Il che potrebbe sembrare una complicazione inutile, ma vi assicuro che ha un suo senso: è utile, per esempio, quando non è possibile collegarsi direttamente a un sito, o quando non ci si vuole collegare direttamente, qualunque sia il motivo. Ma guardiamo meglio come funziona.
Immaginiamo di voler visitare un sito. La cosa più semplice è collegarsi direttamente a quel sito, giusto? A volte, però, non è possibile: gli uffici e le scuole hanno spesso un filtro che blocca l'accesso a certi siti, per esempio. In questo caso, un proxy può tornare utile. Invece di collegarci al sito, noi ci colleghiamo al proxy: dal proxy, poi, ci colleghiamo al sito. In questo modo, possiamo aggirare il blocco che ci impedisce di accedere a un sito, perché è il proxy a collegarsi al sito, non noi.
Altre volte, invece, può capitare che alcune pagine siano limitate ai visitatori provenienti da un certo paese, oppure che una diretta in streaming (come quelle della Rai) sia visibile solo a chi si collega dallo stesso paese. Se dall'Italia vogliamo vedere una diretta in Italia, nessun problema; ma se la diretta è in un paese estero? O se siamo fuori dall'Italia e vogliamo vedere una diretta riservata ai soli italiani? Di nuovo, un proxy ci torna utile. Ci colleghiamo a un proxy che si trovi in Italia, oppure nel paese che ci interessa, e attraverso quello ci possiamo collegare al sito su cui trasmettono la diretta, per guardarla come se davvero ci trovassimo nello stesso paese.
Ma come è possibile tutto questo? Beh, cerchiamo di spiegare in modo molto semplice e "rudimentale" cosa sia un proxy.
Un proxy è un computer collegato alla Rete. Come tutti gli altri computer, si trova in un posto ben preciso., che ne determina la nazionalità: se quel computer è in Italia, allora è un proxy italiano; se è in Germania, allora è un proxy tedesco, eccetera. A differenza degli altri computer, però, ha installato in sé alcuni programmi che gli permettono di fare da "filtro", ossia ricevere chiamate e reindirizzarle verso il destinatario. Un centralinista, insomma, come lo si può trovare negli alberghi: le nostre telefonate arrivano al centralinista e il centralinista le gira alla stanza a cui sono indirizzate. Così funziona un proxy.
I motivi per utilizzare un proxy, invece di una normale connessione, sono molti. Vediamo i principali:
  • Privacy. Se usiamo un proxy, il nostro computer rimane "nascosto". Quando ci colleghiamo a un sito, il sito vedrà la connessione provenire dal proxy e non da noi: in questo modo, non potrà sapere chi siamo. Utile per rimanere anonimi, entro certi limiti, perché nasconde il nostro indirizzo IP.
  • Aggirare i blocchi. Come ho già detto, se ci troviamo su una rete privata, come quella di una scuola, di una biblioteca o di un ufficio, alcuni siti potrebbero essere bloccati, per varie ragioni. Non ci sarà possibile collegarci direttamente a quel sito. Il proxy ci permette di aggirare il blocco: noi ci colleghiamo al proxy, non al sito, ed è poi il proxy a collegarsi al sito. Se io non posso parlare direttamente con Tizio, allora lascerò un messaggio a Caio, da girare a Tizio: il principio è lo stesso.
  • Aggirare la censura governativa. In molti paesi, inclusa l'Italia, esistono filtri che bloccano tutte le connessioni dei suoi cittadini a determinati siti, inseriti in una "lista nera" stilata da quel governo. Di conseguenza, è impossibile aprire un sito bloccato, se ci colleghiamo direttamente mentre siamo in quel paese. Se però noi ci colleghiamo a un proxy, che si trova in un altro paese, allora ecco che il filtro salta. Se l'Italia non mi lascia visitare il sito X, allora io mi collego a un proxy in Francia e da lì accedo al sito X: in questo modo, la richiesta di accesso al sito proverrà dalla Francia, non dall'Italia, e il sito sarà accessibile.
Come si utilizza un proxy?
Come ogni altro computer connesso alla Rete (incluso il nostro), il proxy ha un indirizzo IP, che lo identifica e localizza. Potete immaginarlo come una sorta di numero civico. Se vogliamo collegarci a un proxy, dobbiamo conoscere il suo indirizzo IP e impostare il nostro browser, cioè il programma con cui navighiamo in internet, perché si conneta a quel proxy. Per il resto, la nostra navigazione sarà normale, anche se più lenta di quando ci colleghiamo direttamente ai siti. Il modo per impostare il browser, però, è un po' complicato e lov edremo magari in un'altra occasione: per adesso, accontentiamoci della teria.
Una lista di proxy gratuiti, divisi per nazionalità, la potete trovare in questi siti: per ognuno è indicato ovviamente l'indirizzo IP da utilizzare, oltre a una stima sul livello di traffico e sulla sua efficienza.

12 commenti:

  1. Nonostante abbia provato con un proxy elite il mio ip reale viene individuato a causa di Java.E' possibile assegnare a Java lo stesso indirizzo del proxy o almeno mascherarlo senza disattivarne le funzioni?

    RispondiElimina
    Risposte
    1. La maggior parte dei proxy disabilita Java, così come disabilita javascript, flash e altre cose, proprio perché è facile localizzare il vero IP attraverso queste funzioni.
      Puoi fare un esperimento seguendo queste indicazioni:
      http://java.com/en/download/help/proxy_setup.xml

      O, in alternativa, puoi ricorrere a un VPN (Virtual Private Network, argomento su cui mi riprometto sempre di scrivere qualcosa, ma poi me ne dimentico), che magari è un po' più laborioso da impostare all'inizio, ma ti permette di usare il Java senza mostrare il tuo IP.

      Elimina
  2. Inserito nel pannello di Java le stesse impostazioni del proxy,ora l'ip viene rivelato da Flash grrrr.
    Disattivandoli la navigazione sarebbe piuttosto limitata,proverò a cimentarmi con il VPN.
    Ti ringrazio per la cortesia e la sollecitudine che dimostri nel rispondere

    RispondiElimina
    Risposte
    1. Java, Javascript, Flash e compagnia bella presentano sempre questi problemi: richiedono una comunicazione diretta tra browser e sito, e così provocano "buchi" da cui si vede lo IP. Per questo quasi tutti i proxy li tengono disattivati, di default: è il metodo più rapido e sicuro, per chi non vuole reimpostarli tutti a uno a uno (quando si possono reimpostare, ovvio).

      Elimina
  3. Articolo molto chiaro... una domanda pero': se sul router della LAN e' abilitato il NAT e su questa e' presente un Server-Proxy, l'IP del Proxy sara' mascherato dall'IP pubblico (statico o dinamico) assegnatomi dall'ISP sulla mia interfaccia WAN; all'esterno allora, mi vedranno con l'IP della WAN e non del Proxy. Dove sbaglio?

    RispondiElimina
  4. Un Server-Proxy lavora quindi a livello 7 della pila ISO/OSI perche' puo' analizzare e filtrare i contenuti del campo dati dei pacchetti?
    Inoltre se uno volesse bloccare all'interno della LAN, dove e' presente il Proxy, le richieste dei client che dall'interno vogliano collegarsi al server-web (pubblico) della LAN stessa utilizzando l'IP pubblico o il nome di dominio pubblico, il proxy la vedrebbe come una normale connessione per un sito esterno alla LAN, perche' l'IP pubblico del server non passa dal proxy (il router infatti e' posizionato alla fine, quindi oltre il proxy) il proxy quindi non sa che quell'IP pubblico (statico o dinamico) assegnatomi dall'ISP viene utilizzato per sostituire l'IP privato del server che espone su Internet e al quale mi voglio connettere dall'interno. Non sa neanche che una connessione avviene dall'interno(?). Bisogna quindi configurare il proxy dicendogli espressamente di rifiutare richieste di connesione che provengano dall'interno per IP pubblici o nomi di dominio pubblici? La stessa cosa potrebbe essere fatta da un Firewall?
    Spero di essere stato chiaro anche se un po' prolisso? Grazie per la disponibilita'.

    RispondiElimina
  5. Se pero' sulla LAN ci sono dei filtri, delle regole impostate con delle ACL, per impedire che determinati pacchetti o formati di file in entrata sulla WAN del router siano rifiutati per es. il dipendente che dal suo client in ufficio non puo' connettersi al sito della RAI per vedere la partita, ci si puo' connettere a tutti i proxy esterni che si vuole ma i pacchetti non entrano... o c'e un modo comunque?
    Grazie mille per la risposta.

    RispondiElimina
  6. Utilizzando la crittografia PPTP o SSL, i dati passa per il tunnel protetto e si rimane completamente anonimo. Con i dispositivi e sistemi operativi che VPN Superiore servizi di sostegno, ci sono garantiti volume illimitato larghezza di banda e un facile accesso a qualsiasi contenuto web, come ad esempio TV on-line (Hulu, Netflix, BBC iPlayer), i giochi online (World of Warcraft, Call of Duty, Star Craft) e siti di gioco online (giocare a poker, roulette, blackjack).

    RispondiElimina
  7. come posso abilitare java su una chat mi da sempre impossibile connettersi

    RispondiElimina
  8. E' possibile usare un proxy per mascherare l'IP di un singolo programma che comunica con la rete invece che tutta la navigazione del browser.

    Ciao. Grazie.

    RispondiElimina
  9. Mi sembri la persona giusta a cui voglio fare questa domanda, vorrei controllare il watsup di mia figlia ma il telefonino non lo molla un secondo , quando è a casa abbiamo la stessa connessione Wi-Fi è possibile fare qualcosa senza dover toccare il suo dispositivo? Grazie

    RispondiElimina
  10. Mi sembri la persona giusta a cui voglio fare questa domanda, vorrei controllare il watsup di mia figlia ma il telefonino non lo molla un secondo , quando è a casa abbiamo la stessa connessione Wi-Fi è possibile fare qualcosa senza dover toccare il suo dispositivo? Grazie

    RispondiElimina