Tempo stimato : 15 minuti
Difficoltà : Intermedia ⭐⭐
Requisiti : Accesso a cPanel, dominio con DNS gestito
📋 Introduzione
SPF, DKIM e DMARC sono tre protocolli di autenticazione email essenziali per :
- ✅ Migliorare la deliverability delle tue email
- 🛡️ Proteggere il tuo dominio contro lo spoofing e il phishing
- 📬 Evitare che le tue email finiscano nello spam
- ✨ Rispettare i requisiti di Gmail e Yahoo (obbligatorio da febbraio 2024)
🔍 Comprendere SPF, DKIM e DMARC
Panoramica
| Protocollo | Funzione | Analogia |
|---|---|---|
| SPF | Verifica che il server sia autorizzato a inviare | Elenco dei fattori autorizzati |
| DKIM | Aggiunge una firma digitale all'email | Sigillo di autenticità |
| DMARC | Definisce la politica in caso di fallimento | Istruzioni al destinatario |
SPF (Sender Policy Framework)
SPF consente di specificare quali server sono autorizzati a inviare email per il tuo dominio.
Funzionamento :
- Pubblicate un elenco di server autorizzati in un record DNS TXT
- Il server destinatario verifica se l'email proviene da un server autorizzato
- Se non autorizzato → l'email può essere rifiutata o contrassegnata come spam
Esempio di record SPF :
v=spf1 +a +mx +ip4:123.456.789.0 include:_spf.google.com ~all
DKIM (DomainKeys Identified Mail)
DKIM aggiunge una firma crittografica a ogni email in uscita.
Funzionamento :
- Il tuo server firma ogni email con una chiave privata
- La chiave pubblica è pubblicata nei tuoi DNS
- Il destinatario verifica la firma con la chiave pubblica
- Se la firma è valida → l'email è autentica e non modificata
Esempio di record DKIM :
default._domainkey.iltuodominio.com IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBA..."
DMARC (Domain-based Message Authentication, Reporting & Conformance)
DMARC definisce cosa deve fare il destinatario se SPF o DKIM falliscono.
Funzionamento :
- Definisci una politica (none, quarantine, reject)
- Il destinatario applica questa politica alle email non autenticate
- Ricevi rapporti sui tentativi di spoofing
Esempio di record DMARC :
v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=100
📊 Tabella Riepilogativa
| Elemento | SPF | DKIM | DMARC |
|---|---|---|---|
| Tipo di record | TXT | TXT | TXT |
| Nome | @ o dominio | default._domainkey | _dmarc |
| Obbligatorio | ✅ Sì | ✅ Sì | ⚠️ Raccomandato |
| Configurato automaticamente | ✅ cPanel | ✅ cPanel | ❌ Manuale |
| Protegge contro | Server non autorizzati | Falsificazione del contenuto | Identità rubata |
⚙️ Metodo 1 : Configurazione Automatica (Email Deliverability)
cPanel offre uno strumento Email Deliverability che configura automaticamente SPF e DKIM.
Passo 1 : Accedere a Email Deliverability
- Accedi a cPanel
- Nella sezione Email, fai clic su Email Deliverability

Passo 2 : Verificare lo stato attuale
Vedrai l'elenco dei tuoi domini con il loro stato :
| Stato | Significato |
|---|---|
| ✅ Valido | SPF e DKIM configurati correttamente |
| ⚠️ Esistono problemi | Configurazione mancante o errata |
Passo 3 : Riparare automaticamente
Se vengono rilevati problemi :
- Fai clic su Repair (Ripara) accanto al dominio interessato
- cPanel mostra i record suggeriti
- Fai clic su Repair per applicare automaticamente

💡 Nota : Questo metodo funziona solo se i tuoi DNS sono gestiti dallo stesso server di cPanel. In caso contrario, utilizza il metodo manuale.
Passo 4 : Verificare la configurazione
Dopo la riparazione, lo stato dovrebbe passare a Valido ✅
Puoi fare clic su Manage per vedere i dettagli di ogni record.
⚙️ Metodo 2 : Configurazione Manuale
Se i tuoi DNS sono gestiti altrove (Cloudflare, OVH, Gandi, ecc.), devi aggiungere i record manualmente.
Passo 1 : Recuperare i valori in cPanel
- Vai su Email → Email Deliverability
- Fai clic su Manage accanto al tuo dominio
- Annota i valori suggeriti per SPF e DKIM
Passo 2 : Aggiungere il record SPF
In cPanel (Zone Editor)
- Vai su Domini → Zone Editor
- Fai clic su Gestisci accanto al tuo dominio
- Fai clic su + Aggiungi un record → Add TXT Record
| Campo | Valore |
|---|---|
| Nome | iltuodominio.com (o @) |
| TTL | 14400 |
| Tipo | TXT |
| Record | v=spf1 +a +mx +ip4:LA_TUA_IP include:_spf.google.com ~all |
- Fai clic su Save Record
Record SPF secondo la tua configurazione
| Situazione | Record SPF |
|---|---|
| Email cPanel solo | v=spf1 +a +mx ~all |
| Con MailChannels | v=spf1 +a +mx include:relay.mailchannels.net ~all |
| Con Google Workspace | v=spf1 include:_spf.google.com ~all |
| Con Microsoft 365 | v=spf1 include:spf.protection.outlook.com ~all |
| Con SendGrid | v=spf1 include:sendgrid.net ~all |
| Con Mailchimp | v=spf1 include:servers.mcsv.net ~all |
| Combinato (cPanel + Google) | v=spf1 +a +mx include:_spf.google.com ~all |
Comprendere la sintassi SPF
| Elemento | Significato |
|---|---|
v=spf1 | Versione del protocollo SPF |
+a | Autorizza l'IP del dominio (record A) |
+mx | Autorizza i server MX del dominio |
+ip4:123.456.789.0 | Autorizza un IP specifico |
include:domaine.com | Include i server autorizzati di un altro dominio |
~all | Soft fail : contrassegnare come sospetto se non autorizzato |
-all | Hard fail : rifiutare se non autorizzato |
?all | Neutro : non verificare |
⚠️ Importante : Un dominio può avere solo un solo record SPF. Se utilizzi più servizi, combinati in un solo record.
Passo 3 : Aggiungere il record DKIM
Recuperare la chiave DKIM
- In Email Deliverability, fai clic su Manage
- Sotto DKIM, copia il valore completo della chiave pubblica
Aggiungere il record
- In Zone Editor, fai clic su + Aggiungi un record → Add TXT Record
| Campo | Valore |
|---|---|
| Nome | default._domainkey.iltuodominio.com |
| TTL | 14400 |
| Tipo | TXT |
| Record | v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEB... (la tua chiave) |
- Fai clic su Save Record
💡 Nota : Il selettore
defaultpuò variare a seconda della tua configurazione. Alcuni servizi utilizzano altri selettori comeselector1, ecc.
Passo 4 : Aggiungere il record DMARC
DMARC non è configurato automaticamente da cPanel. Devi aggiungerlo manualmente.
- In Zone Editor, fai clic su + Aggiungi un record → Add TXT Record
| Campo | Valore |
|---|---|
| Nome | _dmarc.iltuodominio.com (o _dmarc) |
| TTL | 14400 |
| Tipo | TXT |
| Record | v=DMARC1; p=none; rua=mailto:[email protected] |
- Fai clic su Save Record
📝 Configurazioni DMARC Raccomandate
Politica progressiva (raccomandato per iniziare)
Inizia con una politica morbida, poi rafforza progressivamente :
Fase 1 : Monitoraggio (2-4 settimane)
v=DMARC1; p=none; rua=mailto:[email protected]; pct=100
p=none: Non fare nulla, solo monitorarerua=mailto:...: Ricevere rapporti aggregati
Fase 2 : Quarantena (2-4 settimane)
v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=25
p=quarantine: Mettere in spam le email non autenticatepct=25: Applicare al 25% delle email (test progressivo)
Fase 3 : Quarantena completa
v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=100
Fase 4 : Rifiuto (protezione massima)
v=DMARC1; p=reject; rua=mailto:[email protected]; ruf=mailto:[email protected]; pct=100
p=reject: Rifiutare completamente le email non autenticateruf=mailto:...: Ricevere rapporti forensi dettagliati
Parametri DMARC spiegati
| Parametro | Valori | Descrizione |
|---|---|---|
v | DMARC1 | Versione (obbligatoria) |
p | none, quarantine, reject | Politica per il dominio |
sp | none, quarantine, reject | Politica per i sottodomini |
pct | 0-100 | Percentuale di email da filtrare |
rua | mailto:[email protected] | Indirizzo per rapporti aggregati |
ruf | mailto:[email protected] | Indirizzo per rapporti forensi |
adkim | r (relaxed), s (strict) | Allineamento DKIM |
aspf | r (relaxed), s (strict) | Allineamento SPF |
fo | 0, 1, d, s | Opzioni di rapporto di fallimento |
Esempi di configurazioni DMARC
| Uso | Record DMARC |
|---|---|
| Principiante (monitoraggio) | v=DMARC1; p=none; rua=mailto:[email protected] |
| Standard | v=DMARC1; p=quarantine; rua=mailto:[email protected]; pct=100 |
| Severo | v=DMARC1; p=reject; rua=mailto:[email protected]; pct=100 |
| Completo con sottodomini | v=DMARC1; p=reject; sp=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; fo=1; pct=100 |
✅ Verificare la Configurazione
Metodo 1 : Email Deliverability cPanel
- Torna su Email → Email Deliverability
- Verifica che lo stato sia Valido ✅ per il tuo dominio
Metodo 2 : Strumenti online
| Strumento | URL | Verifica |
|---|---|---|
| MXToolbox | mxtoolbox.com/SuperTool.aspx | SPF, DKIM, DMARC |
| Mail Tester | mail-tester.com | Punteggio globale + autenticazione |
| DMARC Analyzer | dmarcanalyzer.com/dmarc/dmarc-record-check | DMARC |
| Google Admin Toolbox | toolbox.googleapps.com/apps/checkmx | MX, SPF, DKIM |
| DKIM Validator | dkimvalidator.com | DKIM |
| EasyDMARC | easydmarc.com/tools | SPF, DKIM, DMARC |
Metodo 3 : Comandi di verifica
Verificare SPF
# Linux/Mac
dig TXT iltuodominio.com +short
# Windows
nslookup -type=TXT iltuodominio.com
Risultato atteso :
"v=spf1 +a +mx ~all"
Verificare DKIM
# Linux/Mac
dig TXT default._domainkey.iltuodominio.com +short
# Windows
nslookup -type=TXT default._domainkey.iltuodominio.com
Risultato atteso :
"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEB..."
Verificare DMARC
# Linux/Mac
dig TXT _dmarc.iltuodominio.com +short
# Windows
nslookup -type=TXT _dmarc.iltuodominio.com
Risultato atteso :
"v=DMARC1; p=quarantine; rua=mailto:[email protected]"
Metodo 4 : Inviare un'email di test
- Invia un'email a [email protected]
- Riceverai un rapporto dettagliato con i risultati SPF, DKIM e DMARC
Oppure utilizza mail-tester.com :
- Vai su mail-tester.com
- Copia l'indirizzo email temporaneo fornito
- Invia un'email a questo indirizzo
- Controlla il tuo punteggio e i dettagli di autenticazione
📧 Configurazione per Servizi Esterni
Google Workspace (Gmail professionale)
SPF
v=spf1 include:_spf.google.com ~all
DKIM
- Nella console di Google Admin, vai su Applicazioni → Google Workspace → Gmail → Autenticare le email
- Genera la chiave DKIM
- Aggiungi il record TXT fornito da Google
Microsoft 365 (Outlook professionale)
SPF
v=spf1 include:spf.protection.outlook.com ~all
DKIM
- Nel Centro di amministrazione di Microsoft 365
- Impostazioni → Domini → Seleziona il tuo dominio
- Copia i record CNAME DKIM forniti
Servizi di invio email
| Servizio | Include SPF | Documentazione DKIM |
|---|---|---|
| SendGrid | include:sendgrid.net | Pannello SendGrid |
| Mailchimp | include:servers.mcsv.net | Account → Impostazioni → Domini verificati |
| Sendinblue | include:sendinblue.com | Impostazioni → Mittenti → Domini |
| Mailjet | include:spf.mailjet.com | Impostazioni account → Domini |
| Amazon SES | include:amazonses.com | Console AWS SES |
Esempio : cPanel + Mailchimp combinati
v=spf1 +a +mx include:servers.mcsv.net ~all
🔧 Risoluzione dei problemi
SPF : "Troppi lookup DNS"
Problema : SPF è limitato a 10 lookup DNS massimo.
Soluzione :
- Riduci il numero di
include: - Utilizza IP diretti (
ip4:) invece diinclude: - Utilizza un servizio di "SPF flattening"
SPF : "Record SPF multipli"
Problema : Hai più record SPF.
Soluzione : Unisci tutti i tuoi record in uno solo :
❌ Errato (2 record) :
v=spf1 +a +mx ~all
v=spf1 include:_spf.google.com ~all
✅ Corretto (1 solo record) :
v=spf1 +a +mx include:_spf.google.com ~all
DKIM : "Nessun record DKIM trovato"
| Cause | Soluzione |
|---|---|
| Selettore errato | Controlla il nome del selettore (default, google, ecc.) |
| Propagazione DNS | Attendere 24-48h dopo la creazione |
| Chiave troncata | Verifica che la chiave sia completa |
| Dominio errato | Controlla il formato selecteur._domainkey.domaine.com |
DKIM : Chiave troppo lunga
Se la tua chiave DKIM supera i 255 caratteri, deve essere divisa:
"v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA..." "...parte della chiave..."
Alcuni DNS gestiscono automaticamente questa situazione, altri richiedono una divisione manuale.
DMARC : "Record DMARC non trovato"
| Cause | Soluzione |
|---|---|
| Nome errato | Deve essere esattamente _dmarc.votredomaine.com |
| Propagazione DNS | Attendere alcune ore |
| Sintassi errata | Controlla con un validatore DMARC |
Email sempre nello spam
Controlla in ordine:
- ✅ SPF configurato e valido
- ✅ DKIM configurato e valido
- ✅ DMARC configurato
- ✅ PTR (Reverse DNS) configurato
- ✅ IP non in blacklist (controlla su mxtoolbox.com/blacklists.aspx)
- ✅ Contenuto dell'email (nessuna parola spam, buon rapporto testo/immagini)
📊 Leggere i Rapporti DMARC
Formato dei rapporti
I rapporti DMARC vengono inviati in XML. Esempio semplificato:
<record>
<row>
<source_ip>123.456.789.0</source_ip>
<count>10</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>pass</dkim>
<spf>pass</spf>
</policy_evaluated>
</row>
</record>
Servizi di analisi DMARC
I rapporti XML sono difficili da leggere. Utilizza un servizio gratuito:
| Servizio | URL | Funzionalità |
|---|---|---|
| DMARC Analyzer | dmarcanalyzer.com | Gratuito limitato |
| Postmark DMARC | dmarc.postmarkapp.com | Gratuito |
| EasyDMARC | easydmarc.com | Gratuito limitato |
| URIports | uriports.com | Gratuito |
| DMARCLY | dmarcly.com | Gratuito limitato |
⚠️ Buone Pratiche
Da fare ✅
| Pratica | Motivo |
|---|---|
Iniziare DMARC in modalità p=none | Osservare prima di bloccare |
| Testare dopo ogni modifica | Evitare interruzioni |
| Monitorare i rapporti DMARC | Rilevare problemi |
| Aggiornare SPF se cambi servizio | Mantenere la lista aggiornata |
Utilizzare ~all invece di -all all'inizio | Più tollerante agli errori |
Da evitare ❌
| Pratica | Rischio |
|---|---|
Passare direttamente a p=reject | Bloccare le proprie email |
| Dimenticare di includere tutti i servizi di invio | Email rifiutate |
| Avere più registrazioni SPF | Configurazione non valida |
| Ignorare i rapporti DMARC | Perdere problemi |
| Copiare configurazioni senza adattarle | Valori errati |
📝 Riepilogo
AUTENTICAZIONE EMAIL - CONFIGURAZIONE CPANEL
┌─────────────────────────────────────────────────────────────┐
│ SPF │
├─────────────────────────────────────────────────────────────┤
│ Tipo: TXT │
│ Nome: votredomaine.com (o @) │
│ Valore: v=spf1 +a +mx ~all │
│ → Autorizza i server a inviare per il tuo dominio │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ DKIM │
├─────────────────────────────────────────────────────────────┤
│ Tipo: TXT │
│ Nome: default._domainkey.votredomaine.com │
│ Valore: v=DKIM1; k=rsa; p=LA_TUA_CHIAVE_PUBBLICA │
│ → Firma crittograficamente ogni email │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ DMARC │
├─────────────────────────────────────────────────────────────┤
│ Tipo: TXT │
│ Nome: _dmarc.votredomaine.com │
│ Valore: v=DMARC1; p=none; rua=mailto:[email protected] │
│ → Definisce la politica se SPF/DKIM fallisce │
└─────────────────────────────────────────────────────────────┘
CONFIGURAZIONE AUTOMATICA (cPanel) :
1. Email → Consegna Email
2. Clicca su "Ripara" se vengono rilevati problemi
3. Aggiungi DMARC manualmente nell'Editor Zone
PROGRESSIONE DMARC RACCOMANDATA :
Fase 1: p=none (monitoraggio) → 2-4 settimane
Fase 2: p=quarantine; pct=25 → 2-4 settimane
Fase 3: p=quarantine; pct=100 → 2-4 settimane
Fase 4: p=reject; pct=100 → Massima protezione
VERIFICA :
├── cPanel Consegna Email → Stato "Valido"
├── mail-tester.com → Punteggio 10/10
├── mxtoolbox.com → Verifica completa
└── dig TXT votredomaine.com → Vedi registrazioni