VPN

VPN

Una VPN (virtual private network) consente di creare una connessione sicura tra un client ed i sever web. Infatti quando si usa una VPN il traffico dati passa in un tunnel virtuale criptato e dunque sicuro, attraverso il quale non si possono intercettare i pacchetti dei dati trasmessi nella rete.

Vantaggi uso VPN

I vantaggi nell’uso di una VPN sono tanti, ne evidenziamo alcuni:

Anonimato: l’indirizzo IP non è visibile e neanche la posizione dalla quale avviene il collegamento. Infatti, nel momento in cui ci si connette ad un server web, l’indirizzo che quest’ultimo vedrà sarà quello del server VPN. Inoltre molti provider VPN non tengono completamente traccia dei collegamenti effettuati dai client, quindi difficilmente sarà possibile risalire alle visite effettuate su Internet. Ma ricordiamo sempre che non c’è un modo che garantisce totalmente di non poter essere rintracciati su Internet.

Sicurezza: utilizzare una connessione criptata riesce a garantire maggiore sicurezza nella connessione, contribuendo a tenere lontano i criminali informatici. Infatti in una rete VPN si utilizzano dei protocolli sicuri a cui sono stati applicati algoritmi crittografici.

Evitare la profilazione: grazie alla VPN i dati sono criptati. Di solito le aziende pubblicitarie raccolgono i nostri dati, cercando di capire le nostre abitudini, per mostrare poi messaggi pubblicitari inerenti le nostre ricerche su Internet. In una rete VPN sicura, le aziende non possono risalire ai nostri dati e dunque alle nostre ricerche nella rete.

Accessibilità ai siti web bloccati: con la VPN si utilizzano indirizzi IP che possono consentire la visualizzazione di servizi e siti che altrimenti sarebbero bloccati.

Usi della VPN

Una VPN può essere utilizzata ad uso personale per garantire la sicurezza nelle proprie connessioni. In particolare, si raccomanda di farne uso nelle reti Wi-Fi pubbliche, dove sono più frequenti gli attacchi da parte di hacker.

Una VPN può essere usata anche da molte aziende che ad esempio consentono lo smart working. In questo modo, infatti, si può entrare nella rete locale criptata e sicura, dopo aver effettuato l’autenticazione, sfruttando il tunnel virtuale. Così è possibile condividere cartelle e file tra i colleghi di lavoro in maniera sicura.

Come utilizzare una VPN

Per poter utilizzare una VPN occorre scegliere un provider affidabile.

Dopo occorre fare pochi semplici passi:

– scaricare il software ed installarlo sul nostro dispositivo.

– impostare le opzioni di navigazione sicura.

In questo modo il software cripta le richieste inviandole al server VPN. Il server VPN decripta i dati e invia le richieste ai server web per ottenere una risposta. Una volta ottenuta la risposta il server VPN cripta nuovamente i dati per inviarli sul tuo computer, che verranno nuovamente decriptati per poter essere comprensibili.

Alcuni link utili

Indice argomenti reti

1 – Introduzione alle reti

2 – Reti Pan, Lan, Man, Wan e Gan

3 – Tecnologia Bluetooth

4 – Tecnologia Wi-Fi

5 – Tecnologia WiMAX

6 – Topologia delle reti

7 – Hub e Switch

8 – Bridge e Router

9 – Commutazione di pacchetto e di circuito

10 – Mac Address

11 – Trasmissione via cavo: UTP, FTP e STP

Proxy HTTP

Proxy HTTP

Un proxy HTTP, definito anche proxy server, è un server utilizzato per lo scambio di messaggi tra un client ed un server, come una sorta di intermediario.

I client richiedono al proxy server un servizio come ad esempio una pagina web, un file audio/video o qualsiasi altra risorsa che risiede su altro server.

L’obiettivo finale è dunque quello di filtrare il traffico web. Molte aziende si avvalgono dei proxy per effettuare un controllo sulla rete.

Perché utilizzare questo intermediario?

Motivi per utilizzare un proxy HTTP

Ecco, di seguito, alcuni motivi per utilizzare un proxy HTTP:

Privacy: Mantenere l’anonimato durante una connessione, come nel sistema Tor (software che consente di navigare in Internet nell’anonimato, dunque protegge la privacy degli utenti che navigano nella rete), dove i dati non transitano dal client al server direttamente ma passano dai server Tor. Ma il proxy, non cripta la connessione come fa invece la VPN, quindi si occupa solo di fornire un indirizzo IP diverso. Il server web che riceve una richiesta da parte di un client, vede l’indirizzo IP del proxy e non quello del client.

Caching: Un proxy può essere utilizzato per velocizzare le richieste di servizi da parte dei client. Infatti i caching proxy conservano, per un certo tempo, i risultati delle richieste da parte di un client. Questo rende più veloce i tempi di risposta delle stesse risorse da parte di altri client. Ecco perché molte aziende utilizzano un caching proxy. Nel momento in cui ci sono state delle modifiche alle pagine web, allora il server proxy richiede nuovamente la pagina al server web.

Monitoraggio: un proxy server consente di monitorare le pagine web visitate, consentendo di effettuare statistiche, ma violando la privacy degli utenti. Ecco perché ci sono delle norme per ogni sito web che avvisano gli utenti dell’utilizzo di mezzi per monitorare il traffico web.

Amministrazione: grazie ad un proxy server si possono stabilire delle regole, come ad esempio bloccare facilmente alcuni siti. Dunque si determina facilmente quali richieste inoltrare e quali rifiutare in base a determinate regole.

Può succedere però che un proxy invii al server web anche l’indirizzo IP del client, tutto dipende dalla configurazione del proxy. In tal caso si dice che il server web si fida del proxy server sulle informazioni che sta fornendo, perché non ha modo di verificare.

Tipi di proxy

NOA (Non Anonimus Proxy): sono i proxy più utilizzati dagli ISP, per rendere gli accessi ai siti web più veloci e dunque risparmiare la banda di connessione. Sono proxy non anonimi infatti mostrano l’indirizzo IP reale del richiedente. Il server web li riconosce facilmente.

ANM (Anonimus Proxy): sono i proxy anonimi che non trasmettono l’indirizzo IP del client, ma trasmettono l’indirizzo IP del proxy. Questo tipo di proxy non nasconde il fatto che la comunicazione sta facendo uso di un proxy.

HIA (High Anonimus Proxy): sono i proxy altamente anonimi che nascondono l’IP del client e sono difficili da riconoscere da parte del server web.

Proxy distorcenti: offrono una maggiore protezione perché trasmettono un IP casuale, quindi il server web vede le richieste provenienti da indirizzi IP diversi.

Alcuni link utili

Indice argomenti reti

1 – Introduzione alle reti

2 – Reti Pan, Lan, Man, Wan e Gan

3 – Tecnologia Bluetooth

4 – Tecnologia Wi-Fi

5 – Tecnologia WiMAX

6 – Topologia delle reti

7 – Hub e Switch

8 – Bridge e Router

9 – Commutazione di pacchetto e di circuito

10 – Mac Address

11 – Trasmissione via cavo: UTP, FTP e STP

HTTP

HTTP

Il protocollo HTTP (HyperText Transfer Protocol) è utilizzato per la trasmissione di informazioni sul web.

La prima versione di questo protocollo è stata implementata nel 1991.

Il funzionamento di HTTP è basato su un meccanismo di richiesta/risposta, quindi di tipo client/server.

Infatti il client che corrisponde al browser effettua una richiesta al server per ottenere un determinato contenuto (pagina html, immagine, CSS, ecc).

In definitiva quindi ci sono due messaggi HTTP, i messaggi di richiesta e quelli di risposta.

Quando la richiesta viene soddisfatta le porte in genere vengono chiuse, cosa che non avviene con altri protocolli come ad esempio l’FTP.

Per porta (socket) si intende il punto di accesso ad un server da parte di uno o più client. Chiaramente non è una porta fisica ma logica, virtuale.

Le porte sono indicate con dei numeri a 16 bit, dunque ci sono 2^16=65536 porte, cioè da 0 a 65.535.

Ogni numero identifica una determinata applicazione, infatti in questo modo si garantisce che i dati vengano indirizzati al processo corretto.

Nel caso del protocollo HTTP la porta di riferimento è la 80. Quindi un server web (come ad esempio Apache), attende la richiesta di contenuti su questa porta.

HTTP è un protocollo stateless, cioè senza memoria, questo per poter andare da un server all’altro velocemente attraverso i collegamenti ipertestuali.

Infatti per ogni nuova richiesta effettua una nuova connessione al server web, che come dicevamo prima, viene subito chiusa.

Protocollo HTTP e metodi

Abbiamo detto che il client invia delle richieste al server e lo fa utilizzando dei metodi come primo parametro. I metodi sono GET, HEAD, POST, introdotti già dalla prima versione HTTP 1.0. Successivamente sono stati introdotti i metodi PUT e DELETE. Infine con la versione attuale HTTP 1.1 sono stati introdotti i metodi OPTIONS, TRACE, CONNECT.

I browser moderni supportano principalmente i metodi GET e POST. Elenchiamo di seguito alcuni metodi tra quelli citati.

Metodo GET

Il metodo GET è quello più importante e richiede una risorsa ad un server. Questo è il metodo che si attiva quando specifichiamo un url in un browser web o quando facciamo click su un collegamento ipertestuale di una pagina html. Con questo metodo non si possono cancellare i dati su un server o modificarli.

Metodo HEAD

Questo metodo è simile a GET, ma il server risponde inviando solo gli header relativi, senza il corpo. Quindi il metodo HEAD non carica la risorsa come file, immagini, ecc.

È un metodo usato per la diagnostica, ad esempio per verificare la validità di un URI (Uniform Resource Identifier), cioè per vedere se la risorsa richiesta esiste. Oppure per verificare l’accessibilità di un URI, ad esempio la risorsa esiste e non ha bisogno di autenticazione. Infine può essere utilizzato per vedere se la risorsa, nel frattempo, è stata modificata.

Metodo POST

Questo metodo serve per trasmettere informazioni dal client al server, infatti viene utilizzato ad esempio per inviare dati di un form al server web.

Metodo DELETE

Questo metodo elimina la risorsa identificata dall’URL specificato.

Metodo Put

Metodo utilizzato per trasmettere delle informazioni dal client al server, sostituendo la risorsa specificata. Questo metodo serve ad esempio per fare l’upload di un file su un server web, creando o sostituendo il file esistente.

Risposta ad un richiesta

Il server risponde con un codice di stato.

Di seguito alcuni esempi di codici di stato:

100 Continue – La richiesta effettuata dal client è parzialmente compilata, cioè ad esempio ancora non ha trasmesso il corpo della pagina.

200 Ok – Richiesta eseguita con successo, cioè tutto è stato eseguito nel modo giusto.

204 No content – Richiesta eseguita con successo ma senza restituire un contenuto.

301 Moved permanently – La risorsa esiste ma non è identificata correttamente, è stata spostata permanentemente.

400 Bad Request – Richiesta errata, cioè la richiesta non è comprensibile al server web.

401 Unauthorized – Cioè la richiesta non è autorizzata in quanto occorre autenticarsi.

404 not found – Risorsa non esistente.

500 Internal Server Error – Errore generico del server.

Quindi i codici di stato che iniziano con:

1 Indicano dei messaggi informativi.

2 Indicano successo, cioè il server ha accettato la richiesta del client ed è stata eseguita correttamente.

3 Indicano che la risorsa è stata spostata (ridirezione).

4 Indicano che c’è un errore nel client.

5 Indicano che c’è un errore nel server.

Un sito dove testare alcuni codici di stato: https://httpstatus.io/

HTTPS

Per HTTPS (HyperText Transfer Protocol Secure) si intende un protocollo per la comunicazione sicura, in quanto i dati sono criptati. Ciò è un requisito importante soprattutto nei siti di e-commerce, infatti i dati degli utenti come ad esempio i numeri della carta di credito o altre forme di pagamento, sono crittografati. In questo modo i malintenzionati non possono accedere facilmente a questi dati.

HTTPS utilizza dunque il protocollo HTTP + il protocollo TLS (Transport Layer Security), versione più aggiornata e sicura del precedente SSL.

La porta utilizzata è la 443. Quindi ad esempio per andare sul sito https://www.codingcreativo.it il vostro browser web ha contattato il server web sulla porta 443.

Alcuni link utili

Indice argomenti reti

1 – Introduzione alle reti

2 – Reti Pan, Lan, Man, Wan e Gan

3 – Tecnologia Bluetooth

4 – Tecnologia Wi-Fi

5 – Tecnologia WiMAX

6 – Topologia delle reti

7 – Hub e Switch

8 – Bridge e Router

9 – Commutazione di pacchetto e di circuito

10 – Mac Address

11 – Trasmissione via cavo: UTP, FTP e STP

Architettura TCP/IP

Architettura TCP/IP

Con architettura TCP/IP intendiamo tutta la suite di protocolli internet, su cui si basa il funzionamento di una rete.

Il nome deriva dai due importanti protocolli, tra gli oltre centinaia, TCP e IP.

TCP (Transmission Control Protocol) è il protocollo che si occupa di testare l’affidabilità di una rete e quindi di garantire una corretta comunicazione tra mittente e destinatario.

IP (Internet Protocol) è il protocollo che si occupa di indirizzare i dispositivi di una rete, assegnando, a ciascuno di essi, un indirizzo univoco, così come abbiamo studiato nella lezione che riguarda gli indirizzi IP. Inoltre si occupa di organizzare i pacchetti di dati che viaggiano nella rete.

Questo tipo di architettura, come abbiamo detto, è a strati, cioè formata da livelli, dove ciascun livello fornisce dei servizi utili al livello superiore.

Il modello TCP/IP è rappresentato da 4 livelli e deriva dal modello ISO/OSI che invece è caratterizzato da 7 livelli.

L’ISO è un organismo di standardizzazione. Fu il primo a definire una modalità per interconnettere i computer, infatti nel 1978 specificò un modello, l’OSI che divenne il modello standard di riferimento.

Vediamo subito il confronto tra i due modelli:

modello osi e tcp/ip

In entrambi i modelli i livelli più alti sono quelli più vicini all’utente, dunque nei canali più bassi si effettuano tutti i controlli relativi alle comunicazioni e ai mezzi trasmissivi utilizzati.

Architettura TCP/IP livelli

Nell’architettura TCP/IP ci sono dunque 4 livelli:

1. Livello di accesso alla rete

2. Livello di rete

3. Livello di trasporto

4. Livello di applicazione

Livello 1 – Accesso alla rete

Il livello di accesso alla rete è quello più basso e dunque si occupa del collegamento tra due o più dispositivi (host). Questo livello racchiude, come si nota dalla figura in alto, il livello fisico e il livello data link del modello OSI. In generale si occupa di muovere informazioni da un capo all’altro di un singolo canale di comunicazione.

A questo livello appartengono cavi, connettori, schede di rete, hub, switch e i bridge, ma non ad esempio i router.

Alcuni protocolli che operano a questo livello sono HDLC, PPP, SLIP, che approfondiremo nelle prossime lezioni.

Livello 2 – Rete

Il livello di rete si occupa di trasportare i pacchetti dalla sorgente alla destinazione, attraversando i router. Questo livello non offre un controllo sugli errori ma gestisce il flusso dei dati, le congestioni e le problematiche derivanti dalla presenza di più reti diverse.

I protocolli che operano a questo livello sono ARP, RARP, IP, ICMP, che affronteremo nelle prossime lezioni.

Livello 3 – Trasporto

Il livello di trasporto sfrutta i servizi offerti dal livello sottostante e fornisce un canale logico e affidabile tra il mittente ed il destinatario.

Si definisce canale logico in quanto i processi applicativi che comunicano non sono connessi fisicamente tra loro. Ricordiamo che per processo si intende un’istanza di un programma in esecuzione. Il software del livello di trasporto non è presente nei router ma sugli host.

Alcuni protocolli di questo livello sono TCP e UDP.

Livello 4 – Applicazione

Il livello più alto è quello di applicazione che fornisce agli utenti un’interfaccia per accedere alle reti. Dunque fornisce i servizi agli utenti della rete.

I protocolli più noti sono: FTP, telnet, HTTP, SMTP, POP3, IMAP.

Alcuni link utili

Indice argomenti reti

1 – Introduzione alle reti

2 – Reti Pan, Lan, Man, Wan e Gan

3 – Tecnologia Bluetooth

4 – Tecnologia Wi-Fi

5 – Tecnologia WiMAX

6 – Topologia delle reti

7 – Hub e Switch

8 – Bridge e Router

9 – Commutazione di pacchetto e di circuito

10 – Mac Address

11 – Trasmissione via cavo: UTP, FTP e STP

Protocolli di rete

Protocolli di rete

I protocolli di rete consentono a due o più dispositivi di comunicare tra loro. Un protocollo di rete infatti si può vedere come un set di regole che permette la comunicazione tra vari dispositivi.

Infatti affinché due o più dispositivi si possano scambiare messaggi nella rete occorre che parlino lo stesso linguaggio e quindi che utilizzino lo stesso protocollo.

Esistono tanti protocolli nella rete. Infatti un protocollo unico con tutte le funzionalità sarebbe alquanto difficile da realizzare ed utilizzare.

Protocolli di rete e livelli

I vari protocolli di rete sono organizzati secondo un sistema detto a livelli e per ogni livello si utilizza uno specifico protocollo.

La suddivisione in livelli è gestita in modo tale che ciascun livello utilizza i servizi offerti dal livello inferiore.

Quindi ciascun livello fornisce dei servizi utili al livello superiore.

L’insieme dei livelli e dei relativi protocolli costituisce un’architettura di rete a strati.

Un’architettura di rete può essere:

– proprietaria;

– standard de facto;

– standard de iure.

