Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

45
Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli

Transcript of Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Page 1: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Setup di un Sito Web su Https

Seminario a cura di

Daniele Urbanelli

Page 2: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Setup di un Sito Web su Https

Scenari Utilizzo. Https, cosa significa? Certificati digitali CA – Certification Authority PKI – Public Key Infrastructure Dalla teoria alla Pratica IIS – Internet Information Services

Installazione certificato

Page 3: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Scenari Utilizzo

Le trasmissioni dati nella maggior parte dei siti internet che usiamo avvengono in chiaro. Se si tratta di informazioni di dominio pubblico come quelle fornite da quotidiani nazionali(es. www.repubblica.it) o siti informativi di vario genere non esistono problemi di intercettazione dello flusso dati scambiato.

Page 4: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Scenari Utilizzo

Connessione in chiaro attraverso Internet

Page 5: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

In questo caso avviene una comunicazione in chiaro delle informazioni tra il client e il server Web. Da una parte abbiamo una “Request” e dall’altra una “Response” contenete le informazioni richieste.

Scenari Utilizzo

Page 6: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Scenari Utilizzo

E’ chiaro che in caso di comunicazioni riservate che transitano nel web il modello precedente non è affidabile ed espone a pericolosi furti di dati personali. Esempio

Home Banking Siti di E-Commerce GMail

Page 7: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Scenari Utilizzo

In questo caso è necessaria una comunicazione di questo tipo:

Page 8: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Https, cosa significa?

Hypertext Transfer Protocol over Secure Socket Layer

Page 9: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Https, cosa significa?

E’ una evoluzione del protocollo HTTP che in modo del tutto trasparente all’utente fa uso del protocollo crittografico TSL-Transport Layer Security(post SSL).

HTTP(App. 7) + TLS/SSL(Trasp. 4) = HTTPS

Page 10: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Https, cosa significa?

Https è una integrazione di tecniche di cifratura a chiave pubblica e privata che consente uno scambio di informazioni sicure tra due soggetti che comunicano attraverso una rete non sicura(internet) delle informazioni importanti.

Page 11: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Certificati digitali

Un certificato digitale è un documento che attesta, con una firma digitale,

l’associazione tra una chiave pubblica e l’identità di un soggetto.

Ciò consente di verificare la reale appartenenza di una chiave pubblica con

un soggetto e dunque instaurare una comunicazione sicura.

Page 12: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Certificati digitali

Un certificato digitale include: Chiave pubblica del soggetto certificato Dati identificativi del soggetto/società Periodo di validità URL della CRL(Certification Rev. List) Firma della CA- Certification Authority

Page 13: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Certificati digitali (Firma digitale)

Page 14: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Certificati digitali (Firma digitale)

Firma digitale della CA(come tutte le firme digitali) garantisce:

che il destinatario possa verificare l'identità del mittente (autenticità);

che il mittente non possa disconoscere un documento da lui firmato (non ripudio);

che il destinatario non possa inventarsi o modificare un documento firmato da qualcun altro (integrità).

Page 15: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Certificati digitali (Firma digitale)

Page 16: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Certificati digitali (Standard X509)

In crittografia, X509 è uno standard per le Infrastrutture a Chiave Pubblica(PKI). X509 definisce lo standard per i certificati a chiave pubblica.

L’estensione più comune di un certificato X509 è *.cer

Page 17: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Certificati digitali (Standard X509)

Versione Numero seriale ID dell'algoritmo Ente emettitore Validità

Non prima Non dopo

Soggetto Informazioni sulla chiave pubblica del soggetto

Algoritmo per l'utilizzo della chiave pubblica Chiave pubblica

Codice identificativo univoco dell'emittente (facoltativo)

Codice identificativo univoco del soggetto (facoltativo)

Estensioni (facoltativo) ...

Algoritmo di firma del certificato Firma del certificato

Page 18: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

CA – Certification Authority

Una Certification Authority (CA), letteralmente Autorità Certificativa, è un ente di terza parte (trusted third party), pubblico o privato, abilitato a rilasciare un certificato digitale tramite procedura di certificazione che segue standard internazionali e conforme alla normativa europea e nazionale in materia.

Page 19: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

CA – Certification Authority

Procedura di certificazione: Generazione delle chiavi Privata/Pubblica Autenticazione al Registration Authority Consegna della propria chiave pubblica RA verifica i dati del richiedente La CA rilascia il certificato digitale

Page 20: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Public Key InfrastructureInfrastruttura chiave pubblica

PKI è una serie di accordi che consentono a terze parti fidate di verificare e/o farsi garanti dell'identità di un utente, oltre che di associare una chiave pubblica a un utente.

