No results found
di Alessandro Davanzo
Il sistema di certificazione SSL è molto utilizzato da anni nell’autenticazione di siti web e in generale nella sicurezza delle connessioni di rete, sia essa locale, WAN o Internet.
In questo tutorial spiegheremo che cosa sono, quali tipi esistono, come si possono ottenere e in che modo si installano nel sistema che richiede la certificazione e vuole essere identificato come sicuro dal client che vi si connette.
Iniziamo spiegando che il certificato SSL non è una cosa unica, perché esistono sostanzialmente tre tipi di certificato SSL:
Si tratta di un certificato semplice che convalida solo il dominio mediante approvazione di una e-mail appositamente inviata a una casella di posta elettronica sul dominio stesso. Questo tipo di certificato viene rilasciato solitamente nel giro di 30 min.
L’e-mail di conferma del certificato viene inviata da un indirizzo che potete scegliere tra 4 o 5 indirizzi prestabiliti dall’Authority, che sono admin, administrator, postmaster, web master e hotmaster, con @dominio, dove dominio è il dominio che intendete autenticare, quindi se il dominio è coretech.it, potete scegliere qualcosa come admin@coretech.it.
Quando arriva l’e-mail cliccate il link che contiene, cliccate verifica e da lì viene generato il certificato, il qual arriverà ad un’altra casella di posta elettronica che potrete specificare a piacimento. Tale e-mail conterrà il link per andarvi a scaricare il certificato.
Quando viene attivato un certificato SSL durante una connessione, si presenta nel browser la situazione mostrata nell’immagine seguente, dove il lucchetto indica che il sito è protetto dal certificato.
Del certificato Domain Validation esistono in realtà tre varianti, che sono:
Quella analizzata sinora è la DV per singolo dominio e valida semplicemente il nome host specificato all’atto della richiesta.
Il DV wildcard si utilizza invece per installarlo su vari dispositivi e su vari servizi a patto che lo supportino e ci serve per validare tutto il nostro dominio; infatti la richiesta del certificato *.coretech.it, per esempio, riguarda tutto quello che c’è prima di coretech.it: ad esempio shop.coretech.it, mail.coretech.it ecc. Va osservato che richiedendo un certificato per un nome dominio non preceduto da www. esso vale solo per il nome dominio com’è stato scritto nella richiesta: ad esempio se lo richiediamo per www.coretech.it vale anche per coretech.it, mentre se lo richiediamo per shop.coretech.it o coretech.it vale solo per essi.
Insomma, il DV wildcard è un certificato che si richiede una volta sola per certificare più domini la cui certificazione richiederebbe di effettuare la richiesta di DV per singolo dominio tante volte quanti sono i domini.
Notate che certi sistemi non accettano il wildcard perché lo ritengono poco sicuro.
Anche se i sistemi magari sono diversi, kerio control, apache, iis, kerio connect, kerio operator, invece che acquistare per ognuno di questi nome un certificato singolo, possiamo acquistare il wildcard ovvero un certificato *.coretech.it da andare ad installare sui vari siti.
Dovremmo scegliere quindi un sistema dal quale fare la richiesta di questo certificato, nel nome host del certificato scriveremo *.coretech.it e una volta poi ricevuto il certificato ed installato su questo sistema potremo esportarlo ed importarlo sui vari sistemi.
Vediamo, infine, il certificato multidominio: si tratta di un certificato che si può acquistare includendo più nomi di domini diversi o più nomi host dello stesso dominio. Quando si acquistano i certificati richiesti, il termine che viene usato nel certificato per definire il nome del dominio è SAN: la SAN entry è il nome del dominio cui si vuole assegnare il certificato.
Quindi ci sono certificati da 4, 6, 10 SAN e così via.
Il motivo per cui si sceglie di richiedere un certificato multidominio non è economico, perché magari si risparmia a comperarne uno unico per più domini, ma non è questo il punto:
il DV multidominio è un certificato che si compra quando sui sistemi dove si va ad installare non è supportato più di un certificato, quindi, ad esempio IIS7, che non supporta più certificati.
Ogni volta che si fa una modifica a questo tipo di certificato aggiungendo o modificando un nome SAN viene mandata la mail di convalida a tutti i domini.
La richiesta di questo certificato si fa per il dominio primario e si inseriscono poi gli altri .
Si tratta di un certificato SSL che convalida l’organizzazione (cui appartiene il dominio) che lo richiede e i suoi servizi web, invece che il dominio; resta comunque necessario, nella richiesta, specificare il dominio cui appartiene l’organizzazione che lo richiede.
Per poterlo avere è necessario inviare tutta una serie di documenti all’authority sull’organizzazione compresi i documenti di riconoscimenti del Rappresentate e per ottenerne il rilascio sono richiesti diversi giorni, in quanto l’organismo certificatore dovrà effettuare tutta una serie di controlli per accertare chi è l’organizzazione e se possiede i requisiti per ottenere un certificato SSL.
Quando, durante una connessione Internet, si attiva un certificato SSL del genere, la situazione nel browser appare come nell’immagine seguente.
Quindi vedrete sempre https e il lucchettino che valida il certificato, ma la differenza si palesa nel momento in cui cliccate sul lucchetto per andare a vedere le informazioni del certificato: mentre in uno troverete che il certificato è rilasciato per www.nomedominio.it, nell'altro troverete un certificato rilasciato ad un’azienda, ossia al nome dell’organizzazione e questo per il visitatore è una garanzia in più perché conosce il nome dell’azienda che sta dietro al sito e può verificarne l’affidabilità.
Dunque l’Organization Validation costa di più ma svela il nome dell’organizzazione che l’ha richiesto.
È uguale al certificato Organization Validation, quindi la procedura di richiesta, i documenti da produrre e i tempi di ottenimento, sono analoghi. La differenza con l’OV è che in questo caso abbiamo in più la barra verde con il nome dell’azienda che appare nel browser, come mostrato nell’immagine seguente.
Nella barra verde che appare quando si va sul sito, oltre all’indirizzo appare il nome dell'azienda che ha rilasciato il certificato di sicurezza.
Il certificato DV offre un ulteriore livello di sicurezza rispetto all’OV e quindi costa più di quest’ultimo.
Per richiedere un certificato SSL bisogna creare una richiesta standardizzata che deve poi essere inoltrata all’Authority che rilascerà il certificato. Ci sono vari software specifici per creare queste richieste e inoltrarle; le richieste dei certificati sono praticamente tutte uguali e quello che dobbiamo andare a compilare e che ci viene richiesto è il nome host cui associarlo, la società, l’unità organizzativa, la città di domicilio e lo Stato dove si trova. Il tutto si scrive compilando i campi di una finestra di dialogo come quella mostrata qui di seguito, che è quella di un sistema di richiesta della Kerio.
Compilato il tutto, facendo clic sul pulsante OK si procede.
Un secondo sistema è quello relativo alla finestra di dialogo dell’immagine seguente, dove introduciamo tutti i dati che occorrono.
Se i dati sono corretti, facendo clic sul pulsante Generate viene creato il certificato SSL richiesto, ovvero la richiesta di emissione viene inviata al servizio di certificazione. Notate che il Key Size 2048 è lo standard di questo momento, quindi viene suggerito dal software di creazione del certificato SSL.
Nell’esempio di sinistra, che corrisponde a un sistema Kerio, così come per altri sistemi come IIS o altri che vi danno il form incorporato, dando l’OK (o cliccando su Generate) vi viene generato tutto in automatico e ricompare nell'interfaccia web il nome della richiesta del certificato; facendo clic col pulsante destro scegliete Scarica richiesta il sistema vi scarica il file CSR, che è quello che poi va inviato all’Authority.
In altri sistemi tipo quelli su Linux, su Apache eccetera, che non hanno l’interfaccia grafica tipo quella mostrata nell’immagine a sinistra, dovete generare questo script:
openssl req -new -newkey rsa:2048 -nodes -out www_coretech_it.csr -keyout www_coretech_it.key -subj "/C=IT/ST=MI/L=Milano/O=CoreTech S.r.l./OU=IT/CN=www.coretech.it"
che dà origine al file .CSr e al file .KEY. Copiate il contenuto del file .CSR e incollatelo nel form di richiesta che il sito dell’Authority propone e inviatelo, così da avviare la richiesta del certificato SSL.
In linea generale, indipendentemente dalla procedura (da strumento specifico tipo Kerio o da script in Linux) una volta inviata la richiesta ci verrà creato un file .CSR che contiene la richiesta da inviare all’Autority.
Insieme a questo file viene anche generata quella che si chiama la chiave del certificato, che è appunto il file file ad estensione key cui abbiamo accennato poco fa, che è molto importante soprattutto quando vogliamo andare a spostare il nostro certificato su altri sistemi.
Di seguito vedete un esempio di file CSR:
-----BEGIN CERTIFICATE REQUEST-----
MIICsTCCAZkCAQAwbDELMAkGA1UEBhMCSVQxCzAJBgNVBAgMAk1JMQ8wDQYDVQQH
DAZNaWxhbm8xGDAWBgNVBAoMD0NvcmVUZWNoIFMuci5sLjELMAkGA1UECwwCSVQx
GDAWBgNVBAMMD3d3dy5jb3JldGVjaC5pdDCCASIwDQYJKoZIhvcNAQEBBQADggEP
ADCCAQoCggEBAMK3NKTVpOMc+d7pRXg1t52uE4pkLEitD92FQqdLKzl4jIpkWZ2O
fRKC06yE7+ADy+FYdZBXkE5p84mHTOLj343kuf9We3xTJUqqld86o9FOM3fF2DJu
CMMbrfeefTPtAnEow2Y2Ch8nP1HvPgX2WnvrqEGzYnB0xLR0ZxtNxMDA0Yzs8CnE
B53dEde6bl6F67ylDds0skrGSH8kTZNmMcG/2yczff/bIBcG6YF91omI6MYMTJjP
5XihQ2hjbCDx1VAOuJvEX9CBhp7ozuLTWyZae8HFiNOmVgm1jFKIa4+HXnBqsW1J
DvjnHAj9984cyiLRZEsCe0/c/kGSqK5LLscCAwEAAaAAMA0GCSqGSIb3DQEBCwUA
A4IBAQBITz4T3XJxVmpQROsz8XhzdTzKQ9E0hHHVH8/cWPOQqxJFRZvhwil4VnaS
q6oE42f/sjlhGaEPv9DoMM3V97hjaRrCAwVfQ2JIjD/tQWnW6QN7RlobbLbKPpYu
whC+ij9RDCjxikDs0U6gWu1BTCYPJOfiZj+7XGbG4V2nlZCX+DuZBIj+5OqAJbes
Tx5Wa2CKmo89/w5YmcCReJAXo7aE9jkAHXrwc97x+uH8rq8zXFt7uSjx4NF8avEi
vc7FfxYDEqy360HUJEeLnpXgHsxx6QHBXFVGBWP1l3aZDj4ek7wkAGSGjHc2DREe
Om8zAvYhr2LQdS3Qu6FCpwYOq2M3
-----END CERTIFICATE REQUEST-----
Una volta finita la procedura di richiesta del certificato e validato il nostro dominio, potremo andare a scaricare dal link che ci arriva via mail il certificato e la Chain di tutti i certificati intermedi che ci serve per il corretto funzionamento del nostro certificato.
Di seguito proponiamo un esempio della schermata cui arriviamo per scaricare il nostro certificato (Certificate) e sotto quella che riporta la chain (Certificate chain).
Nella prima, facciamo clic sul pulsante Get plain. Una volta scaricati tutti i certificati, in caso di sistemi Kerio andiamo a editare il primo certificato copiando e incollando uno sotto l’altro i vari certificati.
In caso di sistemi come Apache, invece dov’è previsto l’inserimento di un certificato chiamato certificate-ca, non faremo altro che creare un file dove mettiamo dentro in sequenza tutti i vari certificati della chain e poi andremo a salvare questo file chiamandolo certificate-ca.crt e quindi a selezionarlo in Apache (immagine seguente).