Tovább a tartalomhoz

MailAudit: levélkézbesítés tesztelése

A MailAudit egy egyedi tesztcímre küldött levélből megmutatja, hogy az SPF, a DKIM, a DMARC, a spamszűrés, a feketelista és az rDNS rendben van-e.

A MailAudit (mailaudit.io) levélkézbesítést tesztelő webes szolgáltatás. Egy egyedi tesztcímre küldesz levelet a saját szerveredről, és megkapod az elemzést: miért menne spamba, vagy miért nem érkezik meg. WordPress-oldalnál ezzel derül ki, hogy az űrlapok, a jelszó-visszaállítás és a rendelési értesítők levelei megfelelnek-e a fogadó szerverek elvárásainak.

A főoldal hat ellenőrzést sorol fel:

Ellenőrzés Mit vizsgál
SPF Jogosult-e a küldő szerver a domain nevében levelet küldeni.
DKIM Érvényes-e a levél digitális aláírása.
DMARC Mit ír elő a domain szabályzata, ha a hitelesítés elbukik.
SpamAssassin A spamszűrő pontszáma, részletezve.
Blacklist A küldő IP-címe vagy domainje rajta van-e a 32 ellenőrzött feketelista valamelyikén.
rDNS Az IP-cím fordított DNS-bejegyzése és a HELO-köszönés.
  1. Nyisd meg a mailaudit.io főoldalt. A Send an email to this address: felirat után a rendszer automatikusan létrehoz egy egyedi címet (amíg készül, Generating… áll ott).
  2. Másold ki a címet, és küldj rá egy levelet a saját szerveredről. Ugyanonnan küldd, ahonnan az éles leveleid mennek, mert a teszt a küldő szervert méri.
  3. Várd meg az elemzést, majd olvasd el az eredményt és a pontszámot.

A főoldal szerint az elemzés a levél beérkezése után 5 másodpercen belül kész van. A teszt a következő szakaszokon megy végig: levél fogadása, SPF, DKIM, DMARC, feketelista, SpamAssassin, tartalomelemzés, pontszámítás. Az oldal a tesztcímek lejáratát nem írja le a felületen, az API-leírás szerint viszont a tesztcím egy óráig érvényes, ezért a címet közvetlenül használat előtt generáld.

A főoldal a tesztcímet belépés nélkül mutatja; regisztrációról a felület nem ír. Az API-hoz kulcs kell (lásd lent).

A MailAudit az eredményt 0 és 10 közötti pontszámmal adja (az API score mezője). Ellenőrzésenként ezt érdemes nézni:

  • SPF: hibát akkor kapsz, ha a küldő szerver IP-címe nincs a domain SPF-rekordjában. Javítás: vedd fel a szervert, vagy a levélküldő szolgáltatás include: bejegyzését a DNS-ben lévő TXT rekordba.
  • DKIM: hibát akkor kapsz, ha a levél nincs aláírva, vagy az aláírás nem egyezik a DNS-ben közzétett kulccsal. Javítás: kapcsold be az aláírást a levélküldő szolgáltatónál, és add hozzá a kapott DKIM-rekordot a DNS-hez.
  • DMARC: a domain szabályzatát mutatja. Ha nincs DMARC-rekord, vagy az SPF és a DKIM sem illeszkedik a feladó domainjéhez, a szabályzat nem tud működni.
  • SpamAssassin: minél magasabb a pontszám, annál inkább spamnek tűnik a levél. A részletezés megmutatja, mely szabályok adtak pontot, ezeket a levél tartalmában vagy a fejlécében lehet javítani.
  • Blacklist: ha a küldő IP vagy domain szerepel valamelyik listán, az eredmény megnevezi a listát. Törlést a lista üzemeltetőjétől kell kérni.
  • rDNS: az IP-címhez tartozó PTR-rekordnak és a szerver HELO-nevének egyeznie kell a szerver nevével. A PTR-rekordot a szerver szolgáltatója állítja be.

Az oldal tudásbázisa (Email Knowledge Base, a főoldalon a Authentication, Deliverability, Technical, Security szűrőfülekkel) mindegyik fogalmat külön magyarázza. A hibák kijavítása után küldj új tesztlevelet, és hasonlítsd össze a két eredményt.

Az oldal a leveleit a wp_mail() függvénnyel küldi, ezt használja a jelszó-visszaállítás, az űrlapbővítmények és a WooCommerce is. A tesztcímre többféleképp küldhetsz:

  1. Jelszó-visszaállítás. Hozz létre (vagy módosíts) egy felhasználót, akinek az e-mail-címe a MailAudit tesztcíme, majd a belépőoldalon kérj jelszó-visszaállítást ehhez a felhasználóhoz.
  2. WooCommerce-rendelés. Tesztrendelést a tesztcímmel add le, így az értesítő levél oda megy. Éles boltban ne csinálj tesztrendelést.
  3. SMTP-bővítmény tesztküldője. A legtöbb SMTP-bővítmény tud tesztlevelet küldeni egy általad megadott címre. Add meg a MailAudit címét.
  4. WP-CLI. Bedrock-oldalon a web könyvtárból:
Terminál
wp eval 'var_dump( wp_mail( "[email protected]", "Teszt", "Tesztlevél" ) );'

A [email protected] helyére a főoldalon generált címet írd. Az eredmény bool(true), ha a WordPress átadta a levelet a küldésnek, ez azonban még nem jelenti, hogy meg is érkezett: a kézbesítést a MailAudit mutatja.

  • Az SPF-ben nincs benne a szerver. A levél a tárhely szerveréről megy, de a DNS-ben az SPF-rekord csak a külső szolgáltatót (például a levelezőrendszert) engedi. Vedd fel a küldő szervert is, de egy domainhez csak egy SPF-rekord lehet.
  • Hiányzó DKIM. A WordPress alapból aláíratlanul küld. Használj SMTP-bővítményt vagy levélküldő szolgáltatást, amely aláír, és tedd közzé a kulcsot a DNS-ben.
  • A feladó címe idegen domainen van. Ha a „Feladó” cím domainje nem egyezik a küldő szerverével, az SPF és a DKIM nem illeszkedik, a DMARC pedig elbukik.
  • Hiányzó PTR-rekord. Az rDNS-hibát a szerver szolgáltatójánál kell javíttatni.

Az oldal API-t is kínál (https://api.mailaudit.io/api/v1), a leírása az API-dokumentációban van. Az API-kulcshoz regisztráció kell, a kulcsot az irányítópulton lehet létrehozni. A tesztcím generálása (POST /test/generate) és az eredmény lekérdezése (GET /test/{testId}) is elérhető, így a tesztet szkriptből vagy CI-ból is futtathatod. Vannak külön lekérdezések az MX-rekordra, a feketelistára és a domain hírnevére is. A kulcsra 60 kérés/perc és 1000 kérés/nap korlát vonatkozik. A kulcsot ne tedd böngészőben futó kódba.

A feketelistákat és a DNS-rekordokat más eszközzel is ellenőrizheted, lásd az MXToolbox cikkét. Ha fejlesztés közben csak a levél tartalmát és fejlécét akarod látni, a Mailpit a helyi környezetben erre való.

  • A teszt a küldő szervert méri, ezért ugyanonnan küldj, ahonnan az éles levelek mennek.
  • A tesztcímre ne küldj valódi ügyféladatot tartalmazó levelet: használj kitalált tartalmat.
  • DNS-módosítás után várd meg a terjedést, és csak aztán küldj új tesztet.

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások