Richiesta di certificato tramite ACME e DNS nell'applicazione SSLmarket
L'applicazione SSLmarket ti semplifica la vita nell'uso o nel test dei DNS. Questa guida si dedica alla richiesta manuale di un certificato, che viene verificato tramite DNS-01, e alla modifica dei record DNS tramite API. Scoprirai come funziona il principio e come utilizzarlo con i registrar supportati.
Cos'è il protocollo ACME
ACME (Automatic Certificate Management Environment) è un protocollo aperto che automatizza il rilascio e il rinnovo dei certificati TLS. È standardizzato nell'RFC 8555. Originariamente creato per l'autorità di certificazione Let's Encrypt, oggi è supportato anche dalle autorità commerciali, inclusa DigiCert. Sul server funziona un client ACME che si registra presso l'autorità di certificazione. Per le CA commerciali, di solito si usano le credenziali ACME (External Account Binding), che collegano il client con l'account cliente. Il client quindi invia una richiesta di certificato e l'autorità lo invita a dimostrare il controllo sul dominio. Dopo la verifica con successo, l'autorità rilascia il certificato, il client lo scarica e lo installa. Prima della scadenza, l'intero processo si ripete automaticamente, in modo che il certificato si rinnovi senza l'intervento del gestore.
Verifica del dominio con metodo DNS-01
Uno dei metodi di verifica del dominio è DNS-01. L'autorità di certificazione fornisce al client ACME un token. Il client ne deriva un valore e lo inserisce nel record TXT del dominio verificato: _acme-challenge. L'autorità poi cerca il record nel DNS e, se il valore corrisponde, il dominio è verificato. Il vantaggio di DNS-01 è che il server non deve essere accessibile da internet né avere la porta 80 aperta. Il metodo consente anche di rilasciare un certificato wildcard (*.dominio.it). Se il tuo provider DNS offre un'API per la gestione dei record, il client ACME è in grado di creare e successivamente cancellare il record TXT da solo, rendendo l'intero processo, compreso il rinnovo, completamente automatizzato. Per questo scopo si raccomanda una chiave API con le autorizzazioni più ristrette possibili, idealmente limitata solo alla gestione dei record DNS del dominio in questione.
Integrazione ACME nell'applicazione SSLmarket
L'applicazione SSLmarket per Windows permette, oltre alla creazione e gestione delle credenziali ACME, anche il rilascio manuale di un certificato tramite ACME e verifica DNS-01.
La richiesta manuale di un certificato è possibile grazie all'impostazione dei record DNS tramite API sul dominio verificato, il che consente di separare il richiedente del certificato dal dominio stesso. Questo non è possibile con la verifica tramite file esposto sul web (HTTP-01). La richiesta di rilascio del certificato arriva alla CA, che restituisce un segreto monouso per la sfida e ne controlla la presenza nella zona DNS del dominio verificato. Se trova il record, completa anche la richiesta di certificato tramite ACME e lo rilascia. Il client ACME (in questo caso l'applicazione SSLmarket) quindi salva il certificato sul tuo computer (archivio certificati di Windows o PFX).
Questa modalità di rilascio può essere utile se hai bisogno di rilasciare un certificato per un server non connesso a internet o se desideri semplicemente un PFX. È utile anche per i test.
Servizi supportati con API DNS
Nella prima versione con supporto ACME (1.5.0), hai a disposizione nell'applicazione tre servizi per la gestione dei record DNS tramite API:
- CZECHIA.COM (Zoner)
- Google Cloud DNS
- Cloudflare
Il dominio verificato deve avere i nameserver di questi fornitori (la zona DNS è ospitata presso di loro) e devi avere una chiave API che consenta la manipolazione dei record. Aggiungeremo altri fornitori in futuro, se il progetto li supporterà e sarà tecnicamente possibile.
Come funziona ACME nell'applicazione SSLmarket
ACME è integrato nell'applicazione SSLmarket tramite il progetto simple-acme. Questo consente di effettuare la verifica DNS-01 tramite plugin che integrano le API di terze parti. L'applicazione SSLmarket acquisisce i parametri necessari e li passa al client simple-acme in esecuzione in background. Per l'utente è un'agevolazione e per gli autori dell'applicazione un'opportunità di utilizzare facilmente integrazioni già pronte delle API DNS.
Nel dettaglio di un particolare credential ACME puoi richiedere direttamente un certificato. Compili il nome del dominio che deve essere verificato tramite DNS, selezioni il provider dei record DNS e imposti il salvataggio del certificato rilasciato (archivio certificati di Windows, PFX). Se viene inserita una chiave API funzionale per il servizio di terza parte e questa è operativa, la richiesta verrà completata dopo la verifica DCV, il certificato verrà rilasciato e salvato secondo le impostazioni richieste.
Lo stato della richiesta lo vedi nel registro di fronte a te, quindi puoi facilmente risolvere eventuali problemi analizzando il registro o inviandolo al supporto clienti SSLmarket.
I certificati rilasciati tramite ACME appariranno il giorno successivo anche sul tuo account SSLmarket e il mese successivo saranno fatturati secondo il listino prezzi dell'account cliente.
Ulteriori risorse e documentazione
L'applicazione SSLmarket per il rilascio del certificato tramite ACME integra e utilizza il progetto simple-acme, inclusi i plugin DNS che integrano i servizi di terze parti. Per fare riferimento all'uso delle API DNS dei singoli fornitori, consiglio la pagina DNS validation. Ogni fornitore ha un'autenticazione e una configurazione diverse, la nostra applicazione le accoglie nelle impostazioni (frontend) e le trasmette a simple-acme in background.
Ci dispiace che non ci hai trovato il necessario.
Ci aiuterai a migliorare l'articolo? Facci sapere cosa qui aspettavi e non hai scoperto.