MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server),...

34
MENU MENU 22 Aprile - 16 Maggio 22 Aprile - 16 Maggio 2002 2002 Servizi Internet Servizi Internet: tecnologia tecnologia (IPv4, Applicazioni Client- (IPv4, Applicazioni Client- Server), Server), servizi di base, implicazioni generali sulla servizi di base, implicazioni generali sulla sicurezza in rete. sicurezza in rete. WEB WEB: origini, tecnologie di base origini, tecnologie di base (Ipertesti, HTML, HTTP, (Ipertesti, HTML, HTTP, URL) URL) , tecnlogie avanzate , tecnlogie avanzate (CGI, Java, Jsp, ASP, PHP), (CGI, Java, Jsp, ASP, PHP), sicurezza sicurezza (SSL, HTTPS). (SSL, HTTPS). Email Email: origini, tecnologie di base origini, tecnologie di base (SMTP), (SMTP), tecnologie avanzate tecnologie avanzate (POP, Imap), (POP, Imap), sicurezza sicurezza (Antivirus, PGP). (Antivirus, PGP). I servizi Internet di base: I servizi Internet di base: le tecnologie e la sicurezza nel Web e le tecnologie e la sicurezza nel Web e nella Email nella Email [email protected] [email protected] .it .it Ministero dell’Istruzione Università e Ministero dell’Istruzione Università e Ricerca Ricerca LA CONNESSIONE IN RETE LOCALE LA CONNESSIONE IN RETE LOCALE E GEOGRAFICA” E GEOGRAFICA” Aspetti tecnici e normativi Aspetti tecnici e normativi

Transcript of MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server),...

Page 1: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

22 Aprile - 16 Maggio 200222 Aprile - 16 Maggio 2002

• Servizi InternetServizi Internet:: tecnologia tecnologia (IPv4, Applicazioni Client-(IPv4, Applicazioni Client-Server), Server), servizi di base, implicazioni generali sulla sicurezza in servizi di base, implicazioni generali sulla sicurezza in rete.rete.

• WEBWEB:: origini, tecnologie di base origini, tecnologie di base (Ipertesti, HTML, HTTP, URL)(Ipertesti, HTML, HTTP, URL), , tecnlogie avanzate tecnlogie avanzate (CGI, Java, Jsp, ASP, PHP), (CGI, Java, Jsp, ASP, PHP), sicurezza sicurezza (SSL, (SSL, HTTPS).HTTPS).

• EmailEmail:: origini, tecnologie di base origini, tecnologie di base (SMTP),(SMTP), tecnologie tecnologie avanzate avanzate (POP, Imap),(POP, Imap), sicurezza sicurezza (Antivirus, PGP).(Antivirus, PGP).

I servizi Internet di base:I servizi Internet di base: le tecnologie e la sicurezza nel Web e nella le tecnologie e la sicurezza nel Web e nella Email Email

[email protected]@src.cnr.it

Ministero dell’Istruzione Università e RicercaMinistero dell’Istruzione Università e Ricerca

““LA CONNESSIONE IN RETE LA CONNESSIONE IN RETE LOCALELOCALE

E GEOGRAFICA”E GEOGRAFICA”

Aspetti tecnici e normativiAspetti tecnici e normativi

Page 2: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUL’architettura di rete INTERNET

Concetti Concetti FondamentaliFondamentali

InternetInternet Tecnologia: la modellistica di reteTecnologia: la modellistica di rete

OSIOSI

Servizi di Servizi di BaseBase Appl. Client-Appl. Client-

ServerServer

Cablaggio Cablaggio StrutturatoStrutturato

……..una rete di ..una rete di retireti

Internet Protocol SuiteInternet Protocol Suite

Page 3: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUApplicazioni Client-Applicazioni Client-ServerServer

Concetti Concetti FondamentaliFondamentali

InternetInternet Tecnologia: la modellistica di reteTecnologia: la modellistica di rete

Gli attori di un processo Gli attori di un processo client-server:client-server:

• ClientClient- che richiede la - che richiede la risorsa ad un server in reterisorsa ad un server in rete

• ServerServer - che concede ad un - che concede ad un client di utilizzare una risorsa client di utilizzare una risorsa (servizio) in rete(servizio) in rete

• Connessione in reteConnessione in rete - che - che permette l’indirizzamento permette l’indirizzamento degli Hosts e dei servizi in degli Hosts e dei servizi in essi contenuti essi contenuti

Page 4: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUConnessione TCP/IP

•Una connessione e’ una quintupla:Una connessione e’ una quintupla:

protocolloprotocollo== TCP o UDP TCP o UDP indirizzoindirizzo== indirizzo IP (32 bit) indirizzo IP (32 bit) portaporta== punto di accesso (16 bit) punto di accesso (16 bit)

Concetti Concetti FondamentaliFondamentali

InternetInternet Tecnologia: la modellistica di reteTecnologia: la modellistica di rete

Page 5: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUPorte TCP e UDP

•Sono il mezzo con cui un programma clientSono il mezzo con cui un programma client Indirizza un programma serverIndirizza un programma server

un ftp client per connettersi ad un ftp server indica:un ftp client per connettersi ad un ftp server indica:

l’indirizzo IP dell’ elaboratore remotol’indirizzo IP dell’ elaboratore remoto il numero della porta associata allo ftp serveril numero della porta associata allo ftp server

•CaratteristicheCaratteristiche identificate da un numero naturale su 16 bitidentificate da un numero naturale su 16 bit 0….1023 = porte privilegiate0….1023 = porte privilegiate 1024…65535= porte utente1024…65535= porte utente porte staticheporte statiche

Concetti Concetti FondamentaliFondamentali

InternetInternet Tecnologia: la modellistica di reteTecnologia: la modellistica di rete

Page 6: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUWell Known Port

Sono associate agli applicativi principali,Sono associate agli applicativi principali, Ad esempio:Ad esempio:

Concetti Concetti FondamentaliFondamentali

InternetInternet Tecnologia: la modellistica di reteTecnologia: la modellistica di rete

Page 7: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUThe Internet Protocol The Internet Protocol SuiteSuite

Concetti Concetti FondamentaliFondamentali

InternetInternet Tecnologia: la modellistica di reteTecnologia: la modellistica di rete

Page 8: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

““...Il World Wide Web è una ...Il World Wide Web è una architetturaarchitettura software software per accedere a documenti tra loro collegati e per accedere a documenti tra loro collegati e distribuiti su migliaia di macchine nell’intera distribuiti su migliaia di macchine nell’intera Internet.Internet.

