La dura vita di una email

Ero abituato bene, con il mio Mailman su di un computer universitario: premevo invia, e partiva la newsletter destinata a 4000 iscritti. Per carità, succedeva di rado, ma quando serviva, sapevo che lui era là, pronto a riprovare l’invio per ben 5 giorni, per qualunque destinatario il cui provider facesse i capricci. Ora che sono passato ad un hosting privato, le cose si sono complicate abbastanza, e per spiegarne il motivo, devo illustrare un pò quel che succede. Ma alla fine del post, potete trovare la soluzione che ho adottato!

La situazione attuale

Sono passati 36 anni da quando è stata pubblicata la RFC 821 che per prima ha definito il meccanismo di recapito di una email, che essenzialmente si svolge ad opera di due server SMTP,  mittente e destinatario. Da allora la rete è divenuta piena di insidie, e le nostre mailbox traboccano di annunci, newsletter, pubblicità, ed oltre alle varie cose a cui diamo distrattamente consenso, arriva sempre qualche truffa, finta bolletta o fantomatica vincita miliardaria. Fino a qualche anno fa queste email farlocche venivano prevalentemente diffuse tramite programmi-virus che infettavano i computer personali, mentre al giorno d’oggi partono da server ben carrozzati e appositamente preposti allo scopo, ed usano come mittenti indirizzi email di fantasia, oppure realmente esistenti.

Come si comportano i provider

Si è innescata allora tra i provider di caselle email una doppia spirale di contrasto al fenomeno:

  • l’SMTP mittente adotta meccanismi volti a mantenere una buona reputazione, come l’SPF (Sender Policy Framekork) mediante il quale vengono dichiarati quali siano gli indirizzi IP legittimati ad inviare email provenienti da un certo @dominio.it, e come il DKIM (Domain Key Identifyed Mail) in grado di certificare di essere i mittenti reali delle email;
  • l’SMTP ricevente sceglie se rifiutare o meno le email in arrivo consultando elenchi on-line (Blacklist) che contengono gli indirizzi IP che sono stati segnalati come origine di spam, e quindi filtra le email accettate attraverso programmi (es. SpamAssassin) che applicano ulteriori criteri per classificarle come spam o meno;
  • dato poi che fidarsi è bene ma non farlo è meglio, qualora l’SMTP di destinazione riceva una email proveniente da un mittente mai visto prima può attuare una strategia di Greylisting, ovvero inviare un codice di risposta di fallimento temporaneo, (4xx) che invita il mittente a riprovare più tardi. Lo stesso può accadere se si accorge che un certo SMTP mittente invia email troppo velocemente, al punto da sospettarlo come compromesso, ed in tal caso segnalarlo per essere inserito in qualche Blacklist.

Il problema aggiuntivo dell’hosting condiviso

In questo caso, che è il mio, un medesimo SMTP mittente spedisce posta per tutto un insieme di clienti (e domini) diversi. Se uno di loro si comporta male, può causare il blacklisting dell’intero server condiviso, penalizzando anche gli altri utilizzatori. Il provider allora stabilisce limiti di invio, come il massimo numero di email ed il massimo numero di errori per ora. Il meccanismo però, anche se del tutto ragionevole, inizia a divenire perverso quando venga definito errore, oltre all’invio verso un destinatario inesistente, anche una risposta di fallimento temporaneo dovuta a greylisting. In caso di sforamento (che per il mio provider è di 5 errori/ora!) il dominio mittente viene bloccato, e tutti i messaggi spediti nell’ora successiva vengono semplicemente rifiutati.

L’ultimo tassello del problema è che la newsletter viene inviata a tutti i destinatari mediante un software automatico (phplist), che non distingue bene il tipo di errore, per cui anche in presenza di un blocco dovuto a troppi errori (e subire più di 5 ritardi a causa di greylist è assolutamente normale!) non solo continua a tentare gli invii, ma tutti i successivi errori dovuti al blocco sono interpretati come destinatari inesistenti, causando la cancellazione delle rispettive email di destinazione dai successivi invii. In pratica, l’errore temporaneo si è trasformato in errore definitivo!!

Dopo avere esposto il problema al mio provider, la sua proposta è stata quella di richiedere un IP dedicato, che cioè andrebbe a gestire solo le email del mio dominio, e dunque non avrebbe i problemi legati alla difesa di una reputazione condivisa. Peccato che una soluzione del genere costi ben di più del piano di hosting che sto usando!

