Autenticazione delle email attraverso SPF e DKIM

Autenticazione delle email attraverso SPF e DKIM

Ecco, ci risiamo! Di nuovo acronimi, di nuovo cose da sapere, di nuovo informazioni da nerd! Ebbene no, sono una cosa seria e da questi acronomi dipende la corretta consegna delle vostre email. Sappiamo per esperienza personale che questi acronimi possono suonare poco familiari, spaventosi e possono sembrare totalmente privi di interesse. O forse vi suonano familiari, ma non vi siete mai preoccupati abbastanza di controllare cosa sono realmente. Proviamo a fare un po’ di chiarezza per i non tecnici.

In tutti e due i casi, è il momento di imparare un po’ cosa sono SPF e DKIM  e come impostarli nei record DNS per il vostro server di posta, se volete avere un migliore controllo sulla consegna delle vostre email. Farò del mio meglio per spiegarlo con parole semplici, che saranno comprese non solo dai programmatori.

Cos’è SPF? Come funziona SPF?

In parole povere, Sender Policy Framework (SPF) è un meccanismo di sicurezza creato per impedire ai cattivi di inviare email per tuo conto. Il meccanismo riguarda la comunicazione tra i server DNS… e questo è il punto in cui tutto inizia a sembrare spaventoso! Ma non fatevi prendere dal panico. Cercherò di mantenerlo il più semplice possibile.

Diciamo che avete inviato un’email a Bob. Ma come fa il server DNS di Bob a sapere che l’e-mail è stata effettivamente inviata da voi? Il problema è che in realtà non lo sa. A meno che tu non abbia impostato SPF sul tuo server DNS. Vabbè, ci sarebbe da spiegare cosa sia un server DNS ma sorvoliamo altrimenti mi mandate al diavolo!

SPF definisce quali indirizzi IP possono essere utilizzati per inviare e-mail dal tuo dominio. Quindi immaginiamo due possibili “conversazioni” tra server. Per rendere tutto più semplice, supponiamo che il vostro nome sia Paolo.

Scenario 1 – Non hai impostato SPF.

Il server di Mike: Ehi, server di Bob. Ho un nuovo messaggio da Mike.
Server di Bob: Ciao server di Mike. Qual è il tuo SPF?
Server di Mike: Sì, riguardo all’SPF… Chi se ne frega, davvero. Non ne ho uno. Fidati, è da parte di Mike.
Server di Bob: Se non hai l’SPF, non posso essere sicuro che sia stato Mike a mandarlo. Dammi gli IP consentiti di Mike, così posso confrontarli con i tuoi.
Server di Mike: Non ho la lista degli IP consentiti di Mike.
Server di Bob: Allora non voglio il tuo messaggio. Consegna negata. Spiacente, amico…

Scenario 2 – Avete impostato SPF.

Server di Mike: Ehi, server di Bob. Ho un nuovo messaggio da Mike.
Server di Bob: Ciao server di Mike. Qual è il tuo SPF?
Server di Mike: Ecco il mio SPF. C’è un’intera lista di IP che Mike stesso ha dichiarato come quelli che possono essere usati per suo conto.
Server di Bob: Ok, fammi vedere… E il messaggio che hai per me è inviato dall’IP 64.233.160.19. Ok, è nella lista. Tutto sembra a posto. Dammi il messaggio, lo mostrerò a Bob. Grazie!

Le mie scuse a tutti i lettori sistemisti per questa eccessiva semplificazione, lo so che avete i brividi ma vi prego di perdonarmi e tenete a mente che vi invidiamo le vostre conoscenze tecniche ma io devo parlare ad un pubblico non tecnico e devo per forza semplificare.

Comunque, la morale di questi due brevi dialoghi è: impostate il vostro SPF. Se non lo fate, potreste sembrare un cattivo ragazzo, e non tutte le vostre email saranno consegnate.

Quali applicazioni dovresti includere nel tuo SPF?

L’idea generale è quella di assicurarsi che tutte le applicazioni che inviano email per tuo conto (e che usano il loro SMTP, non il tuo) siano incluse nel tuo SPF. Per esempio, se stai usando Google Apps per inviare email dal tuo dominio, dovresti mettere Google nel tuo SPF. Ecco le istruzioni di Google su come farlo.

Ma è importante assicurarsi, che Google non sia l’unica applicazione che abbia i permessi nel vostro SPF. Per esempio, se stiamo usando HelpScout per gestire le nostre email di supporto e MailChimp per inviare le nostre newsletter allora Li includiamo entrambi nel nostro SPF.

Bisogna includere anche Woodpecker nel mio SPF?

No. Come ho detto, dovresti ricordarti di mettere nel tuo record SPF le app che inviano email per tuo conto, ma che usano il loro proprio SMTP. Woodpecker usa il tuo SMTP per inviare le tue email, quindi è più un client email online che un’app per l’invio di email di massa.

Detto questo, la deliverability delle email inviate da Woodpecker dipende dalla reputazione del tuo dominio. Impostare SPF e DKIM ti aiuterà a proteggere la buona reputazione del tuo dominio, e quindi a migliorare la deliverability delle tue email.

Come impostare il record SPF sul tuo server passo dopo passo?

Il primo passo è controllare qual è il tuo attuale record SPF. Potete farlo utilizzando strumenti come:

Quando digitate il vostro dominio (per esempio io scriverei woodpecker.co), gli strumenti eseguiranno alcuni test e vi mostreranno il vostro SPF attuale, o una notifica che non è stato ancora impostato.

Quali sono i prossimi passi?

A seconda dell’host del tuo dominio, i passi saranno diversi. Fondamentalmente, si tratta di incollare una linea di testo correttamente strutturata nel posto giusto nella console. Per esempio, se stai usando Google Apps per inviare tutte le email dal tuo dominio, la linea dovrebbe essere come questa:

“v=spf1 include:_spf.google.com ~all”

La parte “v=spf1” del record è chiamata versione, e quelle che vengono dopo sono chiamate meccanismi.

Ora vediamo cosa significa esattamente ogni parte.

  • v=spf1 questo elemento identifica il record come un SPF
  • include:_spf.google.com questo meccanismo include i server di posta che sono server autorizzati
  • ~v=spf1 questo elemento indica che se un’email viene ricevuta da un server non autorizzato (non elencato nel meccanismo “include:”), viene etichettata come soft fail, il che significa che può essere lasciata passare, ma potrebbe essere segnalata come spam o sospetta.

Ma se stai usando più app di questa (per esempio qualcosa per inviare la tua newsletter, qualcosa per inviare i tuoi messaggi di supporto, ecc.), la linea sarà un po’ più lunga, perché dovrai includere tutte le altre app in essa. Oppure se non usi Google Apps ma un server di un altro host, per esempio GoDaddy, la linea sarà diversa.

Ecco come impostare SPF per gli host di dominio più comuni:

Cos’è DKIM?

Lo standard DomainKeys Identified Mail (DKIM) è stato creato per la stessa ragione di SPF: impedire ai cattivi di impersonarti come mittente di email. È un modo per firmare ulteriormente le vostre e-mail in un modo da permettere al server del destinatario di controllare se il mittente siete voi oppure no.

Impostando DKIM sul tuo server DNS, stai aggiungendo un ulteriore metodo per dire ai tuoi destinatari “sì, sono davvero io che sto inviando questo messaggio”.

Come impostare dkim e spf

L’intera idea si basa sulla criptazione e decriptazione della firma aggiuntiva, messa nell’intestazione del tuo messaggio. Per rendere questo possibile, è necessario avere due chiavi:

  • la chiave privata (che è unica per il tuo dominio e disponibile esclusivamente a te. Ti permette di criptare la tua firma nell’intestazione dei tuoi messaggi).
  • la chiave pubblica (che aggiungi ai tuoi record DNS utilizzando lo standard DKIM, per permettere al server del tuo destinatario di recuperarla e decifrare la tua firma nascosta nell’intestazione del tuo messaggio).

Prendete Game of Thrones per avere il quadro generale del DKIM. Ned Stark sta inviando un corvo con un messaggio a re Robert. Tutti potrebbero prendere un pezzo di carta, scrivere un messaggio e firmarlo Ned Stark. Ma c’è un modo per autenticare il messaggio – il sigillo. Ora, tutti sanno che il sigillo di Ned è un direwolf (questa è la chiave pubblica). Ma solo Ned ha il sigillo originale e può metterlo sui suoi messaggi (questa è la chiave privata).Impostare DKIM è solo mettere le informazioni sulla chiave pubblica nei record del tuo server. È semplicemente un record txt che deve essere messo nel posto giusto.

Una volta che l’hai impostato, ogni volta che qualcuno riceve un’email da te, il server del destinatario cercherà di decifrare la tua firma nascosta usando la chiave pubblica. Se ci riesce, questo autenticherà ulteriormente il tuo messaggio e di conseguenza aumenterà la l’autorevolezza di tutte le tue e-mail.

Come impostare il record DKIM sul tuo server passo dopo passo?

In primo luogo, è necessario generare la chiave pubblica. Per farlo, è necessario accedere alla console di amministrazione del tuo provider di posta elettronica. I passi successivi possono essere diversi a seconda del tuo provider di posta elettronica.

Se stai usando Google Apps per inviare le tue email, ecco le istruzioni passo dopo passo. Per gli utenti di Google Apps, dovresti sapere che di default le firme DKIM sono disattivate, quindi devi attivarle manualmente nella tua console di amministrazione di Google.

Quando avete la chiave pubblica, prendete il record txt generato e incollatelo nel posto giusto nei vostri record DNS.

Infine, è necessario attivare la firma delle e-mail per iniziare a inviare e-mail con la vostra firma criptata con la vostra chiave privata. Ecco come fare, se stai usando Google Apps per inviare le tue email.

Imposta SPF & DKIM e migliora la tua deliverability

Se stai inviando molte email, sia per il marketing che per le vendite in entrata o in uscita, la reputazione del tuo dominio è cruciale e dovresti prendertene cura. Non vuoi che il tuo dominio finisca in una lista nera e che le tue email finiscano nello spam. Impostare correttamente i record SPF e DKIM sul tuo server DNS è un passo necessario per la sicurezza del tuo dominio e l’alta deliverability dei tuoi messaggi.

Impostarli può sembrare complicato, ma ne vale senza dubbio la pena. Se fossi in te, andrei sul mio account  e controllerei se i miei SPF e DKIM sono impostati correttamente in questo momento o chiederei ai miei informatici di farlo. E se risultasse che la risposta è “no”, chiederei loro di aiutarmi.