Garantire la ricezione delle e-mail

Nel precedente articolo abbiamo visto come creare un server di posta utilizzando lo script di Mail-in-a-Box, che permette la configurazione di un ambiente praticamente chiavi in mano.

Una volta creato un account di posta, come quello di rosa@pyroplastic.stream si possono ricevere messaggi di posta elettronica da tutti i provider: gmail.com, outlook/hotmail, yahoo… Tuttavia, non è detto che i nostri messaggi vengano recapitati con successo, questo perchè il nostro server di posta potrebbe non essere stato configurato secondo le specifiche anti-spam di gmail.com, Outlook/Hotmail, Yahoo.

Come possiamo vedere nello screenshot sotto, il messaggio di posta inviato da Rosa è finito nella cartella dello Spam di Yahoo Mail.

Stessa cosa per una mail inviata ad un account Hotmail.

In questo articolo vedremo con assicurarci che le mail spedite dal nostro server mail vengano effettivamente recapitate nella posta in arrivo.

Verifica blacklist

La prima cosa da verificare in generale è che l’ip del proprio mail server non sia in una blacklist ossia che la reputazione dell’IP o dell’host non sia invalidata da precedenti invii di spam. Questo capita se l’IP è dinamico o se il nostro server mail in passato è stato oggetto di spam. Per controllare se l’IP è stato bandito si può ricorrere a questo tool gratuito: https://mxtoolbox.com/blacklists.aspx

Se è in blacklist, si può richiedere la rimozione ai vari mantenitori delle liste e attendere 12-24 ore affinchè l’esclusione dalle lista sia effettiva per tutti.

Invece. se il nostro IP o host non è in una blacklist ma le mail non vengono recapitate con successo, tipicamente il secondo motivo per cui il messaggio finisce nella cartella SPAM, è la mancanza della configurazione SPF.

Record SPF

SPF, Sender Policy Framework, è un sistema di validazione delle email ideato per individuare tentativi di invio di email con indirizzo mittente contraffatto.

Verificando nelle intestazioni del messaggio, infatti appare spf=softfail

SPF è in pratica una sorta di record DNS di tipo TXT da aggiungere fra i record DNS del dominio di posta. Nel nostro caso aggiungeremo:

pyroplastic.stream.  IN TXT "v=spf1 mx a ip4:176.x.x.99 a:posta.pyroplastic.stream"

Dove 176.x.x.99 è l’indirizzo IP del nostro mail server e posta.pyroplastic.stream è il suo hostname.

Questo tipo di configurazione va bene solo nel caso non vi siano altri mail server autorizzati ad inviare mail per il dominio @pyroplastic.stream. Infatti con questo record SPF, dichiareremo che le uniche mail genuine provengono o da 176.x.x.99 o da posta.pyroplastic.stream.

Potete aiutarvi a generare il vostro record SPF, tramite il tool gratuito online: https://www.spfwizard.net/

Aggiunta dkim

Abbiamo provato a mandare un messaggio dall’account di Rosa verso Hotmail e Yahoo, ma ancora finisce nello spam. Tuttavia a questo punto mezza configurazione è ok in quanto SPF=pass. Rimane da sistemare dkim. DKIM non è obbligatorio, ma aumenta la probabilità di non avere problemi in caso in cui qualcuno inizi a utilizzare senza il nostro consenso i nostri account (Mail spoofing).

Per creare la configurazione dkim, basta andare sul pannello di controllo di Mail-in-a-Box, sezione System, voce Extenal DNS.

Scorrendo verso il fondo della pagina troveremo i nostri valori da inserire nuovamente nel DNS.

Quindi dobbiamo creare un record mail._domainkey di tipo TXT contenente il valore v=DMIK1; h=sha….

Aggiunta record _dmarc

L’altro record che si può inserire è DMARC, che è l’acronimo di Domain-based Message Authentication, Reporting & Conformance.

Per usare questa tecnologia, va creato un record di tipo TXT chiamato _dmarc, il cui valore contiene questi valori:

v=DMARC1; p=none; rua=mailto:dmarcreport@pyroplastic.stream

Dove dmarcreport@pyroplastic.stream è un indirizzo di posta al quale recapitare eventuali report in cui sono elencate le statistiche di chi ha inviato mail con il proprio dominio. E’ un campo necessario quindi, inseriamo un indirizzo mail creato ad-hoc.

Esempio di report/statistiche inviato da gmail.

Invece il valore p=none serve per dire di non fare nulla in caso arrivino messaggi che non corrispondano alle direttive imposte con dkim o spf.

