HTTPS per tutti

L’utilizzo del protocollo HTTPS permette di proteggere le comunicazioni con i siti web in modo da assicurare la riservatezza e l’integrità dei dati. Le comunicazioni con il sito web sono effettuate utilizzando un canale protetto mediante Transport Layer Security con la codifica dei dati tramite crittografia asimmetrica. Al momento dell’instaurazione del canale di comunicazione viene effettuato uno scambio di certificati in modo da identificare l’identità sel sito web.

I certificati possono essere creati in autonomia tramite pacchetti software specifici oppure rilasciati da una Certificate Authority. In quest’ultimo caso i certificati riportano una firma digitale che viene riconosciuta dai browser web. La navigazione viene quindi effettuata senza particolari segnalazioni da parte del browser. Se i certificati sono creati in autonomia oppure se sono rilasciati da una Certificate Authority non riconosciuta, il browser web visualizza un messaggio per avvisare che la connessione non è affidabile consigliando di allontanarsi dal sito. Risulta quindi consigliabile utilizzare dei certificati rilasciati da una Certificate Authority, però solitamente viene richiesto il pagamento di un canone periodico.

Nel 2014 è stata fondata da Internet Security Research Group (ISRG) una nuova Certificate Authority di nome Let’s Encrypt. Si tratta di una Certificate Authority totalmente automatizzata che permette la generazione e l’installazione dei certificati in modo semplice e veloce. Al momento il software client, definito “agente“, è compatibile con le distribuzioni Debian basate sul web server Apache e viene installato tramite git. Tramite questo agente è possibile dialogare con la CA per l’identificazione del proprio server, quindi per effettuare il rilascio, il rinnovo e la revoca dei certificati. L’identificazione avviene tramite una vera e propria “sfida”, dove la CA fornisce alcuni dati che l’agente deve crittografare e salvare in una certa cartella del sito web. La CA andrà a scaricare il file con i dati crittografati in modo da verificare che l’agente sia effettivamente in funzione sul server. Dopo l’identificazione del server l’agente è abilitato alla gestione dei certificati. Può inoltre effettuare in modo automatico la configurazione del server Apache per l’utilizzo dei certificati.

I certificati rilsciti da Let’s Encrypt sono gratuiti e riconosciuti dai browser web più diffusi.

Per utilizzare i certificati con altri servizi come email, imap e ftps è necessario procedere manualmente alla configurazione dei relativi software.