LE RETI INFORMATICHE
1 INTRODUZIONE ............................................................................................................................ 1
2 I MEZZI TRASMISSIVI.................................................................................................................... 4
2.1 DOPPINO TELEFONICO....................................................................................................... 4
2.2 FIBRA OTTICA........................................................................................................................ 4
2.3 COMUNICAZIONI VIA ETERE...............................................................................................5
3 RETI LOCALI E GEOGRAFICHE................................................................................................... 6
3.1 RETI LOCALI..........................................................................................................................6
3.2 RETI GEOGRAFICHE............................................................................................................ 8
4 L’ARCHITETTURA TCP/IP............................................................................................................. 9
4.1 IP (INTERNET PROTOCOL)................................................................................................. 9
4.2 TCP E UDP.......................................................................................................................... 10
4.3 LE APPLICAZIONI UTENTE................................................................................................ 10
4.3.1 Domain Name Server (DNS)........................................................................................ 11
4.3.2 LA Posta Elettronica..................................................................................................... 11
4.3.3 Accesso Remoto alle interfacce Utente .......................................................................12
4.3.4 L`architettura WWW..................................................................................................... 12
5 LA SICUREZZA DELLE RETI INFORMATICHE.......................................................................... 13
5.1 IL PROBLEMA DELLA SICUREZZA.................................................................................... 13
5.2 PROTEZIONE DEI SISTEMI TRAMITE PASSWORD.........................................................14
5.3 VULNERABILITA' DEI PROGRAMMI E FIREWALL............................................................14
5.4 WORM E VIRUS.................................................................................................................. 15
5.5 CRITTOGRAFIA...................................................................................................................16
1 INTRODUZIONE
Le reti informatiche sono infrastrutture di collegamento che interconnettono diversi calcolatori
permettendo l'attivazione di canali fisici o virtuali uno a uno (o uno a tanti) , sulla base delle
richieste.
Le applicazioni di rete che possiamo realizzare possono essere classificate in vari modi, come, ad
esempio:
• Comunicazioni User-to-user: posta elettronica, servizi multimediali audioconferenza,
videoconferenza, Voip
• Comunicazioni User-to-Host: Accesso a risorse remote quali sistemi di calcolo (emulatori di
terminali), periferiche (stampanti, dischi, scanner, ecc), file repository (file server, web server, ..)
• Comunicazioni Host-to-host:: File system distribuiti, calcolo ditribuito, sistemi operativi
distribuiiti.
1
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
Ciascuna di queste applicazioni possiede determinati requisiti di comunicazione (velocità,
affidabilità, priorità, ecc) e quindi le possibili applicazioni dipendono dalle caratteristiche della rete
di cui si dispone.
Ad esempio il trasferimento di file, la posta elettronica e la condivisione di stampanti possono
funzionare anche su reti a bassa velocità, purché vi sia la garanzia del corretto trasferimento delle
informazioni. Le comunicazioni multimediali in tempo reale (streaming audio e video) richiedono
una maggiore velocità e continuità del tasso di trasferimento (bit-rate), ma ammettono una
(limitata) perdita di dati.
Parametri importanti della comunicazione sono:
• Velocità: è l'ampiezza del canale e si misura in bit/sec
• Latenza: è il tempo per trasferire un bit da un terminale all'altro.
• Jitter: stabilità della latenza
• Throughput: Quantita’ trasferita / tempo di trasferimento
• Affidabilità: percentuale di bit persi nel trasferimento
• Sicurezza: Garanzia di integrità, riservatezza e identità
L'infrastruttura di rete si compone di nodi terminali e di nodi di transito che hanno il compito di
formare i circuiti tra i nodi terminali con le caratteristiche richieste dall'applicazione. I nodi sono
interconnessi fisicamente tra loro mediante canali di comunicazione
Esistono 2 tecniche principali per realizzare una infrastruttura di questo tipo: a commutazione di
circuito e a commutazione di pacchetto.
Una infrastruttura a commutazione di circuito esiste da parecchi anni per la telefonia: è la PSTN
(Public Switched Telephone Network). I circuiti tra i terminali (telefoni) sono realizzati fisicamente
mediante nodi di transito denominati “commutatori di circuito” i quali su richiesta creano un circuito
fisico temporaneo. Questa tecnica è adatta per le telefonate in cui un circuito è utilizzato per
parecchi secondi o minuti, ma non è adatta per i calcolatori che possono scambiarsi anche brevi
2
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
messaggi (di pochi millisecondi).
In questo caso è più adatta la commutazione di pacchetto: qualunque messaggio da trasferire
vine frazionato in “pacchetti” di lunghezza limitata che vengono trasferiti indipendentemente
attraverso i nodi di transito (commutatori di pacchetto) formando in questo modo un circuito
virtuale. Sarà compito del nodo terminale la scomposizione e ricomposizione dei dati originali,
attraverso un opportuno stato software.
I commutatori di pacchetto (router) sono necessari per interconnettere reti locali o singoli Host
mediante canali punto-punto che possono essere di pochi metri o di migliaia di Chilometri. ,
formando reti Geografiche (WAN). I Router hanno quindi il compito di commutare i pacchetti
“instradandoli” verso il terminale di destinazione finale.
PROTOCOLLI DI RETE
Per far funzionare una infrastruttura di rete è necessario che tutti i nodi (terminali e di transito)
siano provvisti di opportuni protocolli software.
Le prime reti di calcolatori vennero create negli anni 70-80 grazie a protocolli di rete sviluppati dai
principali costruttori di calcolatori dell'epoca:
IBM incluse nel sistema operativo dei propri MainFrame un protocollo di rete che chiamarono
SNA. Nacque così la rete Bitnet di calcolatoti IBM con protocollo SNA.
Pochi anni dopo la DEC (Digital Eq. Corp.) , che era il principale concorrente di IBM, doto' i propri
sistemi del protocollo DECnet che venne utilizzato per realizzare la rete internazionale HEPnet
(per scopi Scientifici).
Due calcolatori appartenenti a rete diverse, anche se fisicamente connessi, non erano in grado di
colloquiare tra loro. Era evidente la necessità di un protocollo comune.
A partire dal 1976 la ISO (International Standard Organization) iniziò a lavorare su un protocollo
standard internazionale. Nel 1983 venne rilasciato OSI (Open System Interconnect) che
proponeva un modello composto da 7 livelli (dal livello fisico al livello utente), in cui ogni
problematica era confinata all'interno di uno strato.
Contemporaneamente, il Dipartimento della Difesa USA stava progettando una nuova rete
(ARPAnet) per interconnettere risorse di calcolo eterogenee di alcune Università Americane.
Nacque da questo progetto il protocollo TCP/IP, realizzato a stati, sul modello ISO/OSI, ma con un
numero di livelli inferiore: Link, Network, Transport e Application.
Nel 1986 la National Science Foundation (NSF) adottò il protocollo TCP/IP per creare la rete della
Ricerca Scientifica Americana che in seguito si espanse a livello mondiale con il nome di Internet.
I livelli previsti da TCP/IP sono:
Link. A questo livello viene affrontato il problema della comunicazione tra terminali ad accesso
3
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
diretto (Reti Geografiche e LAN).
Network: E' il protocollo che si occupa dell'internetworking tra reti ad accesso diretto, mediante
l'instradamento dei pacchetti tra Router.
Transport: Fornisce una interfaccia di programmazione per il livello applicazione; scompone e
ricompone i dati delle applicazioni in pacchetti.
Application: E' il servizio effettivamente svolto per l'utente.
2 I MEZZI TRASMISSIVI
Il mezzo trasmissivo e` il supporto fisico utilizzato per il trasferimento delle informazioni.
I mezzi trasmissivi si dividono in tre categorie: Elettrici, Ottici e Wireless.
Da leggere: http://en.wikipedia.org/wiki/Transmission_medium
Fanno parte della prima i doppini telefonici e il cavo coassiale, mentre la seconda comprende la
fibra ottica. La terza categoria comprende ponti radio, satelliti e, genericamente, tutte le
trasmissioni via etere.
Le caratteristiche utili per un mezzo trasmissivo sono:
• La larghezza della banda trasmissibile (maggiori sono le frequenze che possono attraversare il
mezzo maggiore e` il numero di bit/s che possiamo ottenere)
• L’attenuazione (caduta del segnale in funzione della distanza e della frequenza trasmessa)
• Immunità da disturbi elettromagnetici (da ambiente esterno o da mezzi trasmissivi paralleli)
• Costo
• Praticità nella posa e nella connettorizzazione (terminazione del mezzo trasmissivo).
2.1 DOPPINO TELEFONICO
Il doppino (Twisted Pair) consiste in una coppia di fili di rame, isolati singolarmente, ritorti tra di
loro, in modo da formare una treccia. Viene chiamato doppino telefonico perché e` stato installato
originariamente per collegare le case alle centrali telefoniche.
Oggi si costruiscono doppini facendo molta attenzione ad inguainare e a binare i due fili in modo il
più possibile uniforme, in modo da avere disturbi e.m. simmetrici e quindi facilmente eliminabili; la
maggiore qualità del cavo consente una maggior larghezza di banda.
Per aiutare nella scelta del doppino esistono diverse categorie, ognuna delle quali comprende le
caratteristiche delle categorie inferiori.
Categoria 1
Categoria 2
Categoria 3
Categoria 4
Categoria 5
installati nelle case fino a qualche anno fa per la telefonia
attualmente installati nelle case per telefonia, ISDN, ADSL
cavi per TD per reti LAN fino a 10 Mbit/s (in disuso)
cavi per TD per reti LAN fino a 20 Mbit/s (in disuso)
cavi per TD per reti LAN fino a 100 Mbit/s - utilizzati nel cablaggio strutturato
per le LAN (vedi piu’ avanti)
Con la migliore qualità di doppino (cat. 5) la larghezza di banda e’ di circa 3MHz e la massima
distanza raggiungibile e’ di 100 mt a 1Gb/s o 5Km a 1Mb/s per canali punto-punto..
2.2 FIBRA OTTICA
Su tratta di fibra di vetro che trasporta impulsi di luce. Ogni impulso è un bit. Si usano
generalmente a coppie per avere canali punto-punto full-duplex.
E' il materiale del futuro poiché presenta notevoli vantaggi:
• la totale immunità dai disturbi e.m. (non è infatti costituita da materiale conduttore).
4
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
•
•
•
larga banda di utilizzo (si usa per Trasmissioni di decine di Gb/sec)
bassa attenuazione.
dimensioni ridotte e costi contenuti.
•
L'unico svantaggio è nella terminazione dei cavi: la connettorizzazione e l'elettronica di controllo
ha un costo che è ancora svantaggioso rispetto ai cavi in rame.
Un cavo in fibra ottica è costituito dal core, dal cladding, da un rivestimento primario e dalla guaina
protettiva; il core è il nucleo, il cladding è il mantello. Hanno due indici di rifrazione diversi, il primo
è maggiore del secondo, affinché la luce rimanga confinata all'interno del core.
La fisica delle fibre ottiche è l'ottica geometrica. Molto importante è l'angolo rispetto l'asse del cavo
con cui i raggi luminosi vengono indirizzati all'interno del core. Esiste infatti un angolo massimo di
incidenza , detto angolo critico, al di sotto del quale i raggi vengono totalmente riflessi dal cladding
e rimangono, quindi, all'interno del core.
Queste caratteristiche rendono la fibra ottica ideale per connessioni WAN (larga banda, bassa
attenuazione, immunità da disturbi). La banda passante e’ di qualche GHz, mentre la massima
distanza raggiungibile e’ di alcune centinaia di Km. Nei fondali sottomarini sono posati parecchie
decine di migliaia di Km di cavi in fibra utilizzati per i sistemi telefonici e per trasmissione dati.
Per le connessioni LAN non e` molto utilizzata a causa dell'alto costo di connettorizzazione
(inserire ed estrarre il segnale agli estremi di un cavo). In figura è visibile una coppia di cavi con
connettore ti tipo ST.
2.3 COMUNICAZIONI VIA ETERE
I segnali vengono trasmessi mediante antenne di trasmissione e antenne di ricezione. Le antenne
possono essere direzionali (comunicazione tra 2 antenne allineate denominata Ponte-Radio) o
non direzionali (una trasmissione puo’ essere ricevuta da piu’ antenne). Le frequenze utilizzate
sono classificabili in 3 categorie:
• Da 30 MHz a 2 GHz: trasmissioni non direzionali (multiaccesso) entro pochi Km, utilizzate per
LAN Wireless oltre che per i telefoni cellulari (i cellulari GMS utilizzano frequenze da 900 a
1800 MHz, mentre UTMS utilizza 2GHz).
• Da 2 GHz a 40 GHz (microonde) ideale per le comunicazioni direzionali (ponti-radio) e per le
comunicazioni via satellite.
• Da 300 GHz a 200 THz (Infrarossi) per applicazioni locali (pochi metri) in cui trasmettitore e
ricevitore devono essere a visibilità ottica.
5
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
3 RETI LOCALI E GEOGRAFICHE
I canali di comunicazione per reti a commutazione di pacchetto sono seriali (trasferiscono 1 bit per
volta) e possono essere punto-punto e multiaccesso.
Nel canale punto-punto la comunicazione avviene tra due
multiaccesso lo stesso canale puo' essere utilizzato da piu' nodi;
canale tutti gli altri ricevono, ma solo il destinatario (specificato dal
canale.
Inoltre un canale si dice full-duplex se la comunicazione tra 2 nodi
direzioni contemporaneamente; altrimenti e' detto half-duplex.
nodi. Nella comunicazione
quando un nodo scrive sul
mittente) preleverà i dati dal
può avvenire in entrambe le
Un canale Multiaccesso consente di realizzare una rete di calcolatori particolare, priva di
commutatori, denominata Rete Locale (LAN) in cui ogni terminale ha accesso diretto a tutti gli
altri. La LAN viene utilizzata per realizzare reti a corto raggio, tipicamente all'interno di un edificio.
3.1 RETI LOCALI
La tecnologia che attualmente copre la quasi totalità di reti LAN al mondo e denominata
"Ethernet" (tecnicamente IEEE802.3). Si basa sulla caratteristica multiaccesso di alcuni canali
trasmissivi per cui ogni nodo terminale della Rete Locale ha accesso diretto a tutti gli altri.
Ogni terminale possiede un indirizzo e la comunicazione avviene per pacchetti di dati di lunghezza
massima di 1500 Byte con una intestazione in cui è specificato l'indirizzo del destinatario e del
mittente (comunicazione Unicast). Un indirizzo speciale di destinazione consente di indirizzare un
pacchetto a tutti i terminali della rete locale (comunicazione Broadcast).
6
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
Inizialmente (anni 80) il mezzo trasmissivo multiaccesso utilizzato da Ethernet era il cavo
coassiale.
In seguito (anni 90) con l'introduzione di Ethenet Repeater (HUB) è stato possibile utilizzare una
topologia a stella (di più facile gestione).
I pacchetti ricevuti su di una porta dell'HUB vengono rispediti su tutte le altre porte; questo
consente l'utilizzo di mezzi trasmissivi punto-punto.
Verso la metà degli anni 90 si diffusero speciali apparati di rete, detti Switch, che installati al posto
degli HUB erano in grado di riconoscere la porta di destinazione dei pacchetti (mediante tabelle
interne create automaticamente) e quindi indirizzare i pacchetti solo verso la destinazione finale.
Questo introdusse 2 vantaggi evidenti.
Maggiore velocità: più pacchetti possono attraversare contemporaneamente lo Switch
Maggiore sicurezza: ogni terminale non riceve i pacchetti che non gli sono destinati.
Nel giro di pochi anni gli edifici furono ricablati sostituendo i vecchi cavi coassiali, con un cablaggio
di nuova concezione, denominato Cablaggio Strutturato, che prevede una topologia in cui ogni
piano è cablato a stella con doppini telefonici di categoria 5, in cavi da 4 coppie, che convergono
nei cosiddetti “armadi di piano”. Gli armadi di piano sono interconnessi in modo gerarchico
mediante dorsali fibra ottica (o doppino). Il cablaggio strutturato integra trasmissione Dati e Fonia.
7
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
La velocita` di comunicazione originariamente era di 10Mbit/s. Poi la tecnologia ha raggiunto i 100
Mbit/s e infine i 1000Mb/s (1Gb/s). Se il controller supporta piu` velocita` (esempio 10/100 Mb/s) si
accorderà di volta in volta con la controparte sulla massima velocita` comune.
Ethernet puo` viaggiare anche via etere (wireless). In questo caso la comunicazione è più lenta
(11 o 54 Mbit/s, la tecnologia si chiama WI-FI 802.11), ma ha il vantaggio di non richiedere un
cablaggio fisso. E` quindi adatta per computer portatili o per edifici in cui e’ difficoltoso realizzare il
cablaggio strutturato.
Ogni nodo della LAN (server, PC, apparato di rete..) deve possedere un opportuno controller
Ethernet. Ogni controller ethernet possiede un proprio indirizzo univoco di 6 byte scritto in modo
permanente sul controller dal costruttore denominato Mac Address (esempio: 00-01-02-1B-44-7F).
Esercizio: Verificare il Mac Address (Physical Address) della scheda di rete del PC
Windows2000 e XP: Aprire la shell DOS e digitare il comando ipconfig /all
Win9x/Me
: Start -> esegui -> Winipcfg
Linux
: Digitare /sbin/ifconfig
3.2 RETI GEOGRAFICHE
Un altra categoria di comunicazioni ad accesso diretto riguarda le connessioni a lunga distanza
(che non possono essere coperte da una LAN). Questi canali, utilizzati per interconnettere reti
locali o singoli Host, vengono generalmente forniti dai “Provider di Telecomunicazione” poiché
questi possiedono una estesa e capillare infrastruttura di canali di comunicazione punto-punto.
Le principali tipologie di canali che possono essere utilizzati sono.
CDN: Sono canali punto-punto fisici ottenuti destinando permanentemente un circuito ad un
8
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
utente.
ATM: Sono canali punto-punto virtuali ricavati dalla infrastruttura a commutazione a pacchetto
(ATM) che recentemente è stata introdotta dai provider per la Telefonia.
ADSL: è un canale per dati ricavato dal canale su doppino per la fonia che abbiamo in casa.
Anche in questo caso il protocollo data-link si occupa di trasportare pacchetti tra i 2 nodi del
canale, ma il protocollo è più semplice poiché non esiste il problema dell'indirizzamento e della
contesa del canale multiaccesso.
HDLC e PPP sono i 2 protocolli più utilizzati per canali Geografici
4 L’ARCHITETTURA TCP/IP
Le reti locali e geografiche forniscono una connettivita` diretta (tra i nodi della rete locale, o tra gli
estremi di una connessione geografica) a livello di pacchetti.
Per fornire un servizio omogeneo e ad alto livello di astrazione alle applicazioni di utente occorre
uno stato di software di rete intermedio. Sicuramente il piu` diffuso e` TPC/IP a causa della sua
adozione per la realizzazione della rete mondiale (Internet).
Da leggere: http://it.wikipedia.org/wiki/Internet
TCP/IP si pone sopra al livello data-link aggiungendo 3 nuovi livelli:
o Il livello "rete" con il protocollo IP
o Il livello "Trasporto" con i protocolli TCP e UDP.
o Il livello “applicazione” con vari protocolli applicativi
4.1 IP (INTERNET PROTOCOL)
Da` il nome ad Internet. E` il protocollo che si occupa di dare una numerazione uniforme a tutti gli
oggetti che vogliono comunicare in rete (PC, server, stampanti, apparati di rete .. ) e si occupa del
meccanismo di instradamento.
Ad ogni elemento della rete IP viene assegnato un numero univoco di 4 Byte, rappresentato
mediante 4 numeri decimali separati da punto. Esempio 172.28.33.2
Questo numero e` composto da 2 parti: la prima parte e` il numero di network, la seconda e` il
numero di host. Esempio: 172.28 e` il numero di network, mentre 33.2 e` il numero di host.
La distinzione network/host server per l’instradamento: se il destinatario ed il mittente hanno lo
stesso numero di network significa che non e` necessario l’instradamento (ad esempio perchè i 2
host sono sulla stessa LAN). Se invece i numeri di Network sono differenti allora il pacchetto deve
essere affidato ad un router (detto anche gateway) per l’instradamento.
9
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
Configurazione del PC:
In ogni PC dovranno essere configurati i seguenti dati:
Indirizzo IP. Numero univoco e compatibile con la rete (LAN o WAN) a cui e` connesso.
Netmask. Numero di 4 Byte che separa la parte Network dalla parte host. Gli 1 identificano la
parte Network, mentre gli 0 identificano la parte host. Se ad esempio scriviamo NetMask=
255.255.255.0 intendiamo 24 bit a 1 seguiti da 8 bit a 0, quindi i primi 3 byte saranno Network,
mentre l`ultimo byte e` la parte Host.
Default Gateway. Indirizzo utilizzato come destinatario locale a cui affidare i pacchetti indirizzati a
altre Network.
DNS Server: Server di riferimento per la traduzione Nome->NumeroIP (esempio galileo.fis.unipr.it
-> 192.135.11.1).
Questi 4 dati possono essere impostati manualmente oppure possono essere forniti
automaticamente al PC attraverso nel momento in cui si accede ala rete. Per avere questo
servizio e` necessaria la presenza in rete di un opportuno server denominato “DHCP server” che
ha in gestione un insieme di numeri IP che assegna ai PC che ne fanno richiesta.
Il server DHCP puo' attribuire ad ogni PC un indirizzo statico o dinamico.
Indirizzo statico: ad ogni richiesta il PC riceve sempre lo stesso indirizzo
Indirizzo dinamico: il PC riceve in “Affitto” (lease) uno tra gli indirizzo disponibili al momento della
richiesta. Alla fine dell'utilizzo l'indirizzo verra' ritirato ed assegnato ad altri PC.
4.2 TCP E UDP
Sono protocolli che forniscono al livello dell’applicazione utente le 2 principali tipologie di servizi
per la rete: Connection Oriented (TCP) e Connection Less (UDP).
Il servizio "Connection Oriented" del TCP puo` essere paragonato al telefono: il chiamante manda
al destinatario una richiesta di attivazione di un circuito per la comunicazione; se il chiamato
accetta il circuito viene attivato e rimane attivato fino a quando uno dei due non chiede
l’abbattimento del circuito. Per ogni pacchetto spedito sul canale il destinatario dovra` spedire un
pacchetto di conferma nella direzione opposta. Questo rende molto affidabile la comunicazione,
anche se introduce un traffico aggiuntivo sulla rete.
Il servizio "Connection Less" del UDP puo` essere paragonato alla lettera postale: il mittente invia
un singolo messaggio (pacchetto) al destinatario senza accordo preventivo e non avra` modo di
sapere se il messaggio e` stato ricevuto se non attraverso un secondo messaggio (UDP) inviato
nella direzione opposta.
Il servizio UDP viene scelto quando e` necessario inviare comunicazioni brevi e veloci; non c'e' la
necessita` di un accordo tra le parti, ma non c'e` nemmeno garanzia di consegna.
Il servizio TCP viene scelto quando la comunicazione puo` essere piu` articolata e richiede
garanzia di ricezione.
Tutti le principali applicazioni utente (tranne DNS) utilizzano TCP.
Dal momento che un elaboratore in rete puo` avere piu` connessioni attive contemporaneamente
(UDP o TCP), ogni connessione su di un elaboratore verra` contraddistinta da un numero detto
"Porta".
Esempio: (192.135.11.1, 1154/TCP) -> (172.28.33.2, 80/TCP)
Questo e` un esempio dell’identificativo di una connessione TCP tra la porta 1154 del nodo
192.135.11.1 e la porta 80 del nodo 172.28.33.2
4.3 LE APPLICAZIONI UTENTE
Le principali applicazioni in Internet sono di tipo Client-Server.
Il server e` un calcolatore che fornisce un servizio su cui gira continuamente un programma in
ascolto su di una porta TCP o UDP.
10
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
Uno o piu` calcolatori denominati client (anche
contemporaneamente) possono contattare il server per
accedere al servizio. Il dialogo tipico consiste nell'invio di
una richiesta e nella attesa della risposta.
Quando si desidera costruire una nuova applicazione di
rete occorre innanzitutto stabilire (in base al tipo di
servizio) se utilizzare TCP o UDP. Quindi occorre individuare un numero di porta per il programma
server a cui dovranno connettersi i client. Infine occorre stabilire un "linguaggio" (o protocollo)
comune per la comunicazione tra client e server. Tutte le principali applicazioni di rete hanno un
numero di porta stabilito universalmente da un Organismo internazionale denominato IANA (vedi
http://it.wikipedia.org/wiki/Porte_note). La porta del client invece viene assegnata dinamicamente e
puo` cambiare ad ogni connessione.
4.3.1 Domain Name Server (DNS)
Da leggere: http://it.wikipedia.org/wiki/DNS
L'utente della rete puo' riferirsi alle stazioni remote utilizzando il loro numero tcp/ip, ma ben presto
ci si rende conto che chiamare una stazione per nome e' piu' semplice! Per questo motivo ad ogni
numero tcp/ip puo' essere associato un nome mnemonico come ad esempio galileo.fis.unipr.it.
Il nome completo e` composto da un nome dell`host + un nome di dominio che e` comune a tutti
gli host appartenenti allo stesso dominio organizzativo. Nell'esempio di prima "galileo" e` il nome
dell`host, mentre "fis.unipr.it" e` il nome del dominio che in questo caso rappresenta il
Dipartimento di Fisica (Generalmente il dominio coincide con la rete locale IP, ma esistono casi in
cui le 2 cose non coincidono).
Ogni nodo della rete possiede un nome a cui possiamo associare uno o piu' "alias" ovvero altri
nomi per riferirsi alla stessa macchina. Ad esempio www.fis.unipr.it e' una alias di
galileo.fis.unipr.it ; in questo modo il servizio www puo' essere spostato su di un calcolatore
diverso senza cambiare il nome della macchina, semplicemente ridefinendo l'alias.
Per ogni dominio deve esistere un server denominato DNS che ha il compito di gestire le
traduzioni nome/numero e numero/nome per gli host del dominio.
Il servizio DNS e` una delle poche applicazioni ad utilizzare UDP.
La porta utilizzata e` la 53/UDP
I client invieranno un pacchetto al server contenente la richiesta; il server rispondera` con un
pacchetto contenente la risposta.
Ogni programma client che utilizza la rete mediante nomi (Firefox, Thunderbird, ecc) conterrà un
piccolo client DNS per la traduzione del nome da utilizzare prima di realizzare la connessione al
proprio server. I DNS server per i domini in unipr.it
Ogni PC dovra` quindi contenere l’informazione riguardo il server DNS del proprio dominio.
Se questa informazione non e` impostata il PC potra` utilizzare la rete riferendosi ai server per
numero e non per nome (esempio http://192.135.11.1/ )
4.3.2 LA Posta Elettronica
Da leggere:http://it.wikipedia.org/wiki/E-mail
La posta elettronica e' uno degli applicativi piu' diffusi in Internet.
Il protocollo utilizzato per lo scambio dei messaggi e' detto SMTP (Simple Mail Trasfer Protocol);
la porta assegnata per il server SMTP e' la 25/TCP.
Il programma server SMTP quando riceve un messaggio lo deposita nella casella del destinatario
(MAILBOX).
11
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
Per leggere il messaggio il destinatario puo' utilizzare il calcolatore stesso su cui risiede la Mailbox
oppure utilizzare un calcolatore diverso. Per accedere alla Mailbox in modo remoto esistono 2
ulteriori protocolli di rete (alternativi): POP (110/TCP) e IMAP (143/TCP).
I client di posta elettronica (Thunderbird, pine, ...) sono dotati di un client POP e/o di un client
IMAP.
La scelta tra POP e IMAP dipende dal modo con cui si intendono organizzare i messaggi ricevuti:
con POP il client si connette al server quindi trasferisce localmente tutti i nuovi messaggi;
utilizzando IMAP i messaggi vengono gestiti in modo remoto sul server.
I client di posta elettronica utilizzano
il server SMTP anche per la
spedizione: i messaggi in uscita
vengono affidati al server SMTP
locale , il quale si occupera' di
contattare il server SMTP del
destinatario. In questo caso il server
SMTP funge da "proxy", ovvero
spedisce
il
messaggio
al
destinatario "per conto" di un altro
calcolatore.
4.3.3 Accesso Remoto alle interfacce Utente
Accesso remoto “a linea di comando”
L'interazione con il calcolatore "a linea di comando" (SHELL). tipica dei sistemi Unix, puo' avvenire
anche a distanza mediante un opportuno applicativo client-server.
Il login remoto consente quindi di utilizzare tastiera e monitor del client per interagire con il sistema
operativo del server.
Il protocollo piu' diffuso in Internet per il login remoto e' telnet.
telnet fa parte degli applicativi "storici" di internet (assieme a smtp e ftp). Il programma server
utilizza la porta 23/TCP.
Tutti i comandi digitati dal client (compresa la password per l'identificazione dell'utente) viaggiano
"in chiaro" sulla rete, mettendo a repentaglio la sicurezza e la riservatezza.
Per superare questo problema si e' affermato in questi ultimi anni un nuovo programma per il login
remoto in cui la comunicazione avviene in modo cifrato, denominato SSH (Secure SHell). SSH
server utilizza la porta 22/TCP.
Accesso remoto mediante interfacce grafiche (GUI)
Esistono diversi programmi per accedere in modo remoto alle interfacce grafiche. In ambiente
Unix la costruzione delle interfacce grafiche avviene mediante un protocollo denominato X
protocol il quale consente di separare su diversi calcolatori la parte applicativa e la sua interfaccia
grafica.
Il ambiente Windows esistono applicazioni client-server che consentono il controllo remoto del
desktop. Alcuni esempi:
• PC_anywhere (commerciale) - Server Win (porta 5631) - Client Win
• VNC (open software) - Server Win/Linux (port 5900) - Client Win/Linux
• Terminal service (incluso in Win2000 server) - Server Win2000 (port 3389) - Client Win/Linux
(vedi www.rdesktop.org)
4.3.4 L`architettura WWW
Da leggere: http://it.wikipedia.org/wiki/World_Wide_Web
Il WWW ha una storia relativamente recente: nasce nel 1990 nel mondo della Fisica per mano di
Tim Barners Lee presso il CERN di Ginevra.
Lo scopo era di realizzare una architettura di documenti multimediali ipertestuali distribuiti nella
12
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
rete Internet.
Per questo e' stato creato il nuovo protocollo HTTP in cui il server (porta 80/TCP) gestisce e
distribuisce i documenti a opportuni client (browser) capaci di connettersi al server , scaricare il
documento e riprodurlo in forma multimediale/ipertestuale.
Ogni documento e' identificato mediante un URL (Uniform Resource Locator) del tipo:
schema://host.domain/path
Lo schema e' il protocollo usato; principalmente e' HTTP
Esempio: http://www.fis.unipr.it/home/alfieri/index.html
HTMLe' il linguaggio attraverso il quale possiamo costruire documenti multimediali ipertestuali.
I client browser sono usualmente in grado di connettersi anche ad altri server quali ad esempio i
server ftp anonimi:
Esempio: ftp://ftp.fis.unipr.it/
Il PROXY Web / FTP e' un server che non contiene propri documenti ma si connette a server
WWW e FTP per conto di client browser. I client browser affidano al proxy la richiesta con lo
scopo di aumentare la velocità di accesso o semplicemente perche' il client non e' in grado di
connettersi direttamente. I proxy quando accedono ad un documento, prima di passarlo al
destinatario ne fanno una copia su di un disco locale (caching) in modo che successive richieste
troveranno il documento direttamente sul proxy server.
(vedi http://www.cce.unipr.it/proxy/proxy.htm
e verifica le impostazioni proxy del tuo web browser)
5 LA SICUREZZA DELLE RETI INFORMATICHE
5.1 IL PROBLEMA DELLA SICUREZZA
I problemi di sicurezza nei della sicurezza nei calcolatori si possono classificare come intenzionali
(abusi) o accidentali.
Gli abusi più frequenti sono:
•
lettura/alterazione/distruzione non autorizzata di dati
•
accesso non autorizzato a programmi e servizi
•
impedimento del legittimo uso del sistema (DoS - Denial of Service)
La realizzazione di un sistema che garantisca una assoluta protezione da abusi e` impossibile, ma
e` possibile attivare meccanismi di sicurezza tali da scoraggiarne i tentativi. La politica di sicurezza
13
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
e` quindi un compromesso, dettato dalle proprie necessita`, tra il costo per attivarla ed il beneficio
ottenuto in termini di dissuasione.
5.2 PROTEZIONE DEI SISTEMI TRAMITE PASSWORD
La tecnica principale di protezione dei sistemi di calcolo consiste nell'autenticazione degli utenti e
conseguentemente, nell'applicazione di politiche di autorizzazione nell'accesso alle risorse.
Il metodo di autenticazione piu` comunemente utilizzato (in modo locale o attraverso la rete) e` la
password. La password consiste in un segreto (una sequenza di caratteri) condiviso tra utente e
sistema.
I sistemi di calcolo gestiscono un file che contiene la lista degli utenti riconosciuti con le relative
password. L'accesso non autorizzato a questo file permetterebbe di violare le password di tutti gli
utenti registrati; per questo motivo le password vengono generalmente registrate in modo cifrato.
Il limite del meccanismo di autenticazione tramite password e` dato dalla sua vulnerabilità
•
Password troppo semplici. La vulnerabilità maggiore e` dovuta alla scelta di una password
troppo semplice e quindi facile da indovinare. Esistono programmi che provano
automaticamente ad indovinare la password basandosi sui dati personali e su dizionari.
•
Password sniffing. Se l'accesso avviene tramite la rete e` possibile catturare la password
installando un opportuno programma (sniffer) su di un calcolatore posto tra l'utente ed il
servizio.
Da leggere: http://en.wikipedia.org/wiki/Password
5.3 VULNERABILITA' DEI PROGRAMMI E FIREWALL
Uno dei maggiori problemi di sicurezza e` dovuto all'installazione di programmi che, per errore di
programmazione (Bug) o in modo voluto (Trap-Door), in certe situazioni consentono di aggirare i
meccanismi di sicurezza previsti. Questo problema e` particolarmente grave se il programma in
questione e` un servizio di rete: la notizia relativa ad un problema su di un determinato servizio si
diffonde rapidamente in internet assieme ai programmi necessari per violare i sistemi coinvolti.
Capita frequentemente che installando un sistema Windows o Linux viene attivato un servizio di
rete violabile, esponendo inconsapevolmente il sistema ad accessi non autorizzati. Generalmente i
produttori di software forniscono rapidamente la versione corretta dal programma, ma in molti casi
questa non viene installata o viene installata quando oramai il sistema e` compromesso.
Il Firewall e` una tecnica molto diffusa per proteggere un intera LAN o un singolo calcolatore
(Personal Firewall) da attacchi ai servizi di rete. Il firewall ha il compito di “filtrare” gli ingressi
provenienti da internet permettendo l'accesso solamente a determinati servizi di cui, in qualche
modo, si e` verificata l'affidabilità.
14
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
5.4 WORM E VIRUS
Esistono alcuni tipi di Bug sui servizi di rete che consentono da remoto l`installazione di un
programma e la sua esecuzione. Se il programma che viene installato va alla ricerca di altri
sistemi vulnerabili su cui replicare se stesso, il programma e` denominato WORM.
Un Worm e’ quindi un processo che sfrutta gli effetti della proliferazione per minare le prestazioni
di piu` sistemi di calcolo.
Come il worm il virus informatico è un frammento di software scritto e progettato per creare
copie aggiuntive di se stesso e diffondersi da un sistema informatico ad un altro, senza la
conoscenza o il permesso dell’utente. Mentre un worm e’ strutturato come un programma
completo, un virus e’ un frammento di codice che si inserisce in un programma legittimo.
Negli ultimi anni una forma comune di trasmissione dei virus e’ lo scambio di documenti Microsoft
Office (Word, PowerPoint, Excel, Access). Questi documenti possono contenere Macro ovvero
programmi scritti in Visual Basic che vengono eseguiti automaticamente quando il documento
viene letto.
Gli antivirus sono programmi che analizzano il contenuto di file potenzialmente infetti ricercando al
loro interno sequenze note che l’antivirus mantiene in un archivio di impronte virali conosciute. Le
eventuali sequenze virali riconosciute vengono rimosse dal file, disinfettandolo.
Da leggere: http://it.wikipedia.org/wiki/Virus_%28informatica%29
Visto che attualmente in maggiore
rischio proviene dalla posta elettronica
esistono opportuni programmi (Scanner
Antivirus) da installare sul server di
posta con il compito di analizzare tutte le
mail in transito ed eventualmente
intervenire sulle mail infette.
15
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
5.5 CRITTOGRAFIA
Da leggere: http://it.wikipedia.org/wiki/Crittografia
La crittografia si applica nel trasferimento o nell’archiviazione di una informazione ed ha lo scopo
di garantire alcuni requisiti di sicurezza quali:
riservatezza: l'informazione durante il trasferimento (o quando e' archiviata) non puo' essere letta
da terze parti.
autenticazione: i partner della comunicazione possono provare la loro identita` in modo certo
Integrità: l'informazione non puo` essere contraffatta durante il trasferimento
La tecnica consiste nell’applicare un algoritmo che manipola l’informazione prima di essere inviata;
l’algoritmo deve consentire al solo destinatario la possibilità di ricostruire il messaggio originale.
Gli algoritmi moderni basano la propria sicurezza su di una chiave segreta: l’unico modo per
decifrare il messaggio e` conoscere la chiave di cifratura.
Esisto algoritmi che utilizzano la stessa chiave per cifrare e decifrare (algoritmi a chiave
simmetrica) e algoritmi che utilizzano 2 chiavi diverse (algoritmi a chiave pubblica).
Algoritmi a chiave simmetrica.
• Algoritmi piu` utilizzati: DES, 3DES, IDEA.
• Come funzionano: una delle 2 parti genera la chiave e invia all'altra parte la chiave e il nome
dell'algoritmo scelto. Quindi inizia la comunicazione cifrata.
• Vantaggi: elevata velocità di cifratura.
• Svantaggi: la chiave di cifratura deve essere scambiata tra le 2 parti ed e` quindi intercettabile.
16
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006
Algoritmi a chiave pubblica.
• Algoritmi piu` utilizzati: RSA, DSS.
• Come funzionano: ciascuno genera una propria coppia di chiavi; una delle 2 chiavi,
denominata “pubblica” e` di dominio pubblico, mentre l’altra, denominata "privata" e`
strettamente custodita dal proprietario.
• Svantaggi: bassa velocità di cifratura.
• Vantaggi: la chiave privata non deve essere comunicata e quindi non e` esposta ad
intercettazione.
• Possibili utilizzi: Cifratura della comunicazione e firma digitale (vedi figura).
Algoritmi composti.
- Nelle applicazioni reali (posta elettronica, Web, ssh, ecc) per la cifratura viene utilizzata una
tecnica mista: la chiave pubblica si usa per scambiare in modo sicuro la chiave simmetrica,
che poi viene utilizzata per la cifratura veloce (vedi figura).
Message digest
- Dato un messaggio di lunghezza indefinita, e` possibile mediante un opportuno algoritmo,
estrarre una “impronta digitale” (digest) del messaggio, di lunghezza fissa e limitata
(tipicamente 128 bit). Altre caratteristiche dei digest: e` improbabile che 2 messaggi diversi
generino lo stesso digest; il digest non e` invertibile, ovvero dal digest non e possibile risalire al
messaggio. Utilità principali: Verifica dell'integrità di un messaggio e Firma digitale. Gli
algoritmi più utilizzati sono: MD5 (128 bit) e SHA-1 (160 bit).
Certificati (X.509)
Il meccanismo a chiave pubblica utilizzato per l'autenticazione (firma digitale) ha un punto di
debolezza nel fatto che e` possibile creare una coppia di chiavi (pubblica e privata) a nome di una
terza persona, per poi impersonarla abusivamente.
Per superare questo problema e` stato introdotto il concetto di Certification Authority (CA). La CA
e` una entità, riconosciuta da una comunità di utenti, in grado di fare da "garante" delle chiavi
pubbliche. Per fare questo la CA firma (con la propria chiave privata) la chiave pubblica degli
utenti generando il cosiddetto "certificato".
Il certificato di un utente (o computer) e` quindi un file che contiene i dati identificativi della
persona, compresa la sua chiave pubblica, il tutto firmato dalla CA.
E` possibile verificare l'autenticità di un certificato mediante la chiave pubblica della CA.
Esercizio: verifica dei certificati nel browser Firefox:
Edit-> Preferenze -> Strumenti-> Privacy -> Certificati -> Gestione Certificati
SSL
Da leggere: http://it.wikipedia.org/wiki/Secure_Sockets_Layer
E` un protocollo per implementare connessioni cifrate mediante algoritmi crittografici composti.
Utilizza diversi algoritmi in chiave pubblica (RSA e DSS) associati ai certificati X.509 per
l’autenticazione; Ia cifratura e` implementata mediante uno tra diversi algoritmi in chiave
simmetrica (DES, 3DES, IDEA,..). Per i Digest può utilizzare MD5 o SHA-1.
La maggior parte degli attuali protocolli in chiaro hanno realizzato o stanno realizzando la versione
"sicura" mediante SSL.
Alcuni esempi:
• HTTPS e` la versione crittografata con SSL del protocollo HTTP (WEB)
• POPS e IMAPS sono le versioni con SSL dei protocolli POP e IMAP
• SMIME e` la versione sicura del protocollo MIME (per la codifica dei file allegati nella posta
elettronica): con SMIME gli allegati possono essere cifrati e/o firmati.
17
Le Reti Informatiche
[email protected]
Ultima modifica 17/9/2006