Sulla strada della soluzione

Allora mi sono messo in cerca, ed ho trovato un servizio (Mailgun) che offre ben 10.000 email/mese gratis, e dovendone spedire di più, si può pagare a consumo. Non è meraviglioso? La lista di email a cui spedire la mia newletter, che ho accumulato in più di dieci anni, è di 4000 indirizzi, ce la faccio benissimo! Però… neanche Mailgun è esente dalle problematiche di reputazione, per cui a sua volta pone un limite di non più del 5% di email errate o inesistenti, anche se per fortuna non conta come errori quelle ritardate a causa di Greylist. Ed è più che normale che molte delle email che ho collezionato in tanti anni non esistano più.

La bonifica delle email inesistenti

Ancora una volta, ho trovato la strada grazie ad una ricerca Internet che, oltre ad alcuni servizi on-line come Hippo e Tester, mi ha condotto ad uno script in grado di verificare autonomamente se una email esiste o meno, senza doverla necessariamente spedire. L’ho modificato un po’ per permettermi di usarlo su di un intera lista di email, e con questo post ne condivido con voi la sua versione attuale, mediante la quale gestire anche la problematica del greylisting, semplicemente ripetendone l’esecuzione per i soli indirizzi a cui viene risposto con un codice di fallimento temporaneo. In questo modo ho in pratica dimezzato il mio elenco iniziale!

Nuovi PDF pronti da scaricare

Non si tratta di nuove edizioni, ma di revisioni di materiale già pubblicato in formato HTML o riservato ai sostenitori. Si tratta dei testi

Lo strato applicativo di Internet e

Accesso WiFi alla rete Internet

i cui links interni sono stati aggiornati con il nuovo dominio teoriadeisegnali.it. L’edizione 1.7 del primo dei due era disponibile solo per i sostenitori del progetto culturale, ma in segno di festa per il passaggio al nuovo dominio, ne ho reso disponibile il download gratuito per tutti, seguendo il link su riportato, che conduce alla sezione Vetrina del sito.

Quanto al testo sul WiFi, si tratta del formato PDF delle pagine in cui ho raccolto i contenuti realizzati nell’ambito di un modulo didattico di 3 crediti, erogato negli anni 2006-2007; pertanto, non sono trattati gli sviluppi più recenti come gli emendamenti n ed ac. Ma non è detto che in futuro non li affronti!

Quanto al resto dei lavori in corso:

  • ora chi si reca sulle pagine dei libri sui Segnali e su Internet si trova rediretto alla stessa pagina ospitata presso questo nuovo dominio;
  • è stata configurata la search console di Google, e comunicata la sitemap.xml;
  • la pagina di rientro da Paypal punta al nuovo dominio;
  • le richieste http:// sono tutte mappate verso https://, mentre quelle per www.teoriadeisegnali.it perdono il www iniziale;
  • anche il Blog dei Segnali ha ora il suo banner di accettazione cookie, e la relativa policy è stata aggiornata;
  • è stato sperimentato il componente newsletter utilizzando per ora l’elenco dei sostenitori economici del progetto.

Chissà, forse prima o poi troverò anche il tempo di inserire le correzioni individuate nell’ultimo anno?

 

Habemus Bottega

Fino ad ora ho raccolto donazioni tramite Paypal, era un meccanismo contorto per cui chi inviava il suo contributo poi doveva aspettare l’email con la password per dezippare il download, che inviavo io personalmente.

Quindi quel che mi serviva era solo un meccanismo che automatizzasse la cosa, ma anziché progettarlo e svilupparlo da me, come avrei fatto un tempo, mi sono affidato a quel che offre il servizio di installazione pacchetti del mio fornitore di hosting. Dopo aver pensato e poi scartato l’idea di un plugin per WordPress, mi sono orientato su di una applicazione a se stante, personalizzabile ma non troppo complessa.

Ne è uscito fuori un negozietto niente male! Il risultato è ottenuto utilizzando Cubecart con tema e-Shift personalizzato (chiedeva un sacco di cose!), e scegliendo come gateway monetario Stripe. Ma beninteso, io do via tutto gratis! Se poi qualcuno mi vuole supportare con una donazione, mi sembra anche cosa buona e giusta 🙂

