Geekissimo

Come ottenere un certificato digitale SSL e rendere sicuro il proprio sito web

 
Marco Mornati
2 Settembre 2008
11 commenti

Con questa piccola guida vogliamo fare un po’ di chiarezza su quello che sono i server certificati e come poter certificare il proprio.
Navigando, infatti, capita spesso (senza che ce ne accorgiamo in realtà) che la nostra comunicazione con un particolare server venga cifrata, si passi cioè in automatico da una connessione e comunicazione su HTTP ad una su Secure HTTP. HTTPS è sostanzialmente identico al protocollo HTTP con un livello di certificazione/cifratura dei messaggi scambiati fra client e server (attraverso il protocollo SSL), quindi fra noi e il server con cui stiamo parlando.

Immaginiamo per esempio di accedere al server della nostra banca per effettuare un bonifico, o su un sito di E-Commerce per comprare un articolo, se la comunicazione non fosse messa in sicurezza, un qualsiasi utente della rete sarebbe in grado di “sniffare” il nostro traffico e leggere tutti i pacchetti che noi stiamo scambiando con uno di questi due server. In tali pacchetti sarà ovviamente contenuto anche il codice di accesso al sito web della nostra banca e i dati (TUTTI) della nostra carta di credito (per informazioni al riguardo leggere su Wikipedia Man in the middle
Non è pensabile quindi, in casi come questo, comunicare in chiaro con il server (e soprattutto non dovete fidarvi troppo di siti che vi chiedono il codice della carta di credito e non hanno un minimo livello di sicurezza).


Cosa succede davvero fra client e server in questi casi?
Innanzitutto il gestore del server, per poter “spostare” la comunicazione su HTTPS, deve creare un certificato, qualcosa che cioè possa appurare l’identità di una persona ed associarvi una chiave di cifratura. Ottenuto il certificato (vedremo poi nel dettaglio come fare) lo dovrà installare sul proprio server (o chiedere che il gestore lo faccia per lui). Da questo momento in poi tutto avverrà nell’assoluta segretezza.

Quando voi andrete a ri-interrogare il “sito web” il browser si accorgerà della presenza del certificato e saprà che dovrà andare a comunicare con il server su una connessione sicura (un po’ come una spia, per non farsi intercettare) utilizzando la chiave fornita. Prima di fare questo però contatterà (in automatico ovviamente) “un tizio” che gli confermerà se il certificato ricevuto è autentico o meno. L’alternativa, che però rende ancora vulnerabili ad un attacco, è una cifratura mediante chiave pubblica. Il server con cui vogliamo comunicare ci inviarà direttamente la chiave per cifrare i messaggi. E’ però evidente che se qualcuno fosse in ascolto e carpisse la chiave inviata, sarebbe comunque in grado di decifrare la nostra comunicazione.

Supponiamo che la nostra chiave sia stata confermata e sottoscritta anche dal “tizio” di cui sopra. Se il browser non riuscisse ad ottenere una conferma per il certificato, presenterà un messaggio d’errore: “non riesco a trovare l’identità di questo tipo”; sarà poi l’utente a dover decidere se proseguire con la navigazione su quel sito, oppure abbandonarlo.

Il “tizio” di cui parlo sopra si chiama in realtà “Certification Authority” ed è l’ente preposto a garantire la sicurezza di tale certificato; lo rilascerà seguendo uno standard ben definito contenente tutte le informazioni necessarie per far capire (all’utente soprattutto) chi siete e cosa fate. Il vostro browser, se andate a controllare nelle impostazioni, contiene già per default una lista di Certification Authorities “fidate” che contatterà ogni qualvolta ve ne sarà bisogno; potrete andare a cambiare tale lista aggiungendo o rimuovendo server, perchè la cosa rimanga sicura dovete però sapere con precisione cosa e chi sta andando ad aggiungere.

Come fare per rendere sicuro il vostro sito web?
Innanzitutto valutate se ne avete davvero la necessità. Se siete gli amministratori di un blog, probabilmente non ha senso aggiungere qualcosa che certifichi che il blog sia davvero il vostro… sarebbe certo una cosa Geekkosa ma l’utilità è dubbia.
Se ad ogni modo (se proprio volete un blog certificato fatelo) ritenete di aver bisogno che di un sito web messo in sicurezza, allora i passi da seguire sono (abbastanza) semplici.

Innanzitutto, come la maggior parte delle persone che dispongono di un sito web, lo hanno acquistato come Hosting presso qualche società (non facciamo pubblicità per dare esempi, ma credo che tutti sappiati di chi e cosa stiamo parlando). In questo caso, essendo solo un servizio di Hosting, non avrete accesso diretto alla vostra macchina (che è peraltro condivisa con altri migliaia di utenti) e quindi non sarete in grado di installare autonomamente il certificato. La sola cosa che potete fare è rivolgervi al vostro “Oste” (in italiano mi piace di più) e chiedere di poter aggiungere una certificazione al vostro sito. Saranno poi loro a contattare la Certfication Authority e, fornendo tutti i vostri dati, “acquistare” un certificato da aggiungere al vostro sito.
Guardando in giro ho visto che adesso, tutti i principali fornitori di servizi Hosting, offrono la certificazione del proprio sito per pochi euro al mese/anno, a seconda del contratto che avete fatto (gli americani preferiscono prezzi mensili, noi italiani prediligiamo il prezzo annuo).

Se invece siete un po’ più “ricchi” (quanto meno in dotazione hardware) e quindi disponete di un vostro server personale sul quale ci fate tutto quello che vi garba, avrete, quasi certamente, sottoscritto un servizio di Housing: vi do il mio server, voi me lo alimentate e connettete in rete. Ovviamente se siete ancora più “ricchi” (anche di soldi) è possibile che il vostro server lo abbiate direttamente voi in casa.
Quello che bisogna fare in questi casi è generarsi la coppia di chiavi pubbliche da portare alla Certification Authority perchè faccia il suo lavoro (le certifichi). Verrà quindi generato, dopo le opportune verifiche, un certificato che verrà firmato dall’Authority stessa (che lo aggiungerà anche alla lista dei riconosciuti sui propri server) e vi verrà inviato per poter essere installato sul vostro server.

E’ anche possibile farsi tutto in casa: generare la chiave, generare il certificato ed installarlo. Quello che manca in questo caso è che nessuno potrà dire all’utente che siete una persona fidata. Verrà mostrato un messaggio di warning e sarà l’utente a dover decidere se il sito web è sicuro o no, cosa che è ovviamente innaturale: come può sapere l’utente (un nostro cliente per esempio) se il mio sito web è sicuro?

Se tutti i server dove vengono fatti transazioni monetarie fossero muniti di tale sistema di certificazione (ormai sembra che si siano tutti adeguati, per fortuna) e noi utenti fossimo un po’ più accorti (ahimè non è quasi mai così), sarebbe impossibile subire i raggiri che sono stati sulle prime pagine dei giornali in questi anni. Per esempio la pagina di accesso al sito delle Poste (per citarne uno) che era stata modificata ed ospitata in realtà su un altro server. Se tutto fosse stato fatto a dovere l’utente avrebbe saputo che si stava abbandonando una connessione sicura (lasciatelo quel messaggio per quanto snervante… serve appunto a questo) e soprattutto si sarebbe dovuto chiedere: “perchè mi stanno chiedendo i miei dati di accesso con un normale protocollo HTTP?”.
E’ vero che è impossibile tenere sempre tutto sottocontrollo durante la normale navigazione in rete, cerchiamo però di farlo almeno quando prendiamo in mano la nostra carta di credito o quando accediamo alla nostra banca.

Potrebbe interessarti anche
Articoli Correlati
Hotmail aggiunge la connessione https

Hotmail aggiunge la connessione https

Certo, ormai lo sappiamo tutti, se c’è una cosa che ultimamente è sempre più discussa, è sicuramente la sicurezza sul web. Alcuni giorni fa vi abbiamo dimostrato come sia semplice […]

5 indispensabili addon per la sicurezza sviluppati per Chrome, Firefox e Internet Explorer

5 indispensabili addon per la sicurezza sviluppati per Chrome, Firefox e Internet Explorer

Al giorno d’oggi, si sa, la sicurezza non è mai troppa, specialmente quando si parla di navigazione online. Scegliere un browser leggero, veloce e sicuro, evitando di usare software obsoleti […]

Come essere sicuri quando si utilizzano PC e connessioni Wi-Fi pubbliche

Come essere sicuri quando si utilizzano PC e connessioni Wi-Fi pubbliche

Quasi ogni geek, almeno una volta nella vita, ha a che fare con dei computer pubblici che molte volte si appoggiano su reti Wi-Fi pubbliche. Una situazione del genere può […]

Come scoprire se qualcuno accede senza permesso alla nostra casella di posta elettronica

Come scoprire se qualcuno accede senza permesso alla nostra casella di posta elettronica

Con gli attuali, immensi, ottimi servizi come Gmail, le nostre caselle di posta elettronica sono diventate ancora più preziose rispetto a quanto non lo fossero già qualche anno fa. Infatti […]

Process Library: come fare una scansione manuale del task manager e scoprire eventuali file dannosi

Process Library: come fare una scansione manuale del task manager e scoprire eventuali file dannosi

Quasi ognuno di noi, nella sua vita di utilizzatore di computer con sistema Windows, si è ritrovato almeno una volta di fronte al task manager (o “gestione attività” in Vista) […]

Lista Commenti
Aggiungi il tuo commento

Fai Login oppure Iscriviti: è gratis e bastano pochi secondi.

Nome*
E-mail**
Sito Web
* richiesto
** richiesta, ma non sarà pubblicata
Commento

  • #1lorenzo

    consiglio http://www.cacert.org
    non è ancora installato di default su firefox ma ci stanno lavorando

    2 Set 2008, 5:18 pm Rispondi|Quota
  • #2Salvatore

    Wow Marco veramente complimenti, ogni giorno sforni articoli sempre più interessanti O.O

    2 Set 2008, 8:53 pm Rispondi|Quota
  • #3Roberto Rubellini

    quoto salvatore… complimenti!

    2 Set 2008, 9:20 pm Rispondi|Quota
  • #4Tom

    Complimenti Marco, finalmente uno che scrive cose originali.

    2 Set 2008, 9:33 pm Rispondi|Quota
  • #5Riccardo Messina

    Articolo interessante, ma un pò lungo…!

    2 Set 2008, 10:17 pm Rispondi|Quota
  • #6fabrizio

    I miei più sinceri complimenti… che articolo!
    Fabrizio.

    2 Set 2008, 11:17 pm Rispondi|Quota
  • #7Marco Mornati

    @ Tutti:
    Grazie 1000 per i complimenti. Ad onor del vero devo però dire che l’idea dell’articolo è venuta a Shor… io l’ho “solo” scritto! 😛

    @ Riccardo Messina:
    E’ vero, a volte sono un po’ prolisso 🙂 Dire semplicemente “devi fare così e così, perchè questa è la sola strada” sarebbe conciso, ma lascerebbe un po’ di amaro in bocca. La domanda che frullerebbe a tutti in testa sarebbe: “Ma peccchè?” 🙂

    3 Set 2008, 7:02 am Rispondi|Quota
  • #8Shor

    @ Marco Mornati:
    Si ma io ti ho solo dato l’input, tu sei riuscito a scrivere perfettamente l’articolo come me lo immaginavo in testa, quindi complimenti anche da parte mia 😉

    3 Set 2008, 11:15 am Rispondi|Quota
  • #9Marco Mornati

    @ Shor:
    Ah beh… se i complimenti te li fa il “capo”… allora non si può più dire niente! 🙂

    3 Set 2008, 11:50 am Rispondi|Quota
  • #10Wall-e

    Bravo, molto utile!

    19 Gen 2012, 12:53 pm Rispondi|Quota
  • #11sicurezzadigitale

    Oltre a CaCert, segnalato dall’utente qui sotto, cito un fornitore di certificati SSL emessi da CA riconosciute dai browser di navigazione (GeoTrust, RapidSSL, VeriSign, Symantec, ecc.): http://www.trustico.it

    19 Nov 2012, 3:51 pm Rispondi|Quota