SPF, DKIM и DMARC: как да спрете писмата си да отиват в спам

October 26, 202612 мин. четене
SPF, DKIM и DMARC: как да спрете писмата си да отиват в спам
.cr-lock{transform-origin:center;animation:crLock 2.4s ease-in-out infinite} @keyframes crLock{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}} .cr-art pre{background:#140f24;color:#e9e4ff;padding:16px;border-radius:12px;overflow-x:auto;font-size:14px;line-height:1.5}

Накратко: SPF, DKIM и DMARC са три DNS записа, които доказват, че писмата от вашия домейн наистина идват от вас. SPF посочва кои сървъри имат право да изпращат поща от името на домейна. DKIM добавя цифров подпис към всяко писмо, който показва, че то не е подменено по пътя. DMARC казва на получателите какво да правят с писма, които не минават проверките, и ви изпраща отчети. Заедно те намаляват шанса писмата ви да попадат в спам и пречат на измамници да пишат от ваше име. Настройват се за минути в DNS зоната на домейна.

Защо пощата има нужда от защита

Имейлът е създаден без вградена проверка на подателя, затова всеки може да напише в полето „От“ какъвто адрес пожелае. Измамниците използват това, за да изпращат писма, които изглеждат като от вашата фирма: фалшиви фактури, искания за плащане, връзки към подправени сайтове.

Пощенските услуги се защитават, като проверяват дали писмото наистина идва от домейна, който твърди. Ако домейнът ви няма SPF, DKIM и DMARC, те не могат да разберат кое писмо е истинско и кое не. Резултатът е двоен проблем: вашите истински писма по-често попадат в спам, а фалшивите имат по-голям шанс да стигнат до клиентите ви.

Днес големите пощенски услуги изискват тези записи от подателите, особено от тези, които изпращат много писма. Затова настройката им вече не е „допълнителна екстра“, а основна част от всеки имейл с домейн.

Има и още една полза, за която рядко се говори. Когато домейнът ви е защитен, измамните писма от ваше име спират още при сървъра на получателя. Така клиентите ви не получават фалшиви фактури с вашето лого, а репутацията на марката ви остава чиста. За малкия бизнес това често струва повече от самата доставка на писмата.

Писмото преминава през три проверки, SPF, DKIM и DMARC, преди да стигне до входящата кутия office@firma.bg SPF ✔ правилен сървър DKIM ✔ валиден подпис DMARC ✔ домейнът съвпада 📥 входяща кутия

Трите записа накратко

SPF проверява сървъра, DKIM проверява подписа, а DMARC свързва двете с домейна в полето „От“ и задава правилата.

SPFDKIMDMARC
ВъпросОт разрешен сървър ли идва писмото?Подписано ли е и непокътнато ли е?Съвпада ли с видимия подател и какво да правим, ако не?
Вид DNS записTXT на домейнаTXT на селектор._domainkeyTXT на _dmarc
Кой го създаваВие, по списъка на услугите, които пращат пощаПощенската услуга генерира ключа, вие го публикуватеВие
Сам по себе си достатъчен ли еНеНеРаботи само заедно със SPF или DKIM

Добро сравнение е пратка с куриер. SPF е списъкът с куриерите, на които фирмата се доверява. DKIM е печатът върху плика, който показва, че пратката не е отваряна. DMARC е инструкцията към получателя: „Ако куриерът не е от списъка и печатът липсва, върнете пратката и ми съобщете“.

SPF: кой има право да изпраща

SPF (Sender Policy Framework) е TXT запис със списък на сървърите и услугите, които имат право да изпращат поща от името на вашия домейн. Получателят сравнява сървъра, от който е дошло писмото, с този списък.

Как изглежда SPF запис

firma.bg.  TXT  "v=spf1 a mx include:_spf.example.net -all"
ЧастЗначение
v=spf1Задължително начало, казва, че това е SPF запис
aРазрешава сървъра, към който сочи запис A на домейна
mxРазрешава сървърите от MX записите
ip4:203.0.113.10Разрешава конкретен IPv4 адрес
include:...Добавя списъка на външна услуга, например за бюлетини
-allВсички останали сървъри нямат право (строго)
~allВсички останали са подозрителни (меко), често за начало

Важни правила за SPF

  • Само един SPF запис на домейн. Ако имате два записа, които започват с v=spf1, проверката се проваля. Обединете всичко в един ред.
  • Ограничение на справките. SPF позволява най-много 10 DNS справки при проверка. Всеки include, a и mx се брои. Твърде много външни услуги могат да надхвърлят лимита.
  • Използвайте точните стойности, които ви дава всяка пощенска услуга. Не ги измисляйте.
  • SPF проверява „техническия“ подател (адреса за връщане), а не видимото поле „От“. Затова сам по себе си не спира подправянето на видимия адрес. Тук помага DMARC.

DKIM: цифров подпис на писмото

DKIM (DomainKeys Identified Mail) добавя криптографски подпис към всяко изпратено писмо, а публичният ключ за проверка се публикува в DNS. Получателят проверява подписа и така разбира, че писмото е изпратено от сървър, който притежава частния ключ, и че съдържанието не е променено по пътя.

Как работи

Подписване. Вашият пощенски сървър подписва заглавията и съдържанието на писмото с частен ключ.
Заглавие. В писмото се добавя заглавие DKIM-Signature с името на домейна и селектора.
Справка. Получателят търси публичния ключ в DNS на адрес селектор._domainkey.firma.bg.
Проверка. Ако подписът съвпада с ключа, проверката DKIM е успешна.

Как изглежда DKIM запис

mail._domainkey.firma.bg.  TXT  "v=DKIM1; k=rsa; p=MIIBIjANBgkqh...(дълъг ключ)"

Думата mail в примера е селектор. Той позволява един домейн да има няколко ключа, например един за обикновената поща и друг за услугата за бюлетини. Не е нужно да генерирате ключа сами: пощенската услуга го създава и ви дава точно какво да добавите в DNS. Някои хостинг панели включват DKIM с един бутон.

Съвет: ключът е дълъг и лесно се копира непълно. Копирайте го наведнъж, без излишни интервали и без да добавяте кавички, ако панелът ги слага сам. След това проверете записа с инструмент за DKIM.

DMARC: правилата и отчетите

DMARC (Domain-based Message Authentication, Reporting and Conformance) казва на получателите какво да правят с писма, които не минават SPF и DKIM, и ви изпраща отчети кой праща поща от името на домейна ви.

Как изглежда DMARC запис

_dmarc.firma.bg.  TXT  "v=DMARC1; p=none; rua=mailto:dmarc@firma.bg"
ЧастЗначение
v=DMARC1Задължително начало
p=noneСамо наблюдение: писмата се доставят нормално, вие получавате отчети
p=quarantineПисмата, които не минават, се слагат в спам
p=rejectПисмата, които не минават, се отхвърлят
rua=mailto:...Адрес за обобщени отчети
pct=50Правилото важи за част от писмата, полезно при постепенно затягане
sp=Отделно правило за поддомейните

Постепенно затягане

Не започвайте направо с p=reject. Ако някоя легитимна услуга, например онлайн магазинът ви, изпраща писма без правилен SPF или DKIM, те ще бъдат отхвърлени. Правилният път е:

  1. Наблюдение: p=none и отчети. Следете няколко седмици кой изпраща от името ви.
  2. Поправка: добавете липсващите услуги в SPF и включете DKIM за тях.
  3. Карантина: p=quarantine, по желание с pct за част от писмата.
  4. Отхвърляне: p=reject, когато сте сигурни, че всички истински писма минават.

Съвпадение на домейните (alignment)

DMARC приема писмото само ако SPF или DKIM минават и домейнът, който те проверяват, съвпада с домейна в полето „От“. Това се нарича съвпадение или alignment и е ключът към защитата срещу подправяне.

Пример: услуга за бюлетини изпраща писмо с „От: office@firma.bg“, но го подписва с DKIM на собствения си домейн. DKIM минава, но домейнът не съвпада с firma.bg, затова DMARC няма да го зачете. Решението е да настроите услугата да подписва с DKIM на вашия домейн, обикновено като добавите записи, които тя ви дава.

СитуацияSPFDKIMDMARC
Поща от вашия сървър, всичко настроено✔ съвпада✔ съвпада✔ минава
Бюлетин без DKIM на вашия домейн✔, но друг домейн✔, но друг домейн✘ не минава
Бюлетин с DKIM на вашия домейн✔, но друг домейн✔ съвпада✔ минава
Измамник, който подправя „От“✘✘✘ отхвърлено при p=reject

Настройка стъпка по стъпка

Настройката се прави в DNS зоната на домейна, там, където управлявате и останалите записи. Ако не сте сигурни къде е тя, вижте Как да свържем домейн с хостинг.

Стъпка 1: Направете списък на всички, които изпращат поща от ваше име

Пощенският сървър на хостинга, услугата за бюлетини, онлайн магазинът, системата за фактури, формата за контакт на сайта. Всеки от тях трябва да бъде включен.

Стъпка 2: Създайте или обновете SPF

Ако вече има SPF запис, редактирайте го, а не добавяйте нов. Добавете include или IP адресите на всички услуги от списъка. Започнете с ~all, а когато сте сигурни, преминете към -all.

Стъпка 3: Включете DKIM

В контролния панел на хостинга включете DKIM за домейна или копирайте записа, който той генерира. Направете същото за всяка външна услуга, която изпраща от ваше име.

Стъпка 4: Добавете DMARC в режим наблюдение

Име:       _dmarc
Вид:       TXT
Стойност:  v=DMARC1; p=none; rua=mailto:dmarc@firma.bg

Създайте и кутията или псевдонима за отчетите, например dmarc@, за да не пълнят те основната ви поща.

Стъпка 5: Проверете и затегнете

Проверете записите с онлайн инструмент, изпратете тестово писмо и вижте заглавията му. След няколко седмици отчети преминете към quarantine и после към reject.

Внимание: преди да промените SPF или MX записи, запишете текущите им стойности. Грешка в тези записи може да спре изпращането или получаването на поща. Ако пощата ви е при външна услуга, използвайте точно стойностите, които тя дава.

Външни услуги: бюлетини, магазин, CRM

Всяка услуга, която изпраща писма с вашия адрес в полето „От“, трябва да бъде включена в SPF и да подписва с DKIM на вашия домейн. Това е най-честата причина бюлетините и писмата за поръчки да отиват в спам.

  • Услуги за бюлетини: обикновено дават стойност за include и записи за DKIM, често като CNAME. Добавете ги и потвърдете домейна в тяхната система.
  • Онлайн магазин на собствен хостинг: писмата за поръчки се изпращат от сървъра на сайта. Уверете се, че той е в SPF, или настройте магазина да изпраща през вашата пощенска кутия чрез SMTP.
  • Форми за контакт: добре е да изпращат чрез SMTP с истинска кутия, а не директно от сървъра, за да минават проверките.
  • Системи за фактури и CRM: проверете в настройките им как се свързва собствен домейн за изпращане.

Ако сайтът ви е на WordPress, плъгините за SMTP позволяват писмата от сайта да се изпращат чрез пощенската ви кутия, което решава много проблеми с доставката.

Защита на домейни, които не изпращат поща

Домейн, от който никога не изпращате писма, също има нужда от SPF и DMARC, за да не може никой да го използва за измами. Това важи например за втория домейн, който само пренасочва към основния, или за стар домейн на марка, която вече не използвате.

За такъв домейн добавете два прости записа:

firma.com.         TXT  "v=spf1 -all"
_dmarc.firma.com.  TXT  "v=DMARC1; p=reject"

Първият казва, че нито един сървър няма право да изпраща поща от името на домейна. Вторият казва на получателите да отхвърлят всяко писмо, което твърди, че идва от него. Ако домейнът приема поща чрез препращане, двата записа не пречат на получаването, защото засягат само изпращането. Повече за стратегията с два домейна има в статията .com или .bg.

Как да проверите записите

Проверете записите с команда, с онлайн инструмент и с реално писмо до свой адрес.

dig firma.bg TXT +short
dig mail._domainkey.firma.bg TXT +short
dig _dmarc.firma.bg TXT +short

В Windows използвайте nslookup -type=txt firma.bg и съответно за другите имена. Отговорът трябва да показва точно записите, които сте добавили.

Най-сигурната проверка е реално писмо. Изпратете писмо до адрес при друга пощенска услуга, отворете го и вижте оригиналните заглавия (често се наричат „Покажи оригинала“ или „Заглавия“). Потърсете редове като:

Authentication-Results: ...
  spf=pass smtp.mailfrom=firma.bg;
  dkim=pass header.d=firma.bg;
  dmarc=pass header.from=firma.bg

Ако и трите показват pass, настройката е успешна.

Как да четете DMARC отчетите

DMARC отчетите са файлове, които пощенските услуги ви изпращат и в които пише от кои сървъри са дошли писма от името на домейна ви и дали са минали проверките.

Отчетите пристигат като прикачени файлове във формат XML, обикновено веднъж на ден от всяка голяма пощенска услуга, която е получила писма от вас. Четенето им на ръка е трудно, затова има безплатни и платени инструменти, които ги превръщат в разбираеми таблици и графики.

На какво да обърнете внимание:

  • Познати сървъри, които не минават. Това е ваша услуга, която трябва да добавите в SPF или да ѝ включите DKIM.
  • Непознати сървъри, които не минават. Вероятно опити за подправяне. Точно от тях ви пази затягането на DMARC.
  • Препращания. Когато получател препраща писмото ви, SPF често се проваля, но DKIM обикновено оцелява. Затова DKIM е особено важен.

Чести грешки

  • Два SPF записа вместо един обединен.
  • Надхвърлен лимит от 10 справки в SPF заради твърде много include.
  • Незавършен DKIM ключ, копиран с липсващ край или излишни интервали.
  • Директно p=reject без период на наблюдение и отхвърлени истински писма.
  • Забравена външна услуга, чиито писма за поръчки или бюлетини отиват в спам.
  • DMARC отчети в основната кутия, които я задръстват.
  • Записи на грешно име, например DMARC на корена на домейна вместо на _dmarc.
  • Промени без запис на старите стойности и трудно връщане назад при проблем.

Митове

  • „SPF е достатъчен.“ Не. SPF не проверява видимото поле „От“ и се проваля при препращане. Нужни са и DKIM, и DMARC.
  • „Тези записи са само за големи фирми.“ Напротив. Малките фирми са честа мишена на измами с подправени фактури, а записите са безплатни.
  • „С DMARC писмата ми никога няма да отиват в спам.“ Записите помагат много, но спам филтрите гледат и съдържанието, репутацията и поведението на подателя.
  • „Щом не изпращам бюлетини, не ми трябва DMARC.“ DMARC пази и от други, които биха изпращали от ваше име, независимо дали вие пращате бюлетини.
  • „Настройва се веднъж и толкова.“ При всяка нова услуга, която изпраща поща от ваше име, записите трябва да се обновят.

Често задавани въпроси

Какво е SPF запис?

SPF е TXT запис в DNS, който изброява сървърите и услугите, имащи право да изпращат поща от името на домейна. Получателите проверяват дали писмото идва от разрешен сървър.

Какво е DKIM?

DKIM е цифров подпис, който пощенският сървър добавя към всяко писмо. Публичният ключ е в DNS и позволява на получателя да провери, че писмото идва от домейна и не е променено по пътя.

Какво е DMARC?

DMARC е правило в DNS, което казва на получателите какво да правят с писма, които не минават SPF и DKIM, и изпраща отчети на собственика на домейна. Стойностите са none, quarantine и reject.

Трябват ли ми и трите записа?

Да. SPF и DKIM проверяват различни неща, а DMARC ги свързва с видимия подател. Заедно те дават най-добра защита и най-добра доставка.

С каква DMARC политика да започна?

С p=none и адрес за отчети. Следете отчетите няколко седмици, поправете липсващите услуги и чак тогава преминете към quarantine и reject.

Мога ли да имам два SPF записа?

Не. Домейнът трябва да има само един SPF запис. Ако имате няколко услуги, добавете ги всички в един ред с include или ip4.

Защо писмата от сайта ми отиват в спам?

Често защото сайтът изпраща директно от сървъра, който не е в SPF, и без DKIM. Настройте сайта да изпраща чрез SMTP с истинска пощенска кутия на домейна.

Как да проверя дали всичко е настроено правилно?

Изпратете писмо до адрес при друга пощенска услуга и вижте оригиналните заглавия. Ако spf, dkim и dmarc показват pass, настройката е успешна. Можете да използвате и онлайн инструменти за проверка.

Обобщение

SPF казва кой може да изпраща, DKIM подписва всяко писмо, а DMARC свързва двете с вашия домейн и задава правилата. Настройте и трите, започнете с DMARC в режим наблюдение, включете всички външни услуги и постепенно затегнете политиката. Така писмата ви стигат по-сигурно до клиентите, а измамниците трудно могат да пишат от ваше име. В следващата статия ще видим как се прехвърля домейн от един регистратор към друг.

Поща, която стига до клиентите

Хостинг с пощенски кутии и пълен контрол над DNS записите на домейна.

Разгледайте хостинг плановете
Сподели: Facebook X LinkedIn
Още от блога

Може да те заинтересува

Остави коментар

Your email address will not be published. Required fields are marked *

Нужен ти е хостинг?

Безплатен SSL, ежедневни бекъпи и сървъри в България, САЩ и Хонконг.

Виж плановете →