Cinque anni fa era un modello per distribuire dati Cinque anni fa era un modello per distribuire dati per la fisica delle alte energie, oggi è per la fisica delle alte energie, oggi è l’applicazione che milioni di persone credono sia l’applicazione che milioni di persone credono sia Internet.”Internet.”

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

IntroduzioneIntroduzione

Cos’è il World Wide WebCos’è il World Wide Web

Definizione Definizione autorevoleautorevole

Andrew S. Tanenbaum Andrew S. Tanenbaum

"Computer Networks" Ottobre 1997"Computer Networks" Ottobre 1997

Page 9: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU Le radici del World Wide Le radici del World Wide WebWeb

Il Il World Wide WebWorld Wide Web (detto anche (detto anche WebWeb,, WWWWWW o o WW33)) è nato al è nato al Cern nel 1989 per consentire una agevole cooperazione fra i Cern nel 1989 per consentire una agevole cooperazione fra i gruppi di ricerca di fisica, sparsi nel mondo.gruppi di ricerca di fisica, sparsi nel mondo.E' un'architettura software volta a fornire l'accesso e la E' un'architettura software volta a fornire l'accesso e la navigazione a un enorme insieme di informazioni collegate fra navigazione a un enorme insieme di informazioni collegate fra loro da loro da LINKLINK e distribuite su milioni di elaboratori. e distribuite su milioni di elaboratori.Tale insieme di documenti forma un Tale insieme di documenti forma un ipertestoipertesto ((hypertexthypertext), ), cioè un cioè un insieme complesso insieme complesso ee non sequenziale di associazioni non sequenziale di associazioni, , che permette all'utente di spostarsi tra argomenti correlati, che permette all'utente di spostarsi tra argomenti correlati, indipendentemente dall'ordine in cui questi vengono presentati..indipendentemente dall'ordine in cui questi vengono presentati..

Il concetto di ipertesto risale alla fine degli anni '40:Il concetto di ipertesto risale alla fine degli anni '40:

Vannevar Bush Vannevar Bush Douglas Engelbart Douglas Engelbart Ted NelsonTed Nelson

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

IpertestoIpertesto Le OriginiLe Origini

Page 10: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Nel 1945 costruisce Nel 1945 costruisce MemexMemex,, “a “a conceptual machineconceptual machine”,”,un dispositivo un dispositivo dove si possono memorizzare dove si possono memorizzare informazioni di vario genere e dove e’ informazioni di vario genere e dove e’ possibile eseguire delle consultazioni possibile eseguire delle consultazioni a grande velocita’ e flessibilita’ grazie al a grande velocita’ e flessibilita’ grazie al meccanismo dei meccanismo dei LINK.LINK.

Vannevar Vannevar BushBush

“ “ ..The ..The human mindhuman mind ….operates ….operates by association.by association. “ “

""AS We May ThinkAS We May Think” July 1945,” July 1945,The Atlantic MonthlyThe Atlantic Monthly

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

IpertestoIpertesto Le OriginiLe Origini

Page 11: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Nel 1963 costruisce il prototipo Nel 1963 costruisce il prototipo di un sistema "di un sistema "oNLine oNLine SystemSystem" (" (NLSNLS) che permette ) che permette hypertext browsing editing e hypertext browsing editing e email.email.

Douglas Carl Douglas Carl EngelbartEngelbart

Per questo sistema inventa il Per questo sistema inventa il mouse !!mouse !!

Il resto e’ storia ...Il resto e’ storia ...

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

IpertestoIpertesto Le OriginiLe Origini

Page 12: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Il termine Il termine IpertestoIpertesto fu fu coniato nel 1965 da Ted coniato nel 1965 da Ted Nelson nella ‘Nelson nella ‘Literary Literary MachinesMachines’ per indicare ’ per indicare documenti documenti caratterizzaticaratterizzati

Ted NelsonTed Nelson

da una struttura non sequenziale da una struttura non sequenziale delle idee, in alternativa al formato delle idee, in alternativa al formato logico sequenziale tipico dei libri, logico sequenziale tipico dei libri, dei film e dei film e dei discorsi.dei discorsi.

Il più recente termine Il più recente termine IpermediaIpermedia è è un sinonimo che pone in evidenza un sinonimo che pone in evidenza le componenti non testuali: le componenti non testuali: animazioni, suoni e immagini.animazioni, suoni e immagini.

““DOCUMENTS ARE PARALLEL BY NATURE …”DOCUMENTS ARE PARALLEL BY NATURE …”

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

IpertestoIpertesto Le OriginiLe Origini

Page 13: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Per migliorare le comunicazioni tra ricercatori Per migliorare le comunicazioni tra ricercatori T.Berners-LeeT.Berners-Lee e e R. R. CailliauCailliau, nel 1990, propongono un nuovo modo di utilizzare Internet , nel 1990, propongono un nuovo modo di utilizzare Internet che chiamano che chiamano World Wide WebWorld Wide Web. .

Al di là del nome, la cosa più interessante è che in questa proposta Al di là del nome, la cosa più interessante è che in questa proposta sono già presenti tutte le idee guida che ancora oggi caratterizzano il sono già presenti tutte le idee guida che ancora oggi caratterizzano il Web.Web.

““World Wide Web: proposal for World Wide Web: proposal for a a HyperText HyperText Project”Project” Marzo 1989

Hypertext+SGML+Internet = Hypertext+SGML+Internet = WWWWWW

Tim Berners-LeeTim Berners-Lee Robert CailliauRobert Cailliau

Il WWW, la più nota Il WWW, la più nota applicazione usata su applicazione usata su Internet, nasce al Internet, nasce al CERN, il più grande CERN, il più grande centro di ricerca centro di ricerca europeo sulla fisica europeo sulla fisica delle particelle delle particelle elementari, dove elementari, dove lavorano fisici di tutto il lavorano fisici di tutto il modo che usano modo che usano quotidianamente la quotidianamente la Rete per tenersi in Rete per tenersi in contatto e scambiarsi contatto e scambiarsi dati e opinioni. dati e opinioni.

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

IpertestoIpertesto Il nuovo Il nuovo paradigmaparadigma