Attivazione reverse DNS (o record PTR)

Questa funzione permette di assegnare un nome univoco all’indirizzo IP del vostro mail server. Tuttavia non è strettamente necessario, ma migliorare le probabilità di recapito. Il reverse DNS (chiamato anche record PTR o rDNS) solitamente va impostato da chi vi fornisce il server di posta. Come valore va inserito il nome del server mail: nel nostro caso, posta.pyroplastic.stream.

Epilogo

Dopo aver fatto tutte queste modifiche e aspettato circa 24 ore, abbiamo provato nuovamente ad inviare un messaggio di posta. Questa volta l’email è stata recapitata correttamente nell’inbox (posta in arrivo) dell’utente destinatario.

Facciamo un breve riassunto dei controlli da fare quando le mail non vengono recapitate nella casella di posta in arrivo:

  • Verificare la non presenza nelle blacklist dell’IP o host del mail server
  • Creare il record SPF
  • Creare il “record” DKIM (opzionale)
  • Creare il record _dmarc (opzionale)
  • Aggiungere il reverse DNS (opzionale)
  • Attendere 24 ore dopo aver modificato i DNS.

Fermiamo le email indesiderate

Social (facebook, twitter…), forum e vari servizi ci chiedono di inserire un indirizzo e-mail valido per poter attivare qualsiasi account. Il problema è che dopo esserci iscritti iniziano a fioccare le mail con cadenza regolare di offerte varie, aggiornamenti,…

Mail provider come gmail.com hanno attivato delle viste automatiche che consentono di separare i messaggi “privati” dalle comunicazioni commerciali e social che intasano le caselle di posta, ma a volte la cosa non è l’ideale. Se consultiamo la mail dal cellulare col browser tale funzionalità putroppo non è molto comoda.

Vediamo come tutelarci ancora di più utilizzando un indirizzo di posta intermedio che consente di tagliare i ponti se le email da un mittente iniziano a rompere le scatole eccessivamente. Questo indirizzo di posta è quello che utilizzeremo in futuro per iscriverci a siti, forum, social e newsletter.

La prima cosa è registrare un nuovo indirizzo di posta elettronica presso un provider come outlook.com o gmail.com, si potrebbe fare anche con altri come yahoo.com/yahoo.it ma l’ho scartato perchè richiede anche un numero di un cellulare. Poi creare una regola di inoltro delle mail al nostro indirizzo di posta principale.

La potenzialità dell’inoltro, cosidetto condizionale, ci consente anche di creare regole più sofisticate per filtrare per esempio messaggi privati  dalle newsletter di un forum.

Attivazione con outlook.com

Collegandosi al link https://signup.live.com/signup è possibile creare un indirizzo di posta elettronica outlook.it con il nome, fra i disponibili, che preferiamo senza la necessità di inserire molte informazioni personali oltre a nome e cognome e data di nascita.

Dopo aver creato l’indirizzo di posta, si aprirà una pagina su account.microsoft.com, cliccando su Altre azioni e poi su Visualizza l’inbox, appare la casella di posta.

Per creare una regola di posta che consenta di inoltrare al nostro account di posta elettronica principale le mail ricevute dal servizio, dobbiamo attivare l’inoltro delle mail. L’inoltro si attiva nelle impostazioni (rotella dell’ingranaggio in alto a destra), scegliendo l’ultima in fondo che si chiama Visualizza tutte le impostazioni di outlook.

Dopo aver cliccato lì, appare un altro menù. Scegliamo la voce Inoltro.

Ci apparirà una procedura in cui si può scegliere se fornire un numero di cellulare o un indirizzo di posta alternativo. Scegliamo quest’ultima possibilità, inserendo come indirizzo mail il nostro principale.

All’indirizzo principale verrà recapitato un messaggio contenente un numero a 4 cifre, questo numero va inserito nella succesiva schermata e poi va riconfermato l’indirizzo di posta principale.

Finalmente dopo questa serie di operazioni, possiamo creare la nostra regola per l’inoltro dei messaggi che riceviamo dal nostro servizio di newsletter.

La cosa era è piuttosto semplice: clicchiamo sul menù Regole e Aggiungiamo una nuova regola fatta in questo modo: diamo un nome alla nostra regola, scegliamo come condizione L’indirizzo del mittente include e quindi inseriamo l’email con la quale ci arrivano i messaggi.

Come azione, scegliamo Inoltra a e qui mettiamo il nostro indirizzo di posta principale. Alla fine premiamo il pulsante Salva.