Salt la conținut

Ghid MX și SMTP

Ghid de instrument. Actualizat .

Cum rutează înregistrările MX e-mailul, ce verifică XGM MX și SMTP în DNS și prin SMTP pentru fiecare server de mail și cum corectați greșelile.

Ce fac înregistrările MX

Când cineva trimite un mesaj către anna@example.com, serverul său de mail interoghează înregistrările MX ale domeniului example.com. Fiecare înregistrare numește un server de mail și o valoare de preferință. Expeditorul încearcă mai întâi serverul cu valoarea cea mai mică și trece la următorul dacă nu se poate conecta.

RFC 5321 §5.1 descrie acest proces, inclusiv o soluție de rezervă: dacă un domeniu nu are deloc înregistrări MX, expeditorii încearcă livrarea către adresa A sau AAAA a domeniului însuși. Astăzi această rezervă ajunge foarte rar la un server de mail real, iar acesta este motivul pentru care o înregistrare MX lipsă este o problemă chiar și pentru domeniile care au un site.

Livrarea mailului folosind înregistrările MXServerul expeditor interoghează înregistrările MX, le sortează după preferință, rezolvă numele de gazdă al primeia către o adresă și se conectează pe portul 25, încercând gazda următoare dacă nu reușește.Interoghează MX pentru example.com10 mx1.example.com, 20 mx2.example.comSortează după preferințăNumărul cel mai mic primul: mx1 (10), apoi mx2(20)Rezolvă mx1.example.comA 192.0.2.25 / AAAA 2001:db8::25Conectare pe portul 25STARTTLS dacă este oferit; livrează mesajulLa eșec, încearcă mx2Erorile temporare sunt reîncercate mai târziu,adesea zile la rând
Serverul expeditor interoghează înregistrările MX, le sortează după preferință, rezolvă numele de gazdă al primeia către o adresă și se conectează pe portul 25, încercând gazda următoare dacă nu reușește.

Cum folosiți MX și SMTP

  1. Deschideți MX și SMTP și introduceți partea de după @ dintr-o adresă de e-mail, de exemplu example.com.
  2. XGM preia înregistrările MX și le sortează după valoarea de preferință.
  3. Pentru cel mult cinci gazde MX, rezolvă înregistrările A, AAAA și CNAME pentru a verifica dacă fiecare țintă este un nume de server de mail utilizabil.
  4. Pentru primele trei gazde, serverul XGM deschide o sesiune SMTP pe portul 25: banner, EHLO, STARTTLS cu certificatul, DNS invers și un test de relay.
  5. Citiți constatările, apoi continuați cu Rulează următorul pentru a verifica SPF, DMARC sau starea domeniului pe listele negre.

Mesajele de expirare numesc serverul și timpul de așteptare: XGM acordă fiecărui server 6 secunde. Un server care răspunde propriului dumneavoastră mail, dar nu și XGM, poate bloca rețeaua XGM, așa că verificați o expirare printr-un mesaj trimis dintr-un cont din exterior înainte de a schimba ceva.

Cum citiți înregistrările MX

Înregistrări MX cu rezervă
example.com. 3600 IN MX 10 mx1.example.com.
example.com. 3600 IN MX 20 mx2.example.com.
mx1.example.com. 3600 IN A 192.0.2.25
mx2.example.com. 3600 IN A 198.51.100.25
Valorile de preferință
ConfigurațieÎnregistrăriComportament
Principal și rezervă10 mx1, 20 mx2mx2 este folosit doar când mx1 nu poate fi contactat
Partajarea încărcării10 mx1, 10 mx2Expeditorii aleg singuri între valori egale
Furnizor găzduitUnul sau mai multe nume de gazdă ale furnizoruluiFurnizorul asigură redundanța în spatele numelor
Null MX0 .Domeniul nu acceptă niciun mail (RFC 7505)

Valorile de preferință sunt relative; contează doar ordinea lor. 10 și 20 se comportă exact la fel ca 1 și 2. Furnizorii găzduiți de cutii poștale vă spun exact ce înregistrări să publicați, iar amestecarea înregistrărilor lor cu cele vechi, rămase de la un furnizor anterior, vă împarte mailul între două sisteme.