Page 14: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Nel 1992 Mark Andreessen sviluppa l'idea di Nel 1992 Mark Andreessen sviluppa l'idea di MosaicMosaic, il , il browser grafico che permise al www di svilupparsi, mentre browser grafico che permise al www di svilupparsi, mentre era uno studente all'universita' dell'Illinois e membro del era uno studente all'universita' dell'Illinois e membro del NNational ational CCenter for enter for SSupercomputing upercomputing AApplicationspplications ( (NCSANCSA).).

NCSA ---> NetscapeNCSA ---> Netscape

Mark AndreessenMark Andreessen

Nel Nel 19931993 M.Andreessen, insieme M.Andreessen, insieme ad un gruppo di studenti (ad un gruppo di studenti (Enric Enric BrinaBrina), crea la prima versione di ), crea la prima versione di Mosaic.Mosaic.

Lascia in seguito l'NCSA andando Lascia in seguito l'NCSA andando alla Silicon Valley per dare un alla Silicon Valley per dare un contributo alla fondazione con contributo alla fondazione con Jim ClarkJim Clark (Silicon Graphics) alla (Silicon Graphics) alla società conosciuta come:società conosciuta come:

Netscape Communications Netscape Communications CorporationCorporation

Netscape fu sviluppato per semplificare l'uso di Internet nel Netscape fu sviluppato per semplificare l'uso di Internet nel business.business.

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Le prime Le prime implementazioniimplementazioni

Page 15: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Il Web ha diverse caratteristiche che hanno Il Web ha diverse caratteristiche che hanno contribuito al suo enorme successo:contribuito al suo enorme successo:

architettura di tipo client-server:architettura di tipo client-server:ampia scalabilità;ampia scalabilità;adatta ad ambienti di rete;adatta ad ambienti di rete;

architettura distribuita:architettura distribuita:perfettamente in linea con le esigenze di gestione di un perfettamente in linea con le esigenze di gestione di un ipertestoipertesto

architettura basata su standard di pubblico dominio:architettura basata su standard di pubblico dominio:possibilità per chiunque di proporre una implementazione;possibilità per chiunque di proporre una implementazione;uguali possibilità di accesso per tutte le piattaforme di uguali possibilità di accesso per tutte le piattaforme di calcolocalcolo

capacità di gestire informazioni di diverso tipocapacità di gestire informazioni di diverso tipo grande interesse da parte di tutti gli utenti.grande interesse da parte di tutti gli utenti.

Le caratteristiche del Le caratteristiche del successosuccesso

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW CaratteristicheCaratteristiche

Page 16: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Sistema di indirizzamentoSistema di indirizzamento basato su basato su Uniform Resource Uniform Resource LocatorLocator ( (URLURL)):: è un meccanismo standard per fare è un meccanismo standard per fare riferimento alle entità riferimento alle entità indirizzabili (risorse) nel Web, indirizzabili (risorse) nel Web, che possono essere:che possono essere:

documenti (testo, immagini, suoni, ecc.);documenti (testo, immagini, suoni, ecc.);programmi eseguibili;programmi eseguibili;

Linguaggio HTMLLinguaggio HTML ( (HyperText Markup LanguageHyperText Markup Language)): è il : è il linguaggio per la linguaggio per la definizione delle pagine Web;definizione delle pagine Web;

Protocollo HTTPProtocollo HTTP ( (HyperText Transfer ProtocolHyperText Transfer Protocol)): è il protocollo : è il protocollo che i che i client e i server utilizzano per comunicare.client e i server utilizzano per comunicare.

I 3 standard principaliI 3 standard principali

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Page 17: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

L’ URL (Uniform Resource Locators) (L’ URL (Uniform Resource Locators) (RFC 1738RFC 1738), definisce univocamente ), definisce univocamente la posizione di una risorsa in rete. Una URL è fatta di 3 parti, che la posizione di una risorsa in rete. Una URL è fatta di 3 parti, che specificano:specificano:

il il metodo di accessometodo di accesso (come si vuole accedere alla risorsa) (come si vuole accedere alla risorsa) l'l'hosthost (dove è fisicamente localizzata (dove è fisicamente localizzata la risorsa)la risorsa) l'l'identitàidentità (come è identificata la risorsa) (come è identificata la risorsa)Metodo di accesso:Metodo di accesso:

aaaaaa = protocollo (http,ftp,https,etc). Per default si assume http= protocollo (http,ftp,https,etc). Per default si assume http

cccccc = porta TCP utilizzata nella trasmissione. Se non specificata viene utilizzata la porta di = porta TCP utilizzata nella trasmissione. Se non specificata viene utilizzata la porta di default per il protocollo selezionato. Per esempio: 80 per l’ http, 21 per l’ftp,443 per https.default per il protocollo selezionato. Per esempio: 80 per l’ http, 21 per l’ftp,443 per https.

Host:Host: bbbbbb = host name (nessun default) E’ definibile sia come indirizzo a dominio che come indirizzo = host name (nessun default) E’ definibile sia come indirizzo a dominio che come indirizzo IP.IP.

Identità:Identità:dddddd = pathname. Nel caso dell’ http identifica un percorso relativo a partire dalla root definita = pathname. Nel caso dell’ http identifica un percorso relativo a partire dalla root definita nel server contattato.nel server contattato.

eeeeee = filename. Nel caso dell’ http se non specificato corrisponde al file di indice configurato nel = filename. Nel caso dell’ http se non specificato corrisponde al file di indice configurato nel server web. Tipicamente per default corrisponde a index.html o index.htmserver web. Tipicamente per default corrisponde a index.html o index.htm

aaa://bbb:ccc/ddd/eeeaaa://bbb:ccc/ddd/eee

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Identificatore uniforme di Identificatore uniforme di risorserisorse

Page 18: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

• L’HTML è un linguaggio che usa annotazioni L’HTML è un linguaggio che usa annotazioni markupmarkup per descrivere la per descrivere la formattazione di documentiformattazione di documenti

• E’ derivato dall’ E’ derivato dall’ SGMLSGML ((Standard Generalized Markup LanguageStandard Generalized Markup Language)) ISO 8879ISO 8879

• E’ specializzato nel trattamento degli ipertesti e adattato al Web.E’ specializzato nel trattamento degli ipertesti e adattato al Web.

• I comandi per la formattazione I comandi per la formattazione ((tagtag)) sono inseriti in modo esplicito nel sono inseriti in modo esplicito nel testo.testo.

• Un documento descritto in HTML e’ sempre un file ASCIIUn documento descritto in HTML e’ sempre un file ASCII

