Tips & Tricks: Verifica della Catena di Certificati SSL/TLS con OpenSSL

Tips & Tricks: Verifica della Catena di Certificati SSL/TLS con OpenSSL

1024 683 NM Professionals

Tips & Tricks: Verifica della Catena di Certificati SSL/TLS con OpenSSL

Cos’è la catena di certificati

La catena di certificati è un elenco ordinato di certificati, comprendente un certificato SSL/TLS e certificati di autorità di certificazione (CA), che consente al destinatario di verificare che il mittente e tutte le CA, che hanno rilasciato quei certificati siano affidabili.
La catena, o percorso, inizia con il certificato SSL/TLS e ogni certificato della catena è firmato dall’entità identificata dal certificato successivo nella catena.

La catena di certificati che riferisce al nostro certificato TLS/SSL è il modo in cui è collegato a un’Autorità di Certificazione. Affinché un certificato TLS sia considerato attendibile, deve essere riconducibile, tramite relazione di fiducia, alla CA che lo ha firmato, il che presuppone che tutti i certificati della catena (server, intermedi e root) siano attendibili.

Comprendere i certificati root e i certificati intermedi

Certificato root.
  • Un certificato root è un certificato digitale che appartiene all’Autorità di Certificazione (CA) emittente. È preinstallato nella maggior parte dei browser e viene memorizzato in un archivio denominato “trust store”. I certificati root devono essere custoditi con la massima cura dalle CA.
Certificato intermedio.
  • I certificati intermedi discendono (gerarchicamente)  dai certificati root come i rami degli alberi. Fungono da intermediari tra i certificati root (mantenuti riservati e protetti) e i certificati leaf (foglia) rilasciati al pubblico; è quindi molto frequente che nella catena si presente almeno un certificato intermedio e talvolta più di uno.
  • Il certificato leaf (la parte terminale della catena) è quello rilasciato al soggetto specifico per il quale si necessita di copertura (server web, un utente o un dispositivo).

Come funzionano le catene di certificati?

Quando viene fatta richiesta per ottenere un certificato TLS alle autority riconosciute (es. letsencrypt, cloudflare, zerossl, etc) ci viene inviato il nostro certificato insieme a uno o più certificati intermedi.

Negli strumenti che fanno uso di crittografia TLS (browser, server di posta, vpn, etc), il meccanismo di verifica è implicito.

Facendo un semplice esempio, quando si naviga, il browser scarica il certificato TLS del sito web visitato iniziando a tracciare la catena di certificati fino al certificato intermedio installato sul web server che espone la pagina visitata. Se il certificato (leaf) sarà considerato valido e può essere collegato a un certificato intermedio attendibile, tutta la catena sarà considerata attendibile altrimenti, il browser mostrerà un avviso di certificato non attendibile.

Di seguito sono indicati acuni comandi di esempio, utilizzabili da tutti i sistemi operativi con OpenSSL installato (per l’installazione su Windows puoi guardare qui).

Esempio di verifica della catena di certificati per un web server

echo Q | openssl s_client -showcerts -connect 51.178.55.25:443 -servername www.nicolamontemurro.com

Esempio di verifica della catena di certificati per un mail server

echo Q | openssl s_client -starttls smtp -showcerts -connect 51.178.55.25:25 -servername smtp1.services.solutiontech.it

NOTA: l’argomento starttls accetta le seguenti opzioni: smtp, pop3, imap, ftp, xmpp, xmpp-server, irc, postgres, mysql, lmtp, nntp, sieve, ldap.

Per la documentazione openssl s_client puoi fare riferimento al sito ufficiale qui.

    Preferenze Privacy

    Quando visiti il nostro sito web, possono essere memorizzate alcune informazioni, di servizi specifici, tramite il tuo browser, di solito sotto forma di cookie. Qui puoi modificare le tue preferenze sulla privacy. Il blocco di alcuni cookie può influire sulla tua esperienza sul nostro sito Web e sui servizi che offriamo.

    Questo sito web utilizza cookie, principalmente di terze parti. Personalizza le preferenze sulla privacy e/o acconsenti all'utilizzo dei cookie.