Ce înseamnă constatările

Constatări MX și SMTP
ConstatareGravitateRemediere
Nicio înregistrare MX (domeniul are o înregistrare A)AvertismentPublicați înregistrările MX ale furnizorului de mail; rezerva pe înregistrarea A funcționează rar.
Nicio înregistrare MX (nicio înregistrare A)CriticMailul către domeniu nu poate fi livrat; publicați înregistrări MX sau un null MX.
MX indică o adresă IPCriticFolosiți un nume de gazdă cu înregistrări A/AAAA (RFC 5321 §5.1).
Gazda este un CNAMEAvertismentÎndreptați MX către numele canonic al gazdei (RFC 2181 §10.3).
Gazda nu are înregistrare A sau AAAACriticAdăugați înregistrările de adresă sau corectați numele gazdei.
Gazda nu a putut fi rezolvatăAvertismentEroare temporară de interogare sau delegare stricată; verificați din nou.
Null MXInfoCorect pentru domeniile care nu primesc niciodată mail.
O singură gazdă MXInfoÎn regulă la furnizorii mari; instalările găzduite pe cont propriu adaugă deseori o a doua gazdă.
n servere de mail se rezolvă corectTrecutȚintele MX sunt nume de gazdă utilizabile.

Testul SMTP

DNS-ul spune doar unde ar trebui să ajungă mailul. Testul SMTP verifică ce găsește un server expeditor atunci când ajunge acolo. XGM se conectează la fiecare server de mail pe portul 25 prin garda sa de trafic ieșit, citește bannerul de întâmpinare și trimite EHLO pentru a afla extensiile acceptate. Dacă serverul oferă STARTTLS, XGM ridică conexiunea, verifică certificatul față de numele gazdei și notează versiunea TLS și cifrul.

Testul de relay cere serverului să accepte un mesaj de la xgm-relay-test@example.org către xgm-relay-test@example.net, două domenii de exemplu rezervate care nu aparțin nimănui. Un server de mail trebuie să refuze asta, fiindcă niciuna dintre adrese nu este a lui; dacă răspunde la RCPT TO cu un cod 2xx, este un open relay, iar spamerii îl vor găsi. XGM trimite imediat după aceea RSET și QUIT, așa că niciun mesaj nu este trimis vreodată (nu emite niciodată DATA).

Constatări SMTP
ConstatareGravitateRemediere
Niciun server de mail nu a răspuns pe portul 25CriticVerificați firewallurile și faptul că MTA ascultă pe portul 25.
Serverul nu oferă STARTTLSCriticActivați TLS cu un certificat care acoperă numele gazdei MX (RFC 3207).
Certificat în care nu se are încredereAvertismentFolosiți un certificat de la o CA publică, care acoperă numele gazdei MX.
S-a negociat TLS 1.0 sau 1.1AvertismentActivați TLS 1.2 și 1.3 (RFC 8996).
Open relayCriticPermiteți relay doar pentru utilizatorii autentificați și pentru rețelele proprii.
Fără DNS invers sau PTR care nu se rezolvă înapoiAvertismentCereți proprietarului blocului de IP să seteze un PTR care corespunde numelui gazdei.
AUTH oferit pe portul 25InfoOferiți autentificarea clienților pe portul 587 sau 465 în schimb.

Porturile 465 (TLS implicit) și 587 (submission) sunt pentru clienții de mail, nu pentru livrarea de la server la server. XGM testează doar dacă acceptă o conexiune TCP și arată rezultatul în tabel. Un MX securizat, cu un certificat valid, este și baza de care are nevoie MTA-STS înainte să îl impuneți.

Greșeli frecvente la MX

Înregistrări rămase de la un furnizor vechi

După o migrare, înregistrările MX vechi, cu o valoare de preferință mai mare, sunt uneori păstrate "ca rezervă". Expeditorii care nu ajung o clipă la noul furnizor livrează atunci către cel vechi, unde nimeni nu mai citește mailul. Ștergeți înregistrările MX vechi după ce migrarea s-a încheiat.

Un MX de rezervă care acceptă orice