L’evoluzione dell’HTML è sotto il controllo del consorzio W3C:L’evoluzione dell’HTML è sotto il controllo del consorzio W3C:

• versione 1.0versione 1.0• versione 2.0 (RFC 1866 e RFC 2854) versione 2.0 (RFC 1866 e RFC 2854) (...introdotto il concetto di (...introdotto il concetto di FormForm))• versione 3.0versione 3.0• versione 3.2versione 3.2• versione 4.0 (REC-html40-19980424)versione 4.0 (REC-html40-19980424)• versione 4.0.1versione 4.0.1

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Hyper Text Markup Hyper Text Markup LanguageLanguage

Page 19: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Il ruolo di HTML è quindi quello di definire il modo in cui deve essere visualizzata Il ruolo di HTML è quindi quello di definire il modo in cui deve essere visualizzata una pagina Web (detta anche una pagina Web (detta anche pagina HTMLpagina HTML), che tipicamente è un documento di ), che tipicamente è un documento di tipo testuale contenente opportuni tipo testuale contenente opportuni tag di HTMLtag di HTML..

Il client, quando riceve una pagina compie le seguenti operazioni:Il client, quando riceve una pagina compie le seguenti operazioni:

interpreta i tag presenti nella pagina;interpreta i tag presenti nella pagina;formatta la pagina di conseguenza, provvedendo automaticamente ad formatta la pagina di conseguenza, provvedendo automaticamente ad adattarla alle condizioni locali (risoluzione dello schermo, dimensione della adattarla alle condizioni locali (risoluzione dello schermo, dimensione della finestra, profondità di colore, ecc.);finestra, profondità di colore, ecc.);mostra la pagina formattata sullo schermo.mostra la pagina formattata sullo schermo.

Nella formattazione si ignorano:Nella formattazione si ignorano:

sequenze multiple di spazi;sequenze multiple di spazi;caratteri di fine riga, tabulazioni, ecc.caratteri di fine riga, tabulazioni, ecc.

I tag HTML possono essere divisi in due categorie:I tag HTML possono essere divisi in due categorie:

tag per la formattazione di testo;tag per la formattazione di testo;tag per altre finalità (inclusione di oggetti,interazione utente,elaborazione tag per altre finalità (inclusione di oggetti,interazione utente,elaborazione locale).locale).

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

HTML: il ruolo HTML: il ruolo

Page 20: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Al crescente successo del Web si è accompagnato un continuo lavoro per Al crescente successo del Web si è accompagnato un continuo lavoro per ampliarne le possibilità di utilizzo e le funzionalità offerte agli utenti.ampliarne le possibilità di utilizzo e le funzionalità offerte agli utenti.In particolare, si è presto sentita l'esigenza di fornire un supporto a una qualche In particolare, si è presto sentita l'esigenza di fornire un supporto a una qualche forma di forma di interattività superioreinterattività superiore a quella offerta dalla navigazione attraverso a quella offerta dalla navigazione attraverso gli gli hyperlinkhyperlink ( (pagine statichepagine statiche), ad esempio per consentire agli utenti di ), ad esempio per consentire agli utenti di consultare una base di dati remota via Web. La pagine Web generate consultare una base di dati remota via Web. La pagine Web generate on-flyon-fly da da questo tipo di interazione si definiscono: questo tipo di interazione si definiscono: pagine dinamichepagine dinamiche..

Le estensioni più rivoluzionarie del Web in tal senso sono state:Le estensioni più rivoluzionarie del Web in tal senso sono state:

introduzione delle introduzione delle formform per l'invio di dati al server Web ed interazione con per l'invio di dati al server Web ed interazione con le le CGI CGI per l’ elaborazione dei dati sul server stesso;per l’ elaborazione dei dati sul server stesso;

introduzione del linguaggio introduzione del linguaggio LiveScriptLiveScript (poi chiamato (poi chiamato JavaScriptJavaScript) per la ) per la definizione di computazioni, eseguite dal client, direttamente associate a definizione di computazioni, eseguite dal client, direttamente associate a una pagina HTML;una pagina HTML;

introduzione del linguaggio introduzione del linguaggio JavaJava per la creazione di file eseguibili, che per la creazione di file eseguibili, che vengono trasmessi dal server al client e poi vengono eseguiti in totale vengono trasmessi dal server al client e poi vengono eseguiti in totale autonomia dal autonomia dal clientclient; indipendentemente dalla piattaforma HW e SW del ; indipendentemente dalla piattaforma HW e SW del sistemasistema

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

HTML: le HTML: le evoluzioni evoluzioni

Page 21: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Il protocollo HTTP sovraintende al dialogo fra un client e un server web: il linguaggio nativo Il protocollo HTTP sovraintende al dialogo fra un client e un server web: il linguaggio nativo del Web.del Web.HTTP non è ancora uno standard ufficiale. Infatti, HTTP 1.0 (HTTP non è ancora uno standard ufficiale. Infatti, HTTP 1.0 (rfc 1945rfc 1945) è ) è informationalinformational, , mentre HTTP 1.1 (mentre HTTP 1.1 (rfc 2068rfc 2068) è ancora in fase di proposta.) è ancora in fase di proposta.

HTTP è un HTTP è un protocollo ASCIIprotocollo ASCII, cioè i messaggi scambiati fra client e server sono costituiti da , cioè i messaggi scambiati fra client e server sono costituiti da sequenze di sequenze di caratteri ASCIIcaratteri ASCII

In questo contesto per In questo contesto per messaggiomessaggio si intende la richiesta del cliente oppure la risposta si intende la richiesta del cliente oppure la risposta del server, intesa come informazione di controllo; viceversa, i dati della URL richiesta del server, intesa come informazione di controllo; viceversa, i dati della URL richiesta che vengono restituiti dal server non sono necessariamente che vengono restituiti dal server non sono necessariamente ASCII ASCII (esempi di dati binari: (esempi di dati binari: immagini, filmati, suoni, codice eseguibile). Utilizzo dello standard immagini, filmati, suoni, codice eseguibile). Utilizzo dello standard MIMEMIME (sviluppato per (sviluppato per la posta elettronica)la posta elettronica)

L’HTTP prevede che ogni singola interazione fra client-server si svolga secondo il seguente L’HTTP prevede che ogni singola interazione fra client-server si svolga secondo il seguente schema:schema:

