“Certificato SSL” è l’espressione comune usata per indicare il certificato digitale che un server presenta durante una connessione HTTPS. Tecnicamente, i siti moderni usano TLS, successore del protocollo SSL; il nome storico è rimasto nel linguaggio commerciale. Il certificato lega una chiave pubblica a uno o più nomi di dominio e viene firmato da un’autorità di certificazione riconosciuta dal browser. Durante la connessione, il browser verifica che il nome richiesto sia incluso, che il certificato sia valido nel tempo e che la catena di fiducia sia accettabile. Se i controlli passano, TLS negozia chiavi per cifrare il traffico tra browser e server.
La cifratura protegge la riservatezza e l’integrità dei dati in transito: un osservatore sulla rete non dovrebbe poter leggere o modificare facilmente la comunicazione senza essere rilevato. HTTPS non rende però affidabile in assoluto il sito. Un truffatore può ottenere un certificato valido per il proprio dominio e usarlo per offrire una connessione cifrata a una pagina ingannevole. Il lucchetto nel browser indica che la connessione è protetta secondo i controlli TLS, non che il venditore sia onesto o che il contenuto sia corretto. Gli utenti devono controllare anche il dominio e il contesto.
Tipi e copertura
Un certificato può coprire un singolo nome, più nomi specificati oppure, in determinati casi, un insieme di sottodomini mediante wildcard. La modalità di validazione può verificare il controllo del dominio o, per alcuni certificati, ulteriori informazioni sull’organizzazione. I browser moderni mostrano in modo diverso i livelli di validazione e questi non devono essere confusi con una garanzia commerciale sul sito. La scelta dipende dal numero di host, dalla frequenza di rinnovo, dal modello di gestione delle chiavi e dai requisiti dell’infrastruttura. Certificati wildcard semplificano alcune configurazioni, ma una chiave condivisa può aumentare l’impatto se viene compromessa.
I certificati hanno una data di scadenza e devono essere rinnovati prima che termini la validità. Il rinnovo può essere automatizzato con protocolli e strumenti dedicati, ma occorre monitorare il processo e verificare che il nuovo certificato venga effettivamente installato su tutti i server, proxy e bilanciatori. Un certificato scaduto, non corrispondente al nome richiesto o con catena incompleta provoca avvisi e può impedire l’accesso. La registrazione del certificato nei log Certificate Transparency e il monitoraggio delle nuove emissioni offrono visibilità aggiuntiva, ma non sostituiscono una gestione sicura delle chiavi private.
Configurazione e manutenzione
Il certificato pubblico può essere copiato sui server secondo procedure controllate; la chiave privata associata, invece, deve restare riservata e accessibile soltanto ai componenti che ne hanno bisogno. Proteggerla con permessi adeguati, conservare backup cifrati e ruotarla in caso di sospetta esposizione riduce il rischio. La configurazione TLS dovrebbe usare versioni e suite crittografiche supportate, reindirizzare HTTP a HTTPS quando opportuno e aggiornare ogni riferimento misto nella pagina. La sicurezza dipende anche da applicazione, account, server e contenuti: il certificato è un componente, non un sostituto degli aggiornamenti software o dei controlli di accesso.
Per verificare una configurazione si possono controllare nome, date, catena, algoritmo e risposta di tutti gli host che servono il sito. Va testato anche il rinnovo automatico e la distribuzione su ambienti diversi, senza esporre chiavi nei log o negli archivi pubblici. In sintesi, il certificato SSL/TLS permette al browser di autenticare il server secondo una catena di fiducia e di negoziare una connessione cifrata. HTTPS protegge il trasporto, ma non prova la legittimità commerciale del sito e richiede rinnovo e manutenzione continui.
← Tutto il glossario