Come usare questo generatore DANE TLSA
Generare un record TLSA corretto richiede tre scelte: usage, selector e matching type. Una combinazione sbagliata indebolisce la sicurezza o blocca la posta.
Passaggio 1: Configurare i parametri TLSA
Scegli i parametri in base al tuo caso d'uso:
Configurazione consigliata per SMTP:
| Parametro | Valore consigliato | Motivo |
|---|---|---|
| Certificate Usage | DANE-EE (3) | Non serve la validazione PKIX |
| Selector | SPKI (1) | Sopravvive ai rinnovi |
| Matching Type | SHA-256 (1) | Compatto e sicuro |
| Port | 25 | Porta SMTP standard |
Passaggio 2: Fornire il certificato
Incolla il tuo certificato in formato PEM:
-----BEGIN CERTIFICATE-----
MIIFazCCA1OgAwIBAgIRAIIQz7DSQON...
-----END CERTIFICATE-----
Come ottenere il certificato:
# Dal tuo server mail via STARTTLS
openssl s_client -connect mail.captaindns.com:25 -starttls smtp 2>/dev/null | openssl x509
# Da un file sul server
cat /etc/letsencrypt/live/mail.captaindns.com/cert.pem
Passaggio 3: Copiare e pubblicare
Il generatore produce un record pronto da pubblicare:
_25._tcp.mail.captaindns.com. IN TLSA 3 1 1 2bb183af2e2b295b444c1fd4072f2b59a8c1c9abf7f3f1e9b0d4c7e8f1a2b3c4d
Passaggio 4: Verificare il deployment
Usa il nostro DANE TLSA Checker per confermare che il record è online e correttamente firmato DNSSEC.
Guida ai parametri TLSA
Ogni parametro TLSA influenza la sicurezza e la manutenzione del record. Scegli con attenzione.
Certificate Usage: quale tipo scegliere?
| Usage | Nome | Quando usarlo | Rotazione del certificato |
|---|---|---|---|
| 0 | PKIX-TA | CA nota + validazione PKIX | Facile (stessa CA) |
| 1 | PKIX-EE | Certificato esatto + PKIX | Difficile (aggiornamento DNS) |
| 2 | DANE-TA | CA nota senza PKIX | Facile (stessa CA) |
| 3 | DANE-EE | Certificato esatto senza PKIX | Medio (SPKI + riutilizzo chiave) |
Per SMTP, DANE-EE (3) è lo standard. I server mail generalmente non richiedono la validazione PKIX.
Selector: Cert vs SPKI
| Selector | Stabilità | Caso d'uso |
|---|---|---|
| Cert (0) | Cambia ad ogni rinnovo | Vincolo rigoroso, gestione DNS automatizzata |
| SPKI (1) | Stabile se stessa chiave | Consigliato, soprattutto con Let's Encrypt |
SPKI (1) è consigliato per ridurre la frequenza degli aggiornamenti DNS.
Matching Type: Full vs Hash
| Matching | Dimensione record | Sicurezza |
|---|---|---|
| Full (0) | Grande (può troncare UDP) | Massima |
| SHA-256 (1) | 64 caratteri hex | Consigliato |
| SHA-512 (2) | 128 caratteri hex | Più lungo, senza beneficio reale |
SHA-256 (1) è lo standard. Full (0) non è consigliato per SMTP a causa dei problemi di dimensione DNS.
Prerequisito: DNSSEC
Senza DNSSEC, il tuo record TLSA verrà ignorato da tutti i MTA. Nessuna eccezione: la RFC 7672 lo impone. Prima di pubblicare un record TLSA:
Verificare DNSSEC
- Verifica che il tuo registrar supporti DNSSEC
- Attiva la firma DNSSEC presso il tuo hosting DNS
- Aggiungi i record DS presso il tuo registrar
- Attendi la propagazione (può richiedere 24-48h)
Provider DNS con DNSSEC
| Provider | DNSSEC | Note |
|---|---|---|
| Cloudflare | Sì (automatico) | Un clic nelle impostazioni |
| AWS Route 53 | Sì | Configurazione manuale richiesta |
| OVH | Sì | Attivazione tramite manager |
| Google Cloud DNS | Sì | Configurazione manuale |
| Gandi | Sì | Attivazione automatica possibile |
Strategie di deployment
La scelta della strategia dipende dal tuo provider di certificati e dalla frequenza di rinnovo. Ecco i tre scenari più comuni.
Scenario 1: Let's Encrypt con riutilizzo della chiave
Configurazione:
# Generare con riutilizzo della chiave
certbot certonly --reuse-key -d mail.captaindns.com
# Record TLSA (non cambierà tra i rinnovi)
3 1 1 <sha256-spki>
Vantaggio: Il record TLSA non cambia mai finché la chiave viene riutilizzata.
Scenario 2: Let's Encrypt con DANE-TA
Configurazione:
# Vincolare la CA Let's Encrypt (ISRG Root X1)
2 0 1 <sha256-del-ca-letsencrypt>
Vantaggio: Nessun aggiornamento DNS necessario, finché Let's Encrypt firma i tuoi certificati.
Scenario 3: Rotazione con doppio record
Prima della rotazione:
_25._tcp.mail.captaindns.com. TLSA 3 1 1 <hash-cert-attuale>
_25._tcp.mail.captaindns.com. TLSA 3 1 1 <hash-cert-futuro>
Dopo la rotazione: Rimuovi il vecchio hash.
Pubblicazione DNS per provider
Cloudflare
- Vai nelle impostazioni DNS del tuo dominio
- Aggiungi un record:
- Tipo: TLSA
- Nome:
_25._tcp.mail - Usage: 3
- Selector: 1
- Matching Type: 1
- Certificate: Il tuo hash SHA-256
AWS Route 53
- Apri la zona ospitata
- Crea un record:
- Nome:
_25._tcp.mail.captaindns.com - Tipo: TLSA
- Valore:
3 1 1 <hash> - TTL: 3600
- Nome:
OVH / Formato generico
- Vai nella zona DNS
- Aggiungi una voce:
- Sottodominio:
_25._tcp.mail - Tipo: TLSA
- Destinazione:
3 1 1 <hash> - TTL: 3600
- Sottodominio:
Sicurezza email completa con DANE
DANE da solo non basta. Combinalo con MTA-STS e TLS-RPT per una protezione completa del trasporto email:
1. DANE (Autenticazione certificato via DNS)
Verifica l'identità del server destinatario tramite DNSSEC.
- Usa questo generatore
- Verificare il deployment DANE
2. MTA-STS (Applicazione TLS via HTTPS)
Alternativa a DANE senza DNSSEC.
3. TLS-RPT (Segnalare i fallimenti)
Segnala i fallimenti di connessione TLS (DANE e MTA-STS).
Ordine di deployment consigliato
- Attivare DNSSEC sul dominio
- Pubblicare i record TLSA (DANE)
- Configurare TLS-RPT per ricevere i report di fallimento
- Opzionalmente, aggiungere MTA-STS come livello aggiuntivo
- Monitorare i report TLS-RPT regolarmente
FAQ - Domande frequenti
D: Come creare un record DANE TLSA?
R: Usa il nostro generatore: seleziona il tipo di usage (DANE-EE consigliato), il selector (SPKI per la stabilità), il matching type (SHA-256), e incolla il tuo certificato PEM. Lo strumento genera il record DNS completo pronto da pubblicare.
D: Quale certificate usage scegliere per DANE?
R: Per la maggior parte dei deployment SMTP, DANE-EE (3) con selector SPKI e matching SHA-256 è consigliato. Per facilitare la rotazione del certificato, usa DANE-TA (2) con il certificato della tua CA.
D: Bisogna usare il certificato completo o un hash?
R: Usa sempre un hash SHA-256. I dati completi (matching type 0) creano record DNS molto grandi con rischi di troncatura UDP. SHA-256 produce una stringa compatta di 64 caratteri.
D: Cos'è il selector SPKI?
R: Il selector SPKI (1) calcola l'hash solo della chiave pubblica del certificato. Il record TLSA resta valido quando rinnovi con la stessa coppia di chiavi, a differenza del selector Cert (0) che cambia ad ogni rinnovo.
D: Come implementare un record DANE TLSA?
R: 1) Attiva DNSSEC, 2) Aggiungi il TLSA a _25._tcp.tuoservermail, 3) Attendi la propagazione DNS, 4) Verifica con il nostro DANE TLSA Checker. Il record deve essere firmato DNSSEC.
D: Come gestire i rinnovi Let's Encrypt con DANE?
R: Due strategie: DANE-TA (usage 2) con il certificato CA Let's Encrypt sopravvive automaticamente ai rinnovi. DANE-EE (usage 3) con selector SPKI e --reuse-key in Certbot funziona altrettanto bene.
Strumenti complementari
| Strumento | Utilità |
|---|---|
| DANE TLSA Validator | Validare la sintassi prima della pubblicazione |
| DANE TLSA Checker | Verificare il record dopo il deployment |
| Generatore MTA-STS | Creare una policy MTA-STS (sicurezza TLS alternativa) |
| Generatore TLS-RPT | Attivare il reporting dei fallimenti DANE |
| Audit dominio email | Audit completo dell'autenticazione email |
Risorse utili
- RFC 6698 - DANE TLSA (specifica originale)
- RFC 7671 - Updates to DANE (aggiornamenti operativi)
- RFC 7672 - SMTP Security via DANE (DANE per SMTP)
- Certbot - Reuse Key (riutilizzo chiave per DANE)
- Microsoft - DANE with DNSSEC (guida Exchange Online)