apertura di una connessione di livello di transporto apertura di una connessione di livello di transporto ((TCPTCP) ) tra client e server tra client e server invio di una singola richiesta da parte del client, che specifica la URL desiderata;invio di una singola richiesta da parte del client, che specifica la URL desiderata; invio di una risposta da parte del server e dei dati di cui alla URL richiesta;invio di una risposta da parte del server e dei dati di cui alla URL richiesta; chiusura della connessione di livello transport.chiusura della connessione di livello transport.

E’ un protocollo di tipo E’ un protocollo di tipo statelessstateless: non è previsto il concetto di : non è previsto il concetto di sessionesessione all'interno della all'interno della quale ci si ricorda dello stato dell'interazione fra client e server. Ogni singola interazione è quale ci si ricorda dello stato dell'interazione fra client e server. Ogni singola interazione è storia a se ed è del tutto indipendente dalle altre.storia a se ed è del tutto indipendente dalle altre.

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Hyper Text Transfer ProtocolHyper Text Transfer Protocol

Page 22: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Il protocollo HTTP è nato con una finalità (lo scambio di informazioni fra gruppi di ricercatori) che si è radicalmente modificata col passare del tempo. Infatti, attualmente (V1.0) il suo utilizzo si è ampliato enormemente e si cerca di sfruttarlo anche per transazioni di tipo commerciale. Questo ha messo alla frusta il protocollo soprattutto da tre punti di vista:Efficienza nell'uso della rete

Il problema di fondo è che il protocollo HTTP prevede che si apra e chiuda una connessione TCP per ogni singola coppia richiesta-risposta. Si deve tenere presente che l'apertura e la chiusura delle connessioni TCP non è banale (three way handshake per l'apertura, idem più timeout per la chiusura); durante l'apertura e la chiusura non c'è controllo di flusso;la dimensione tipica dei dati trasmessi è piccola (pochi KByte);il TCP usa la tecnica dello slow start per il controllo di flusso.Di conseguenza, si ha che il protocollo HTTP impone un grave overhead sulla rete (sono frequentissime le fasi di apertura/chiusura di connessioni TCP); gli utenti hanno la sensazione che le prestazioni siano scarse (per via dello slow start).

Assenza del concetto di sessione

In moltissime situazioni (ad esempio nelle transazioni di tipo commerciale) è necessario ricordare lo stato dell'interazione fra client e server, che si svolge per fasi successive. Questo in HTTP è impossibile, per cui si devono trovare soluzioni ad hoc (ad esempio, restituire pagine HTML dinamiche contenenti un campo HIDDEN che identifica la transazione).In proposito c'è una proposta (State Management, rfc 2109) basata sull'uso dei cookies, cioè particolari file che vengono depositati presso il client e che servono a gestire una sorta di sessione.

Carenza di meccanismi per lo scambio di dati riservatiL'unico meccanismo esistente per il controllo degli accessi (Basic Authentication) fa viaggiare la password dell'utente in chiaro sulla rete.

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

HTTP 1.0: i problemi apertiHTTP 1.0: i problemi aperti

L’ L’ HTTP versione 1.1HTTP versione 1.1 si propone di superare tutti i limiti della vecchia si propone di superare tutti i limiti della vecchia versione !!versione !!

Page 23: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