Un’architettura proprietaria è basata su scelte indipendenti del costruttore che non fornisce le specifiche e dunque nessun altro costruttore può produrre apparati compatibili.

Invece un’architettura di tipo standard de facto è basata su specifiche di pubblico dominio.

Infine, un’architettura di tipo standard de iure è basata su specifiche di pubblico dominio ed inoltre è approvata da enti internazionali che si occupano di standardizzazione. In definitiva è un’architettura di tipo standard de iure ad esempio lo standard IEEE 802 per le reti locali che abbiamo affrontato nelle lezioni precedenti.

Anche il modello ISO/OSI, il modello su cui si basano le reti informatiche è standard de iure, mentre l’architettura di rete TCP/IP è di tipo standard de facto.

Alcuni link utili

Indice argomenti reti

1 – Introduzione alle reti

2 – Reti Pan, Lan, Man, Wan e Gan

3 – Tecnologia Bluetooth

4 – Tecnologia Wi-Fi

5 – Tecnologia WiMAX

6 – Topologia delle reti

7 – Hub e Switch

8 – Bridge e Router

9 – Commutazione di pacchetto e di circuito

10 – Mac Address

11 – Trasmissione via cavo: UTP, FTP e STP

Gateway

Gateway

Un gateway (tradotto portone) è un dispositivo di rete che ha la funzionalità di tradurre il protocollo tra due reti diverse, come nel caso della LAN e di Internet e quindi di poterle mettere in comunicazione.

Quindi un gateway consente ad un host di comunicare al di fuori della propria rete.

Il router, dispositivo di rete che abbiamo già precedentemente studiato, ha invece la funzionalità di routing, cioè ha il compito di indirizzare i pacchetti dati alla rete Internet.

Facciamo un semplice esempio

Un host, di una rete LAN, richiede una pagina web, quindi richiede un collegamento alla rete Internet. Il gateway prima traduce la richiesta per poterla comunicare poi al router che invia i pacchetti alla rete Internet.

Gateway e router

Oggi nelle reti di telecomunicazioni utilizziamo frequentemente il termine gateway predefinito per riferirci al router.

Quindi con gateway intendiamo quel dispositivo di rete che veicola i pacchetti all’esterno di una rete LAN. Inoltre può integrare anche altri servizi a livello più alto come firewall, NAT, DNS, ecc.

Procedimento per visualizzare l’IP del gateway

È possibile ottenere l’indirizzo IP del gateway predefinito andando su Windows start e digitando, così come abbiamo visto per il MAC Address, l’IP privato e la subnet mask, il comando cmd.

Si aprirà dunque la finestra del prompt su cui andremo a scrivere il comando ipconfig /all e premiamo invio.

Tra i vari parametro notiamo l’indirizzo IP del gateway predefinito che di solito corrisponde all’indirizzo IP privato del router, che utilizziamo per collegarci alla rete Internet.

È anche possibile impostare manualmente il gateway predefinito. Il percorso per i sistemi Windows è il seguente: andare su Impostazioni, quindi scegliere Rete e Internet. Dopo nella finestra che si apre scegliere Centro connessioni di rete e condivisioni. Poi selezionare il protocollo Internet versione 4 e cliccare su proprietà, come da figura:

gateway predefinito

Infine scegliere la voce ‘utilizza il seguente indirizzo IP‘ e procedere con le impostazioni manuali. Chiaramente questa procedura deve essere realizzata da utenti con una certa esperienza e conoscenza.

impostare ip statico

Presenza di più gateway

Nelle semplici reti locali, come quelle che abbiamo a casa, di solito il gateway è uno solo, ma nelle reti aziendali ci possono essere tante subnet quanti gateway.

Inoltre si può inserire l’indirizzo IP del gateway (router) su un browser web e quindi accedere all’interfaccia del router.

Nella prossima lezione introdurremo i protocolli di rete.

Alcuni link utili

Indice argomenti reti

1 – Introduzione alle reti

2 – Reti Pan, Lan, Man, Wan e Gan

3 – Tecnologia Bluetooth

4 – Tecnologia Wi-Fi

5 – Tecnologia WiMAX

6 – Topologia delle reti

7 – Hub e Switch

8 – Bridge e Router

9 – Commutazione di pacchetto e di circuito

10 – Mac Address

11 – Trasmissione via cavo: UTP, FTP e STP

12 – Cavo coassiale

13 – Fibra Ottica

14 – Client/ server e peer to peer

15 – Indirizzi IP

16 – Classi IP

17 – Subnet mask

18 – Trovare l’indirizzo IP