La gestione dei certificati TLS (Transport Layer Security), protocollo che protegge i dati durante la trasmissione su Internet, tramite ACME (Automatic Certificate Management Environment, il sistema che automatizza l’emissione e il rinnovo dei certificati) ha permesso di automatizzare la protezione delle comunicazioni su larga scala, riducendo drasticamente tempi e costi di emissione. Let’s Encrypt ha consolidato il proprio ruolo come autorità di certificazione che rilascia certificati digitali gratuiti, con centinaia di milioni di certificati attivi e una quota significativa del traffico Web globale protetto tramite HTTPS.
Tuttavia, alcune modalità di validazione dei domini, in particolare per ambienti complessi o non esposti direttamente su Internet, hanno mostrato limiti operativi e di sicurezza. L’introduzione della nuova challenge DNS-PERSIST-01, descritta in una bozza dell’IETF (Internet Engineering Task Force, organismo che definisce gli standard di Internet) e già supportata nei sistemi di test, si inserisce in questa evoluzione con l’obiettivo di ridurre la dipendenza da aggiornamenti DNS frequenti e migliorare il controllo delle credenziali.
Let’s Encrypt ha già integrato il supporto per DNS-PERSIST-01 nella propria infrastruttura di test. Parallelamente è in corso l’integrazione nei client ACME, tra cui lego-cli, per facilitare le prove e l’adozione da parte degli utenti. La disponibilità in produzione è pianificata entro giugno 2026.
Come funziona la validazione DNS-01 e quali limiti presenta
Nel modello ACME tradizionale, la validazione DNS tramite la challenge DNS-01 richiede la creazione di un record TXT temporaneo (una voce di configurazione pubblica usata per dimostrare il controllo del dominio) per ogni richiesta di certificato.
Il client ACME genera un token univoco pubblicato sotto il sottodominio _acme-challenge del dominio da validare. L’autorità di certificazione verifica la presenza del record e ne confronta il contenuto con il valore atteso per confermare il controllo del dominio da parte del richiedente.
Il meccanismo offre un forte livello di sicurezza, perché dimostra ogni volta la disponibilità attuale del controllo DNS. Tuttavia introduce complessità operative.
DNS-PERSIST-01: autorizzazione persistente basata su record DNS
La nuova modalità DNS-PERSIST-01 modifica radicalmente il modello operativo. Invece di pubblicare un token differente per ogni emissione, viene creato un record TXT persistente che autorizza in modo esplicito un determinato account ACME e una specifica autorità di certificazione a emettere certificati per un dominio.
Il record è pubblicato sotto il nome _validation-persist.dominio e contiene l’identificativo dell’autorità di certificazione e l’URI dell’account ACME autorizzato. Una volta configurato, il record può essere riutilizzato per emissioni successive e per tutti i rinnovi automatici, eliminando di fatto gli aggiornamenti DNS dal percorso di rilascio del certificato.
Dal punto di vista pratico, la nuova impostazione riduce il numero di modifiche DNS e semplifica l’automazione, rendendo la soluzione particolarmente adatta a scenari IoT, infrastrutture con accesso limitato alla rete pubblica o piattaforme multi-tenant con gestione centralizzata dei certificati.
Implicazioni di sicurezza e gestione delle credenziali
Con DNS-01 il bene da proteggere è l’accesso in scrittura ai record DNS, spesso distribuito su diversi sistemi. Con DNS-PERSIST-01, invece, l’elemento critico da proteggere diventa la chiave dell’account ACME (la credenziale usata per identificare e autorizzare il client presso l’autorità di certificazione), perché è proprio questa chiave a restare collegata in modo permanente al dominio tramite il record TXT del DNS.
Il vantaggio consiste nella possibilità di mantenere le credenziali DNS in un perimetro più ristretto e controllato. Tuttavia, la compromissione dell’account ACME autorizzato potrebbe consentire emissioni non autorizzate finché il record persistente rimane valido.
La protezione delle chiavi private dell’account, la rotazione periodica e l’uso di hardware security module o sistemi di key management diventano elementi essenziali nella strategia di sicurezza.
Controllo della portata e durata dell’autorizzazione
Il meccanismo DNS-PERSIST-01 introduce parametri espliciti per definire ambito e durata dell’autorizzazione. In assenza di opzioni aggiuntive, il record consente l’emissione solo per il nome di dominio completamente qualificato (FQDN, cioè l’indirizzo completo con tutti i livelli del dominio) e non prevede alcuna scadenza temporale.
È possibile estendere la portata includendo certificati wildcard tramite il parametro policy=wildcard, consentendo l’emissione per sottodomini come *.example.com e per tutti i nomi che condividono il suffisso validato.
Per limitare la durata dell’autorizzazione, è disponibile l’opzione persistUntil che definisce una scadenza espressa in secondi UTC come Unix Time Stamp. Tale approccio consente di adottare politiche di sicurezza più restrittive, ma richiede sistemi di monitoraggio e automazione per evitare l’interruzione dei rinnovi alla scadenza del record.
Autorizzazione di più autorità di certificazione
La specifica prevede la possibilità di autorizzare contemporaneamente più CA pubblicando record TXT multipli sotto lo stesso label DNS. Ogni autorità di certificazione, durante la fase di validazione, esamina esclusivamente i record che corrispondono al proprio identificativo. Questo consente di implementare strategie multi-CA per resilienza o compliance, senza dover modificare continuamente la configurazione DNS.