I I clientclient (o (o user agentsuser agents) sono lo strumento a disposizione dell'utente che gli permette ) sono lo strumento a disposizione dell'utente che gli permette l'accesso e la navigazione nell'ipertesto del Web. Vengono comunemente chiamati l'accesso e la navigazione nell'ipertesto del Web. Vengono comunemente chiamati browserbrowser (sfogliatori): (sfogliatori): NCSA MosaicNCSA Mosaic (il primo); (il primo); Netscape NavigatorNetscape Navigator; ; Microsoft Microsoft Internet ExplorerInternet Explorer..Essi hanno varie competenze:Essi hanno varie competenze:

trasmettere all'opportuno server le richieste di reperimento dati che derivano dalle trasmettere all'opportuno server le richieste di reperimento dati che derivano dalle azioni dell'utente;azioni dell'utente; ricevere dal server le informazioni richieste;ricevere dal server le informazioni richieste; visualizzare il contenuto della pagina Web richiesta dall'utente, gestendo in modo visualizzare il contenuto della pagina Web richiesta dall'utente, gestendo in modo appropriato tutte le tipologie di informazioni in esse contenute;appropriato tutte le tipologie di informazioni in esse contenute; consentire operazioni locali sulle informazioni ricevute (ad esempio salvarle su disco, consentire operazioni locali sulle informazioni ricevute (ad esempio salvarle su disco, stamparle).stamparle).

Di norma i browser gestiscono direttamente solo alcune tipologie di informazioni:Di norma i browser gestiscono direttamente solo alcune tipologie di informazioni:

testo formattato;testo formattato; immagini fisse;immagini fisse; codice eseguibile.codice eseguibile.

Gli altri tipi di informazioni vengono gestiti in uno (o entrambi) dei seguenti modi:Gli altri tipi di informazioni vengono gestiti in uno (o entrambi) dei seguenti modi:

consegnandoli a un programma esterno:consegnandoli a un programma esterno:helperhelper per mezzo di per mezzo di plug-inplug-in, ossia librerie di codice eseguibile e specializzato caricato in , ossia librerie di codice eseguibile e specializzato caricato in memoria secondo le necessità. In questa situazione, se il necessario plug-in è installato, il memoria secondo le necessità. In questa situazione, se il necessario plug-in è installato, il browser provvede a caricarlo e gli affida la gestione delle informazioni da trattare.browser provvede a caricarlo e gli affida la gestione delle informazioni da trattare.

User AgentsUser Agents

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Page 24: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Il server è tipicamente un processo in esecuzione su un elaboratore Il server è tipicamente un processo in esecuzione su un elaboratore (Unix !!).(Unix !!). Esso, di Esso, di norma, è sempre in esecuzione (tranne che in situazioni eccezionali) ed ha delle norma, è sempre in esecuzione (tranne che in situazioni eccezionali) ed ha delle incombenze molto semplici:incombenze molto semplici:

rimanere in ascolto di richieste da parte dei client;rimanere in ascolto di richieste da parte dei client; fare del suo meglio per soddisfare ogni richiesta che arriva:fare del suo meglio per soddisfare ogni richiesta che arriva:

se possibile, consegnare il documento richiesto;se possibile, consegnare il documento richiesto; altrimenti, spedire un messaggio di notifica di errore.altrimenti, spedire un messaggio di notifica di errore.

deve fare il suo lavoro nel modo più efficiente possibile, dunque deve essere deve fare il suo lavoro nel modo più efficiente possibile, dunque deve essere implementato con un occhio di riguardo alle prestazioni;implementato con un occhio di riguardo alle prestazioni; deve essere in grado di gestire molte richieste contemporaneamente, e mentre deve essere in grado di gestire molte richieste contemporaneamente, e mentre fa questo deve continuare a rimanere in ascolto di nuove richieste. Possibili fa questo deve continuare a rimanere in ascolto di nuove richieste. Possibili soluzioni:soluzioni:

clonazione del serverclonazione del server:per ogni nuova richiesta che arriva, il server (che è :per ogni nuova richiesta che arriva, il server (che è sempre in ascolto) crea una nuova copia di se stesso alla quale affida la sempre in ascolto) crea una nuova copia di se stesso alla quale affida la gestione della richiesta;si mette quindi nuovamente in attesa di nuove gestione della richiesta;si mette quindi nuovamente in attesa di nuove richieste; la copia clonata si occupa di soddisfare la richiesta e poi termina.richieste; la copia clonata si occupa di soddisfare la richiesta e poi termina.

server multithreadedserver multithreaded:esiste una sola copia del server, che però è :esiste una sola copia del server, che però è progettato per essere in grado di generare thread multipliprogettato per essere in grado di generare thread multipli

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Server AgentsServer Agents

Page 25: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUModalità di comunicazioni Client-Modalità di comunicazioni Client-ServerServer

Le modalita’ di comunicazione tra un browser ed un server web avvengono Le modalita’ di comunicazione tra un browser ed un server web avvengono in chiaroin chiaro attraverso il protocollo di trasferimento per ipertesti HTTP (Hyper Text Transfer attraverso il protocollo di trasferimento per ipertesti HTTP (Hyper Text Transfer Protocol ). Protocol ).

Questo protocollo lavora per creare, trasferire e gestire dei dati formattati secondo il Questo protocollo lavora per creare, trasferire e gestire dei dati formattati secondo il linguaggio HTML (Hypertext Markup Language) da un sistema ad un altro in maniera linguaggio HTML (Hypertext Markup Language) da un sistema ad un altro in maniera indipendente dal sistema stesso. indipendente dal sistema stesso.

La connessione spesso è La connessione spesso è stabilita dal client prima di ogni richiestastabilita dal client prima di ogni richiesta, e , e chiusa dal server chiusa dal server dopo ogni rispostadopo ogni risposta. .

L'HTTP disciplina i riferimenti attraverso gli URI (Universal Resource Identifier) che L'HTTP disciplina i riferimenti attraverso gli URI (Universal Resource Identifier) che possono essere divisi per locazione URL e per nome URN, indica in tal modo la risorsa a possono essere divisi per locazione URL e per nome URN, indica in tal modo la risorsa a cui applicare il metodo della request.cui applicare il metodo della request.

Le quattro operazioni svolte in sequenza dal protocollo HTTP sono: Le quattro operazioni svolte in sequenza dal protocollo HTTP sono:

•connessione con il server che contiene il documento, connessione con il server che contiene il documento,

•richiesta del documento, richiesta del documento,

•recupero della pagina interessata attraverso la risposta del serverrecupero della pagina interessata attraverso la risposta del server

•chiusura della connessione. chiusura della connessione.

Questo ciclo viene ripetuto per ciascuna pagina richiesta.Questo ciclo viene ripetuto per ciascuna pagina richiesta.

L`HTTP usa la L`HTTP usa la well known port numero 80well known port numero 80 del livello di trasporto del livello di trasporto TCPTCP. .

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Page 26: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Le tecnologie piu` comunemente utilizzate per realizzare una Le tecnologie piu` comunemente utilizzate per realizzare una comunicazione sicura tra il Browser ed il Web Server:comunicazione sicura tra il Browser ed il Web Server:

Le comunicazioni Le comunicazioni SicureSicure

L`L`SSLSSL ( (Secure Socket LayerSecure Socket Layer) ) (documentato in un (documentato in un IETF draftIETF draft nella sua terza nella sua terza revisione) e` stato sviluppato dalla Netscape revisione) e` stato sviluppato dalla Netscape per fornire connessioni sicure nel per fornire connessioni sicure nel trasferimento di dati sensibili. Un trasferimento di dati sensibili. Un trasferimento SSL utilizza una trasferimento SSL utilizza una porta porta TCPTCP dedicata:dedicata:443443. E` necessario quindi specificare . E` necessario quindi specificare nell`URL un metodo differenziato di accesso: nell`URL un metodo differenziato di accesso: STTP. La sicurezza nel trasferimento delle STTP. La sicurezza nel trasferimento delle informazioni e` assicurata da una codifica informazioni e` assicurata da una codifica basata sull`algoritomo RC4 sviluppato dalla basata sull`algoritomo RC4 sviluppato dalla RSA, IncRSA, Inc..

L` L` SHTTP SHTTP ((Secure HTTPSecure HTTP) e` ) e` stato sviluppato dalla stato sviluppato dalla Enterprise Integration Enterprise Integration Technologies (Technologies (EITEIT), ora ), ora VerifoneVerifone, e condivide gli stessi , e condivide gli stessi obiettivi di massima dell`SSL. obiettivi di massima dell`SSL. La codifica a chiave-pubblica La codifica a chiave-pubblica chiave-privata dei dati si basa chiave-privata dei dati si basa sull`algoritmo di sull`algoritmo di RRivest-ivest-SShamir-hamir-AAdlemandleman. Non utilizza . Non utilizza porte proprietarie sul TCP.porte proprietarie sul TCP.

La differenza fondamentale tra i due sta nel fatto che La differenza fondamentale tra i due sta nel fatto che SSL crea una SSL crea una connessione sicura tra client e server sulla quale si puo` poi connessione sicura tra client e server sulla quale si puo` poi trasportare qualsiasitrasportare qualsiasi dato mentre dato mentre l`S-HTTP trasporta i singoli file in l`S-HTTP trasporta i singoli file in modo sicuro, attraverso un meccanismo di certificati di autenticita` modo sicuro, attraverso un meccanismo di certificati di autenticita` puntuali.puntuali.Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie

connesseconnesseWWWWWW Architettura softwareArchitettura software

Page 27: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Server Side ApplicationServer Side ApplicationIn una applicazione Client-Server si dice di programmi che In una applicazione Client-Server si dice di programmi che verranno eseguiti sul Server. Nel mondo del WEB:verranno eseguiti sul Server. Nel mondo del WEB:

• Scripts CGIScripts CGI• Applet Java JSPApplet Java JSP• ASPASP• Script PHPScript PHP

Client Side ApplicationClient Side Application

In una applicazione Client Server si dice di programmi che In una applicazione Client Server si dice di programmi che verranno eseguiti sul Client. Nel mondo del WEB:verranno eseguiti sul Client. Nel mondo del WEB:

• JavaScriptJavaScript• Applet JavaApplet Java

Web ApplicationWeb Application

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Page 28: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

Le tecnologie di integrazione delle Le tecnologie di integrazione delle Web Server Side Web Server Side ApplicationsApplications con i con i DatabaseDatabase permettono agli utenti in permettono agli utenti in rete Internet di accedere semplicemente ad una quantita' rete Internet di accedere semplicemente ad una quantita' enorme di informazioni organizzate in sistemi di gestione di enorme di informazioni organizzate in sistemi di gestione di base di dati. base di dati.

Infatti:Infatti:

La gestione e/o consultazione dei dati e' indipendente dalla La gestione e/o consultazione dei dati e' indipendente dalla dislocazione fisica nella rete delle informazioni. dislocazione fisica nella rete delle informazioni.

Il browser diventa lo strumento per interagire con il Il browser diventa lo strumento per interagire con il database. database.

E’ possibile effettuare: E’ possibile effettuare:

operazioni di amministrazione e gestione del database; operazioni di amministrazione e gestione del database;

operazioni di aggiornamento, convalida e popolamento.operazioni di aggiornamento, convalida e popolamento.

Sistema Web/DatabaseSistema Web/Database

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Page 29: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUServer Side ApplicationsServer Side Applications

CGI (Common Gateway Interface):CGI (Common Gateway Interface): e’ la e’ la tecnologiatecnologia piu’ piu’ standardstandard e piu’ vecchia per e piu’ vecchia per interfacciare un server Web con un programma, scritto in un linguaggio qualunque, che interfacciare un server Web con un programma, scritto in un linguaggio qualunque, che viene eseguito sul server. Attraverso questa interfaccia e’ possibile passare dati dal server viene eseguito sul server. Attraverso questa interfaccia e’ possibile passare dati dal server Web al programma applicativo e viceversa. Il programma quindi puo’ eseguire qualunque Web al programma applicativo e viceversa. Il programma quindi puo’ eseguire qualunque tipo di elaborazione (estrazione di dati da database, manipolazione degli stessi, calcoli, tipo di elaborazione (estrazione di dati da database, manipolazione degli stessi, calcoli, ecc.). Questa tecnologia e’ abbastanza inefficiente e abbastanza poco sicura, quindi viene ecc.). Questa tecnologia e’ abbastanza inefficiente e abbastanza poco sicura, quindi viene utilizzata sempre piu’ di rado.utilizzata sempre piu’ di rado.

ASP (Active Server Pages):ASP (Active Server Pages): e’ una tecnologia sviluppata da e’ una tecnologia sviluppata da MicrosoftMicrosoft e e successivamente adottata anche da altri produttori di server Web (ad es. Netscape). E’ successivamente adottata anche da altri produttori di server Web (ad es. Netscape). E’ basata sul meccanismo di introdurre all’interno di una pagina HTML codice basata sul meccanismo di introdurre all’interno di una pagina HTML codice ActiveXActiveX ( (Visual Visual BasicBasic, , Visual C++, Java, VBScriptVisual C++, Java, VBScript) . ) .

JSP (Java Server Pages):JSP (Java Server Pages): e’ una tecnologia sviluppata da e’ una tecnologia sviluppata da SunSun come alternativa alle ASP. come alternativa alle ASP. Funzionano nello stesso modo, salvo che nelle pagine HTML invece di essere inserito del Funzionano nello stesso modo, salvo che nelle pagine HTML invece di essere inserito del codice SQL viene inserito del codice Java. Attraverso Java e’ possibile effettuare qualunque codice SQL viene inserito del codice Java. Attraverso Java e’ possibile effettuare qualunque elaborazione (estrazione dei dati, successiva manipolazione degli stessi, calcoli, ecc.). Il elaborazione (estrazione dei dati, successiva manipolazione degli stessi, calcoli, ecc.). Il server Web poi costruisce la pagina come integrazione del codice HTML statico e dei server Web poi costruisce la pagina come integrazione del codice HTML statico e dei risultati prodotti dal codice Java. Ovviamente e’ una tecnologia piu’ potente delle ASP.risultati prodotti dal codice Java. Ovviamente e’ una tecnologia piu’ potente delle ASP.

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Page 30: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUPersonal Hypertext Personal Hypertext PrepocessorPrepocessor

Rasmus LerdorfRasmus Lerdorf nel 1994 scritto il nel 1994 scritto il PHP/FIPHP/FI ( (Personal Home Page / Personal Home Page / Form InterpreterForm Interpreter). ).

A seguito del successo riscosso nel popolo della rete, Rasmus scrisse A seguito del successo riscosso nel popolo della rete, Rasmus scrisse una seconda versione che offriva un maggior numero di funzioni ed il una seconda versione che offriva un maggior numero di funzioni ed il supporto per interfacciare il database supporto per interfacciare il database miniSQLminiSQL..

Nel 1997 la costituzione di un team di lavoro porta alla riscrittura Nel 1997 la costituzione di un team di lavoro porta alla riscrittura completa del codice con la versione completa del codice con la versione PHP3PHP3. .

Con la Con la versione 4versione 4 il team di lavoro ha potenziato l'implementazione il team di lavoro ha potenziato l'implementazione dell'impalcatura object-oriented e con il prodotto dell'impalcatura object-oriented e con il prodotto ZENDZEND ( (PHP4PHP4) offre ) offre

un notevole incremento delle prestazioni.un notevole incremento delle prestazioni.

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

WWWWWW Architettura softwareArchitettura software

Disponibile come :Disponibile come :

• modulo del Web modulo del Web serverserver (Su Web Server APACHE su (Su Web Server APACHE su sistemi UNIX)sistemi UNIX)

• script CGI separatoscript CGI separato(Su tutti i Web server in (Su tutti i Web server in ambiente Unix e ambiente Unix e Windows9X/Me/NT/2000)Windows9X/Me/NT/2000)

Page 31: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUNasce la posta elettronicaNasce la posta elettronica

InternetInternet La storia: nascita ed evoluzione delle La storia: nascita ed evoluzione delle tecnologietecnologie

19721972

Ray TomlinsonRay Tomlinson

Marzo 1972Marzo 1972::

Ray TomlinsonRay Tomlinson, BBN, idea la , BBN, idea la messaggistica elettronica messaggistica elettronica ((EEmailmail) e sceglie il simbolo ) e sceglie il simbolo che la implenta '@'che la implenta '@'

"I was lucky. I was writing this code and had to find some character to separate the name from the place. I looked at the keyboard and when you get right down to it, there aren't a lot of options. I thought of the @ sign in

just a few seconds," rayray@@bbn.cobbn.co

mm

Page 32: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUPosta elettronicaPosta elettronica

Concetti Concetti FondamentaliFondamentali

InternetInternet Tecnologia: la modellistica di reteTecnologia: la modellistica di rete

I server che forniscono il servizio di e-mail:I server che forniscono il servizio di e-mail: utilizzano il protocollo SMTP (Simple Mail Transfer Protocol) utilizzano il protocollo SMTP (Simple Mail Transfer Protocol) gestiscono le caselle postali gestiscono le caselle postali gli utenti devono possedere una casella postale su un server di e-mail gli utenti devono possedere una casella postale su un server di e-mail

Meccanismo di funzionamento:Meccanismo di funzionamento: 1. un utente invia la posta in partenza al proprio server (1. un utente invia la posta in partenza al proprio server (SMTPSMTP)) 2. il server la inoltra, via Internet, al server del destinatario 2. il server la inoltra, via Internet, al server del destinatario 3. il server del destinatario la memorizza nella casella postale 3. il server del destinatario la memorizza nella casella postale 4. il destinatario si collega al suo server e scarica la posta in arrivo (4. il destinatario si collega al suo server e scarica la posta in arrivo (POPPOP,,IMAPIMAP,,WebWeb))

SMTPSMTP POP-IMAP-POP-IMAP-(WWW)(WWW)

SMTPSMTP

[email protected]@host1.dominio

[email protected]@host2.dominio

La posta elettronica trasferisceLa posta elettronica trasferisce solo file di testosolo file di testo. . Con l’ausilio di tecnologie di Con l’ausilio di tecnologie di

conversioneconversione ( (mimemime) ) si possono trasportare anchesi possono trasportare anche file binarifile binari

Page 33: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENUBibliografia - SitografiaBibliografia - Sitografia

Il server WEB e le Tecnolgie Il server WEB e le Tecnolgie connesseconnesse

Bibliografia e SitografiaBibliografia e Sitografia

A. Ford :"A. Ford :"Apache Pocket ReferenceApache Pocket Reference"; O'Reilly Associates, HOPS Libri"; O'Reilly Associates, HOPS Libri

K. Jamasa et al.: “K. Jamasa et al.: “Tutto WEB corso completoTutto WEB corso completo”; McGrawHill”; McGrawHill

B. Laurie et al.: “B. Laurie et al.: “Apache la guidaApache la guida”; O’Reilly, Apogeo OpenPress”; O’Reilly, Apogeo OpenPress

A. S. Tanenbaum: “A. S. Tanenbaum: “Reti di ComputersReti di Computers”; Prentice Hall International, Utet ”; Prentice Hall International, Utet LibreriaLibreria

D. Giacomini:”D. Giacomini:”Appunti di informatica liberaAppunti di informatica libera" - 2000" - 2000

Silvano Gai:”Silvano Gai:”Reti LocaliReti Locali”;”;

World Wide Web Consortium home page: World Wide Web Consortium home page: http://www.w3.orghttp://www.w3.org

The APACHE - HTTP Server Project home page: The APACHE - HTTP Server Project home page: http://www.apache.orghttp://www.apache.org

Apache HTTP Server Version 1.3: Apache HTTP Server Version 1.3: http.//httpd.apache.org/http.//httpd.apache.org/

D. Beatrici CNR Polarnet: D. Beatrici CNR Polarnet: http://www.polarnet.cnr.it/CORSIhttp://www.polarnet.cnr.it/CORSI

Page 34: MENU 22 Aprile - 16 Maggio 2002 Servizi Internet : tecnologia (IPv4, Applicazioni Client-Server), servizi di base, implicazioni generali sulla sicurezza.

MENUMENUMENUMENU

LA CONNESSIONE IN RETE LOCALE E LA CONNESSIONE IN RETE LOCALE E GEOGRAFICA (aspetti tecnici e normativi)GEOGRAFICA (aspetti tecnici e normativi) Il server WEB e le tecnolgie Il server WEB e le tecnolgie

connesseconnesse

Docente: Docente: Gaetano Gaetano ChionchioChionchio

System & System & Network Network

AdministratorAdministrator

Assunto nel 1987 come progettista elettronico Assunto nel 1987 come progettista elettronico CADCAD. Dal 1995 si occupa della gestione di sistemi . Dal 1995 si occupa della gestione di sistemi informatici. Presso l’Area di Ricerca di Roma 2 (informatici. Presso l’Area di Ricerca di Roma 2 (Tor Tor VergataVergata) e’ responsabile delle infrastrutture di ) e’ responsabile delle infrastrutture di rete, dei servizi di interoperabilità e dei progetti rete, dei servizi di interoperabilità e dei progetti avanzati di avanzati di CampusCampus per il per il Software ScientificoSoftware Scientifico e e la la Formazione ProfessionaleFormazione Professionale. Riveste la funzione . Riveste la funzione di consulente informatico per l’Ente presso il di consulente informatico per l’Ente presso il consorzio consorzio ParadesParades, l’, l’ASIASI e l’ e l’ISPESLISPESL. E’ membro . E’ membro del comitato scientifico per la formazione nella del comitato scientifico per la formazione nella CIRT.CIRT.

SServizi ervizi IInformatici di nformatici di

CCampusampusPhonePhone +39 06 4993 4039+39 06 4993 4039

FaxFax +39 06 4993 4013+39 06 4993 4013

GSMGSM +39 335 6201134+39 335 6201134

GSMGSM +39 347 2757142+39 347 2757142

EmailEmail [email protected]@src.cnr.it

URLURL http://www.sic.rm.cnr.it/~gaetanohttp://www.sic.rm.cnr.it/~gaetano

Sezione di Roma 2 Tor Sezione di Roma 2 Tor VergataVergata