Un server de mail secundar care acceptă mail pentru orice adresă, fără să știe ce cutii poștale există, devine o țintă pentru spameri, care folosesc deliberat rezerva ca să ocolească filtrarea serverului principal. Fie configurați rezerva cu aceleași verificări de destinatar și aceleași filtre, fie vă bazați pe coada de reîncercări a expeditorului în locul unui MX de rezervă.

Uitarea unui null MX pe domeniile parcate

Domeniile folosite doar pentru site-uri sau păstrate defensiv ar trebui să publice un null MX, o înregistrare SPF v=spf1 -all și o înregistrare DMARC cu p=reject. Null MX oprește expeditorii să reîncerce livrarea zile la rând, iar celelalte două opresc falsificarea identității.

Domeniu parcat care nu trimite și nu primește mail
example.org.        IN MX  0 .
example.org.        IN TXT "v=spf1 -all"
_dmarc.example.org. IN TXT "v=DMARC1; p=reject;"

Înregistrări MX pentru subdomenii

Înregistrările MX nu se moștenesc. Un mesaj către alerts@status.example.com este rutat de înregistrările MX ale domeniului status.example.com, nu ale lui example.com. Dacă subdomeniul nu are MX, dar are o înregistrare A, expeditorii cad înapoi pe acea adresă, care de obicei este un server web ce nu acceptă mail.

Decideți pentru fiecare subdomeniu în parte dacă ar trebui să primească mail. Subdomeniile folosite ca adrese expeditoare pentru notificări au adesea nevoie să primească mesaje returnate și răspunsuri, așa că dați-le înregistrări MX care indică furnizorul dumneavoastră de mail. Subdomeniile care găzduiesc doar site-uri pot publica un null MX, ceea ce împiedică mailul trimis către ele să stea zile întregi în cozile expeditorilor.

Verificați cu MX și SMTP fiecare subdomeniu expeditor, nu doar domeniul principal. O platformă de newsletter care trimite ca news.example.com fără un MX funcțional pentru acel nume pierde fiecare răspuns trimis de un abonat.

Dincolo de MX: restul configurării de mail

Înregistrările MX aduc mailul la dumneavoastră. Dacă mailul trimis de dumneavoastră este de încredere depinde de SPF, DKIM și DMARC, iar dacă ajunge criptat depinde de TLS pe gazdele MX, impus opțional cu MTA-STS. Un domeniu poate avea înregistrări MX impecabile și mailul său de ieșire poate fi totuși respins.

Întrebări frecvente

Ce înseamnă numărul de preferință MX?

Expeditorii încearcă mai întâi numărul cel mai mic. Numerele egale împart încărcarea. Valorile în sine nu contează, ci doar ordinea lor.

Poate o înregistrare MX să indice o adresă IP?

Nu. Țintele MX trebuie să fie nume de gazdă care au înregistrări A sau AAAA. O adresă IP într-o înregistrare MX este invalidă, iar mulți expeditori nu vor livra către ea.

Poate o gazdă MX să fie un CNAME?

Nu ar trebui. RFC 2181 spune că țintele MX nu au voie să fie alias-uri. Mulți expeditori urmează totuși aliasul, dar unii nu, așa că îndreptați MX către numele canonic.

Ce este un null MX?

O înregistrare MX cu preferința 0 și ținta ., definită în RFC 7505. Le spune expeditorilor că domeniul nu acceptă niciun mail, așa că aceștia returnează imediat un mesaj de eroare.

Am nevoie de două înregistrări MX?

Nu la furnizorii găzduiți mari, ale căror nume de gazdă sunt susținute de infrastructură redundantă. Mailul găzduit pe cont propriu folosește adesea un al doilea MX, care trebuie să filtreze la fel de bine ca cel principal.

Cât durează schimbările de MX?

Cât TTL-ul înregistrărilor vechi. Serverele expeditoare reîncearcă și livrările eșuate, așa că mailul din timpul unei schimbări este de obicei întârziat, nu pierdut.

Testul SMTP trimite un e-mail?

Nu. Se conectează, citește bannerul, ridică conexiunea cu STARTTLS și testează relay-ul cu MAIL FROM și RCPT TO, apoi resetează și închide sesiunea înainte de DATA, așa că niciun mesaj nu este transferat.

Surse