SPF перевірка
Аналіз SPF-запису домену: механізми, включення, політика.
Перевірка SPF-запису
Перевірте SPF (Sender Policy Framework) запис домену. Коректний SPF запобігає підробці email-адреси вашого домену.
Як користуватися
- Введіть доменне ім'я для аналізу SPF-запису
- Інструмент витягне SPF-запис з DNS та розбере всі механізми
- Перегляньте список дозволених серверів та кількість DNS-запитів
FAQ
Перевірка SPF онлайн: що показує звіт
Перевірка SPF-запису домену починається із запиту TXT-записів у DNS. Інструмент бере запис, що починається з v=spf1, розбирає його на механізми й показує оцінку від 0 до 100, сам рядок, кількість механізмів, кількість DNS-запитів і підсумкову політику. Оцінку визначає передусім кваліфікатор all:
| Політика | Оцінка | Результат для стороннього сервера |
|---|---|---|
-all | 100 | fail — лист не пройшов SPF, одержувач може його відхилити |
~all | 80 | softfail — прийняти, але позначити як підозрілий |
?all | 50 | neutral — домен нічого не стверджує |
+all | 20 | pass для будь-якого сервера — захисту немає |
Якщо механізмів, що потребують DNS-запиту, понад десять, від оцінки віднімається ще 30 балів. Зверніть увагу: лічильник рахує механізми самого запису. Кожен include — один запит, але в підключеному записі можуть бути власні include, і вони теж витрачають ліміт. Розгорнути ланцюжок можна командами:
dig +short TXT example.com dig +short TXT spf.protection.outlook.com
Звіряйте й вихідний рядок: якщо механізму all у записі немає, за стандартом для неперелічених серверів результат — neutral. А all без знака дорівнює +all.
Як влаштований SPF-запис
Механізми перевіряються зліва направо до першого збігу. Перед механізмом може стояти кваліфікатор: + (pass, за замовчуванням), - (fail), ~ (softfail), ? (neutral).
| Механізм | Що означає | DNS-запит |
|---|---|---|
ip4, ip6 | Конкретна адреса або підмережа | ні |
a | IP з A/AAAA-записів домену | так |
mx | IP поштових серверів з MX | так |
include | Політика іншого домену (поштового сервісу) | так, плюс вкладені |
exists, ptr | Рідкісні; ptr стандарт не радить | так |
redirect= | Уся політика береться з іншого домену (без all) | так |
Ліміт 10 DNS-запитів
RFC 7208 дозволяє одержувачу зробити не більше десяти DNS-запитів під час перевірки SPF, вкладені include теж рахуються. Перевищення дає permerror, і SPF вважається непройденим для всіх листів домену. Найчастіше ліміт вичерпується поступово: корпоративна пошта, CRM, сервіс розсилок, платформа підтримки — кожен додає свій include.
- Видаліть include сервісів, від яких відмовилися.
- Приберіть
aіmx, якщо вебсервер і вхідна пошта не надсилають листи від імені домену. - Власні сервери вказуйте через
ip4/ip6— вони не витрачають ліміт. - Масові розсилки переносьте на піддомен із власним SPF — у нього окремий ліміт.
Типові помилки SPF
- Два записи v=spf1. Дозволено лише один; два — це permerror. Механізми треба об'єднати в один рядок. Звіт показує перший знайдений запис, тому кількість записів перевірте через
dig TXT example.com. +all— дозволяє будь-кому надсилати пошту від вашого імені.- Синтаксичні одруки: пробіл після двокрапки (
include: sendgrid.net),v=spfбез одиниці, IPv6-адреса вip4. - Піддомени не успадковують SPF. Для
shop.example.comпотрібен окремий запис, а якщо з нього не надсилають листи —v=spf1 -all. - Рядок понад 255 символів в одному TXT-рядку: довгий запис треба розбити на кілька рядків у лапках, DNS-панель зазвичай робить це сама.
Приклади для Google Workspace, Microsoft 365, SendGrid
Тільки Google Workspace:
v=spf1 include:_spf.google.com ~all
Microsoft 365 і транзакційні листи через SendGrid:
v=spf1 include:spf.protection.outlook.com include:sendgrid.net ~all
Google Workspace, Mailgun і власний сервер повідомлень:
v=spf1 ip4:203.0.113.10 include:_spf.google.com include:mailgun.org ~all
Домен, з якого пошта не надсилається взагалі (лендинг, парковий домен):
v=spf1 -all
Частина сервісів розсилок перевіряє SPF не основного домену, а піддомену повернення (Return-Path), який вони просять спрямувати на себе CNAME-записом. Тож спершу читайте інструкцію сервісу, а не додавайте include навмання.
Де і як додати SPF-запис
SPF редагують там, де розміщена DNS-зона домену: у реєстратора, хостера або в Cloudflare. Визначальне не те, де куплено домен, а чиї NS-сервери в ньому прописані — їх видно у WHOIS.
- Знайдіть наявний TXT-запис із
v=spf1на корені домену (ім'я@). Якщо він є — редагуйте його, а не додавайте другий. - Тип — TXT, ім'я —
@(для піддомену — лише його частина, наприкладmail), значення — увесь запис, TTL — 3600 або «авто». - Лапки здебільшого панель додає сама; не вкладайте одні лапки в інші.
- У Cloudflare TXT-записи не проксуються, додатково нічого вмикати не потрібно.
Як перевірити SPF у заголовках листа
DNS показує, що опубліковано, а заголовки листа — що побачив одержувач. У Gmail відкрийте лист → «Показати оригінал»: у рядку SPF буде PASS, SOFTFAIL, FAIL, NEUTRAL або PERMERROR разом з IP відправника. У сирому заголовку шукайте Authentication-Results:
Authentication-Results: mx.google.com;
spf=fail (google.com: domain of [email protected] does not
designate 198.51.100.25 as permitted sender) [email protected]
Звідси зрозуміло, який домен перевірявся (smtp.mailfrom) і який IP не внесено до запису. Додайте його через ip4 або через include сервісу, якому належить ця адреса. permerror майже завжди означає два записи або перевищення ліміту запитів; temperror — тимчасову проблему з DNS-серверами домену.
~all чи -all
-all суворіший, але деякі сервери відхиляють лист за SPF ще до перевірки DKIM, і переслані листи (де SPF ламається неминуче) губляться. Тому за налаштованого DMARC часто залишають ~all, а остаточне рішення приймає DMARC. Для доменів без пошти — тільки -all.
SPF пройдено, а листи все одно в спамі
SPF лише підтверджує, що сервер має право надсилати пошту від імені домену. Репутацію він не створює. Якщо в заголовках spf=pass, а листи падають у спам, перевірте далі по ланцюжку:
- чи є в IP відправника PTR-запис і чи збігається він із прямим DNS — це покаже зворотний DNS;
- чи не потрапив IP у DNSBL-списки — перевірка IP у чорних списках;
- чи проходить DKIM і чи збігається домен підпису з доменом у From;
- чи не зламаний сайт або поштова скринька, з яких іде спам від вашого імені.
Для свіжого домену чи нового IP репутація набирається поступово: різкий старт розсилки на тисячі адрес сам по собі є сигналом для фільтрів.
SPF разом із DKIM і DMARC
SPF перевіряє адресу конверта (Return-Path), а не поле «Від», яке бачить людина. DKIM підписує лист ключем домену, DMARC вимагає, щоб SPF або DKIM збігалися з доменом у From, і каже одержувачу, що робити з рештою. Від 2024 року Gmail і Yahoo вимагають усі три механізми від масових відправників. Після SPF перевірте DKIM-ключ, DMARC-політику та MX-записи домену; решту записів покаже DNS lookup. Після зміни запису зачекайте, поки мине TTL, і повторіть перевірку.