Ho anche lavorato sulla traduzione, per fortuna era già tutta fatta, ma quà e la qualcosa era saltato, e poi ho cambiato po’ il mood di qualche frase. L’unica pecca è che ora non ho più Paypal, ma credo di poter configurare un secondo gateway 🙂

Diciamo che ora posso anche procedere con i famigerati Redirect dal vecchio sito che avevo in programma! Ah beh ancora no, devo prima armonizzare questo nuovo componente con le opzioni di download e donazione già presenti…

Dove eravamo arrivati

Spostare i contenuti offerti su infocom presso il nuovo dominio teoriadeisegnali.it significa farsi carico di una sorta di scommessa: riusciranno i motori di ricerca a seguire il trasloco, oppure andranno attuate strategie particolari per trasferire anche la reputazione conquistata?

Per poter rispondere, occorre quantomeno conoscere i dati da cui si parte, ed in rete il concetto di reputazione è direttamente collegato al numero di visite che i motori di ricerca portano alle proprie pagine. Quelli che seguono sono i dati presentati dalla search console di Google e relativi agli ultimi 12 mesi per il dominio http://infocom.uniroma1.it/alef:

Traffico annuale per alef@infocom

Oltre al trend in crescita, osserviamo una media di 243 visite/giorno, o sopra le 300 negli ultimi sei mesi.

Se poi limitiamo la query al solo sotto-dominio che ospita le pagine del formato HTML del libro sui Segnali e Sistemi, ovvero il 68% delle visite totali, le visite medie giornaliere scendono a 164, e migliora sia il Click Through Rate (da 5.8 a 7.7%) sia la posizione media (da 17.8 a 8.6).

traffico annuale per libro@infocom

Il terzo contenuto che è stato monitorato corrisponde al libro su Lo strato applicativo di Internet, che nonostante non sia stato particolarmente promosso o evidenziato, detiene comunque il 13% delle visite, con una media di 33 al giorno.

Il dato sulla posizione media è piuttosto basso, con il 23,1 si rimane confinati nella seconda pagina dei risultati della ricerca. Vedrò di curare meglio l’aspetto SEO! 🙂

Abbiamo una home

Arrivando su https://teoriadeisegnali.it ora appare la nuova homepage completa di una bella animazione, e strutturata per gradi: per fortuna mi sono lasciato guidare dal template di html5up, in pratica ho solamente dovuto cambiare il testo e le immagini, che ho preso da unsplash. Che ne pensate? Ci sono suggerimenti?

Ecco, ora che ho configurato anche il plugin di condivisione, posso iniziare a sperimentare il cross-posting tra il Blog e Facebook!

Sviluppi

Dopo aver convertito il set dei caratteri del Wiki, corretto spero tutti i collegamenti, e recuperate anche vecchie cose come Sapientel e ReadMyFeed, ho migrato anche lo storico sito del Laboratorio Telematico dribblando PhpNuke mediante uno snapshot realizzato mediante con wget.

Così, oltre ad Infocom, potrà andare in pensione anche Labtel, l’ultimo computer sopravvissuto del laboratorio, che ha sempre ospitato anche il gestore di Mailing List Mailman. Il mio attuale piano di hosting non supporta Mailing List, ma ne farò a meno grazie ad un gestore di Newsletter, anche perché in fin dei conti, non mi è mai servita una mailing list che re-inviasse a tutti i messaggi di tutti, mentre i miei annunci di nuova versione sono sempre stati unidirezionali.

E poi nell’era di Facebook e delle chat Whatsapp una lista email è antiquariato, mentre la componente social che finora mancava potrà essere sopperita dalla community che si potrebbe sviluppare attorno al Blog.

Ora quello che manca potrebbe essere una bella Home che tiene tutto assieme, penso che procederò adattando qualche bel template responsivo animato e schematico, sto studiando questi.

 

Attivato il feed da Facebook

Uno dei tanti passi per gestire il cambio di dominio, è quello di mescolare le fonti informative. Qui sotto troviamo i post di FB comparire nel blog, poi avverrà il viceversa 🙂

Unable to display Facebook posts.
Show error

Error: Error validating access token: The session has been invalidated because the user changed their password or Facebook has changed the session for security reasons.
Type: OAuthException
Code: 190
Subcode: 460
Please refer to our Error Message Reference.