Email Marketing v eShope Turingion – pokračovanie

Pri konfigurácií mailového servera resp. riešení dôveryhodnosti sa nám určite ešte hodí vedieť spôsob ako si správnosť našich krokov a celkové fungovanie overíme. Dobre nám na to poslúži Gmail. Stačí, keď odoslaný mail z konfigurovaného servera otvoríme v Gmail schránke. Následne po kliknutí na možnosť “Show original”:

image

Sa nám zobrazí nasledovný zdrojový kód emailu:

image

Kde vidíme že Gmail za nás overil/neoveril správnosť nastavenia SPF a DKIM (v tomto prípade overil Úsmev pass).

Email Marketing v eShope Turingion

Aby naši klienti mohli naplno využiť e-mail marketing a to bez horibilných poplatkov za mailové služby typu SendGrid, MailChimp, rozhodli sme sa implementovať/rozbehnúť vlastný mailový server (komponent e-Mail Marketing v našom eShope). Pre predstavu Sendgrid si účtuje $80 mesačne za 100tis. mailov (o slovenských firmách a ich cenách ani nehovorím, veď posúďte sami email marketing site:sk), čo je naozaj veľa, keď vezmem do úvahy, že je celkom bežné (aj u našich klientov), že ich mailing listy obsahujú bežne 50tis adries. To by si klient poslal 2 newslettre mesačne za $80 a dosť. Pre klientov, ktorí dostávajú nový tovar 2-krát do týždňa a chcú o tom informovať svojich zákazníkov prostredníctvom e-mailu, sme vyšli v ústrety a rozbehli vlastný mailový server, vďaka čomu nie sú naši klienti obmedzení počtom odoslaných emailov. Ale čo je najdôležitejšie, majú túto službu bez obmedzení zadarmo (resp. v cene balíka).

Mail Server – konfigurácia

Konfigurácia mailového servera je téma tiež zaujímavá na rozpísanie (možno nabudúce). V tomto poste by som sa chcel zamerať na iný problém, ktorý s vlastným mailovým serverom prichádza. Ku konfigurácií mail servera len spomeniem oblasti/komponenty, s ktorými sa treba zaoberať:
V prvom rade treba mať server (virtuálny, dedikovaný, v cloud-e) a následne si vybrať jeden z dostupných mail serverov alias mail aplikácií. V našom prípade to bol ***** bohužiaľ kvôli bezpečnosti to neuvediem. O bezpečnosti mailového servera ešte určite napíšeme minimálne jeden článok, pretože to je dôležité a stojí to za zmienku. S bezpečnosťou na “mailovom” porte 25 sa stretávame každý deň.
Ale vráťme sa nazad. Ďalej je potrebné mať rozbehnutý nejaký databázový server, v našom prípade MsSQL, s ktorým bude mail služba pracovať. Po inštalácii nasleduje dlhá konfigurácia a testovanie :

  • DNS nastavenia domén – MX záznamy,
  • konfigurácia mailových schránok na mail servery info@vasadomena.sk, vasemeno@vasadomena.sk, …
  • protokoly a porty – 25, ***, ***, + šifrované porty ***, ***, ***
  • firewall,
  • certifikáty SSL,
  • z bezpečnosti napr. spam-assasin, antivírus
  • filtrovanie cez blacklisty …
  • nastavenie pravidiel pre bodovanie SPAMu
  • logovanie,

A určite veľa ďalších vecí, na ktoré si momentálne nespomeniem … neskôr sa zamyslím a asi ešte pár blog postov o tom spíšem. Ale ani o konfigurácií som nechcel hovoriť. Chcel som trocha načrtnúť problematiku dôveryhodnosti mail servera pre ostatné mail služby ako Gmail, Hotmail (Outlook, LiveMail … proste Microsoft mail Hnev), a slovesné ako Azet, Centrum …

Mail Server – dôveryhodnosť

Rozbehnúť mail server bola jedna vec, no v krátkej dobe sa ukázalo, že z ostatných mailových služieb prichádzali chybové kódy o nemožnosti doručiť e-mail. A čo bolo zvlášte, tak chyby prichádzali sporadicky. Až vďaka Gmailu sme tento problém vyriešili. Aj keď musím povedať, že support od Google je nepoužiteľný, teda aspoň pre nás bol. Asi sme im nestáli za to, aby sa obťažovali a odpovedali na naše emaily, ktorých bolo požehnane.
No vďaka ich Google Knowledge Base sme nasledovný problém vyriešili.
Jediný Gmail nás upozornil na problém v našich mailoch nasledovnou hláškou “550-5.7.1 message is likely unsolicited mail. To reduce the amount of spam sent to Gmail, this message has been blocked. Please visit http://support.google.com/mail/bin/answer.py?hl=en&answer=188131 for more information.” po kliknutí sa url sa dostaneme na Google KB, konkrétne článok Bulk Senders Guidelines, podľa ktorého nám chýbali nasledovné 3 veci:

  1. podpísanie emailu pomocou DKIM
  2. nastavenie SPF záznamov na naše domény
  3. nastaviť DMARC policy