Page 21: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Public Key InfrastructureInfrastruttura chiave pubblica

Le PKY sono cosi organizzate una policy di sicurezza che fissa i principi generali. un certificate practise statement (CPS), ossia il

documento in cui è illustrata la procedura per l’emissione, registrazione, sospensione e revoca del certificato;

un sistema di certification authority (CA); un sistema di registration authority (RA), ovvero il

sistema di registrazione e autenticazione degli utenti che domandano il certificato.

un certificate server.

Page 22: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla PraticaChiediamo il nostro certificato

Ecco una lista delle CA più note:

http://www.verisign.it

http://www.thawte.com

http://www.globalsign.com

Scegliamone una e seguiamo la procedura di richiesta di un certificato digitale.

Page 23: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla PraticaChiediamo il nostro certificato

Page 24: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla PraticaCSR - Certificate Signing Request

Page 25: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica CSR - Certificate Signing Request

Ad un certo punto della richiesta di certificato è necessario inserire il nostro CSR – Certificate Signing Request

Un CSR (Certificate Signing Request) è un file di testo criptato che viene utilizzato per la creazione e l'assegnazione di un certificato SSL. In questo file sono contenute tutte le informazioni che le Autorità di Certificazione (CA) utilizzano per creare il certificato SSL vero e proprio, per tanto è obbligatorio allegare un CSR ad ogni richiesta di certificato SSL.

Page 26: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica CSR - Certificate Signing Request

ESEMPIO DI CSR

-----BEGIN CERTIFICATE REQUEST-----MIIBzDCCATUCAQAwgYsxHDAaBgNVBAMTE3d3dy50aGlzaXNhdGVzdC5jb20xCzABgNVBAYTAlpBMRkwFwYDVQQIExBXZXN0ZXJuIFByb3ZpbmNlMRIwEAYDVQQHEwlDbG0NdYrNix4QIDAiB3SGU94iB3SGU94bG0NdYrNix4QIDAQABoAAbG0NdYrNix4QIDAQABoAAbG0NdYrNix4QIDAQABoAAbG0NdYrNix4QIDAYXBlIFRvd24xEjAQBgNVBAoTCVRlc3QgQ29ycDEbMBkGA1UECxMSVGVzdGluZyiB3SGU94ZXBhcnRtZW50MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDVzfmv7vJ9iB3SGU94dxMLlgtDIEFz7MWsOUoZOPTq3qsTTXPW61q01jY8eQfs96I5xPjxALPeT4m74cce UtYxldG7pLJiB3SGU94yvyvHDiyV+6mV/e++KWT2ql0Jv1emmobmAGdUxdx2pW9C Epr0DmcVny6VGWAI36bG0NdYrNix4QIDAQABoAAwDQYJKoZIhvcNAQEEBQADgA fSHgDr9Vc460YG+lAiWuVWEife8B4QOojiV8oUxJJDqbA2CEEmXLWfa7/mfUtd5 EQd6voLDT8axpXPbOrmwa3kzEZvQZhg+QvKEyIfncqdWbDUk71tO0fVafBKwRQfE 73J/THmVABZuz9T6X3+KWGxGDiYw0sY3bE7OjBCwr14=-----END CERTIFICATE REQUEST-----

Page 27: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica CSR - Certificate Signing Request

Il CSR è codificato mediante lo standard PKCS (Public-Key Cryptography Standards). Questo è uno standard definito dai laboratori della RSA. Nel nostro caso genereremo il CSR secondo le specifiche PKCS #10, Ossia lo standard per la sintassi delle richieste di certificazione

Page 28: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Generazione CSR

Page 29: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Generazione CSR

Page 30: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Generazione CSR

Page 31: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Generazione CSR

Page 32: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Generazione CSR

Page 33: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Generazione CSR

Page 34: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Generazione CSR

Page 35: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Generazione CSR

Page 36: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Generazione CSR

Page 37: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Generazione CSR

Page 38: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Installazione certificato

Page 39: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Installazione certificato

Page 40: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Installazione certificato

Page 41: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Installazione certificato

Page 42: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Installazione certificato

A questo punto la nostra applicazione sarà una applicazione sicura.

E come possiamo notare l’indirizzo web del nostro web server ora è disponibile in https.

Page 43: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Configurazione Firewall

Page 44: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Dalla teoria alla Pratica IIS – Configurazione Firewall-Router

Page 45: Setup di un Sito Web su Https Seminario a cura di Daniele Urbanelli.

Grazie per l’attenzione