Keďže v tejto oblasti sme mali medzery, museli sme najskôr naštudovať danú problematiku, aby sme to doklepli do úspešného konca. V skratke ide o toto:

 

1. DKIM

Ide o podpísanie emailu private kľúčom a vypublikovanie public kľúča do TXT záznamov. Prijímateľ si tak ľahko vie spojiť private a public key a následne otvoriť email. Ideálne je vygenerovať kľúče o sile 1024 bajtov a viac, napr . pomocou Open SSL alebo online cez tool stavaný priamo na generovanie kľúčov pre DKIM - port25.com. Kľúče vyzerajú napr. nasledovne:

-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC99PThBf099kgR8mnsAwqkpzBr
5geiVkqeUABUMErFSsaTrRgtUCRkgSHbHHBT0OwY6aCd8TDZh7ekvwTJ/0SK3/Xm
ihzfVZANT4l4CIdvBj1GDFQ7PzNIXQwvDcE9St3kw5MDyirIdA9xUVUc6xze4T2A
yqM3fIsCNUSr6ksBDQIDAQAB
-----END PUBLIC KEY-----
-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQC99PThBf099kgR8mnsAwqkpzBr5geiVkqeUABUMErFSsaTrRgt
UCRkgSHbHHBT0OwY6aCd8TDZh7ekvwTJ/0SK3/XmihzfVZANT4l4CIdvBj1GDFQ7
PzNIXQwvDcE9St3kw5MDyirIdA9xUVUc6xze4T2AyqM3fIsCNUSr6ksBDQIDAQAB
AoGAfbcZPbeGAzT0O5Rwj3bv20qe3DnvwXtUhPOzVARl5652P5PmFU8d1rozmtx2
ZrI1HsO3ve+7Aaw1WL3mwHzFcfEfpgc1c+CtcdgU6ehWQ1qDI2ZtrwkxIZX0CaEz
XCxT7GRgSNmyfXf7qSJ2DVJrxcLTuPgdZgSOVUxw02DG0UECQQD7effWpv+s/MM2
CZUApY88ycXAcJgXabkAoExgGiZ26xlimr7mgu7EbK+9JCQV1U+A9e0+vMcnJiuh
MWd2vFzxAkEAwV+x6ge5gV1SXZh/2+pH5hMKYhBJEEiPlbYV6im78L6/7TRGviH/
Suya2/A8qlP4tG58RlPj2/5Yhklqgv8V3QJBALm1F3X3u0X3Hv2v0843dPCyHIwB
Wf+oPkudFOm/Rfp5oTR1DFbUCBkcHidyIgfRj7WvZvT2madqg7u07S/86DECQA03
/XGCFaxCNN8xDYx6929C3fLWKihyzV3ulJDtSWurnnMYn71flZQJmIxwX7VFCDtN
UjF8ipb/TA3h9uX9igECQQCobXaHmcXiBDPvCnVQCyoDol1ecpTkpahE5luEAQ3z
uXewFoQ+vI8c6jfnDY5DaMzjgVltAdJKAvC4utJzylia
-----END RSA PRIVATE KEY-----

Private Key je potrebné uložiť do súboru a zimplementovať na mail servery, aby bol súčasťou každého odoslaného emailu.
Public key je potrebné vložiť do TXT záznamov v tvar:

server1._domainkey.vasadomena.sk IN TXT
"k=rsa\; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC99PThBf099kgR8mnsAwqkpzBr5geiVkqeUABUMErFSsaTrRgtUCRkgSHbHHBT0OwY6aCd8TDZh7ekvwTJ/0SK3/XmihzfVZANT4l4CIdvBj1GDFQ7PzNIXQwvDcE9St3kw5MDyirIdA9xUVUc6xze4T2AyqM3fIsCNUSr6ksBDQIDAQAB"

 

2. SPF

Ide o pomerne jednoduchú vec, v skratke povedané : pomocou TXT záznamov vieme nadefinovať server, z ktorého je email odoslaný. Slúži to ako určitý stupeň bezpečnosti z kategórie Domain-based. Kedy na doméne nastavujeme server, ktorý je oprávnený odoslať email z danej domény a žiaden iný. Pri definovaní nám pomôže nasledovný tool - SPF Record Testing Tools.

 

3. DMARK policy

Je opäť ďalší stupeň zabezpečenia z kategórie Domain-based authentication. Ide o nadstavbu pre DKIM a SPF, ktorú definujeme opäť pomocou TXT záznamov. Technika je pomerne dobre rozpísaná na dmarc.org.

 

Ta-dá!

Po týchto krokoch môžete veselo odosielať tisíce mailov a mať istotu, že skončia v mailovej schránke prijímateľa a nie v spam filtri mailového servera.