До основного вмісту

cPanel Email: налаштування DKIM, SPF і DMARC

Хостинг та cPanel · 23.02.2025 · 4 хв читання
Ілюстрація до статті «cPanel Email: налаштування DKIM, SPF і DMARC»

Без правильно налаштованих DKIM, SPF і DMARC пошта з вашого домену масово летить у спам або відхиляється серверами Gmail та Outlook. Усі три записи вирішують одне завдання — підтверджують отримувачу, що лист справді надіслано від імені вашого домену, а не підроблено шахраєм.

ЗаписЩо робить
SPFВказує, які сервери можуть надсилати пошту від імені домену
DKIMЦифровий підпис кожного листа
DMARCПолітика дій при невідповідності SPF/DKIM

Записи працюють разом, а не окремо: SPF без DMARC легко обійти підробкою заголовка From, DKIM без SPF не захищає від підміни конверта листа, а DMARC без обох попередніх записів просто не має сенсу перевіряти.

Увімкнення DKIM у cPanel

cPanel → Email → Email Deliverability → натисніть Repair навпроти домену. cPanel автоматично створить DKIM-запис у DNS і покаже статус «Valid», якщо запис успішно опубліковано і він пройшов перевірку. Якщо статус залишається «Not Valid» після Repair довше доби, найімовірніше домен використовує зовнішні NS-сервери (наприклад, Cloudflare), а не вбудований DNS хостингу — тоді cPanel не може сам прописати TXT-запис, і його потрібно скопіювати з cPanel → Email Deliverability вручну в панель керування DNS-провайдера.

SPF запис

# Додайте TXT запис для домену:
v=spf1 +a +mx +ip4:YOUR_SERVER_IP include:spf.protection.outlook.com ~all

# Якщо надсилаєте лише через свій сервер:
v=spf1 +a +mx ~all

Типова помилка: два SPF-записи одночасно

Якщо додати новий SPF-запис, не видаливши старий (наприклад, той, що лишився від попереднього email-провайдера), перевірка поштового сервера покаже помилку:

$ dig TXT example.com +short
"v=spf1 +a +mx ~all"
"v=spf1 include:_spf.google.com ~all"

# Результат перевірки:
permerror: Two or more SPF records found

Стандарт SPF прямо забороняє кілька TXT-записів типу v=spf1 для одного домену — при виявленні другого запису поштові сервери отримувача вважають перевірку неуспішною (permerror) і часто відправляють лист у спам саме через це, а не через вміст листа. Рішення — об'єднати всі потрібні джерела надсилання в один рядок через include: і видалити дублюючі TXT-записи в Zone Editor.

DMARC запис

# TXT запис для _dmarc.yourdomain.com
# Почніть з моніторингу (p=none):
v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com

# Після аналізу звітів перейдіть на quarantine:
v=DMARC1; p=quarantine; pct=100; rua=mailto:dmarc@yourdomain.com

# Фінальна сувора політика:
v=DMARC1; p=reject; pct=100; rua=mailto:dmarc@yourdomain.com

Перехід одразу на p=reject без періоду моніторингу — часта причина того, що легітимні листи (наприклад, надіслані через стороннє CRM чи розсилку) починають відхилятися: якщо їхні SPF/DKIM не вирівняні з доменом у полі From, DMARC із суворою політикою блокує їх нарівні з підробленими.

Як читати результати перевірки

РезультатЩо означає
SPF: passIP відправника є в дозволеному списку домену
SPF: softfailIP не в списку, але політика м'яка (~all) — лист позначається, не блокується
DKIM: passПідпис листа збігається з публічним ключем у DNS
DMARC: passХоча б одна з SPF/DKIM пройшла І збігається з доменом у From

Коли записи не врятують від спам-фільтра

  • IP сервера вже в чорному списку (Spamhaus, Barracuda) — ідеальні SPF/DKIM/DMARC не допоможуть, поки IP не буде виключено з блеклиста
  • Листи надсилаються через сторонній сервіс розсилок (Mailchimp, SendGrid) без додавання його в SPF — потрібно прописати конкретний include: провайдера, інакше його листи від вашого імені провалять перевірку
  • Вміст листа схожий на спам за формальними ознаками — надлишок великих літер, посилання на підозрілі домени, вкладення з макросами — це оцінюється окремо від автентичності відправника
  • Отримувач використовує агресивний корпоративний фільтр (наприклад, вимагає повний збіг DMARC alignment у strict-режимі) — тоді навіть валідні, але не ідеально вирівняні записи можуть блокуватися

Перевірка

# Через командний рядок
dig TXT yourdomain.com
dig TXT _dmarc.yourdomain.com
# Через онлайн-сервіс:
# mxtoolbox.com → SuperTool → DKIM Lookup

Перевіряти варто після кожної зміни записів, а не лише один раз під час першого налаштування — DNS-кеш у різних резолверів оновлюється не миттєво, і результат може відрізнятися залежно від того, звідки йде перевірка. Найнадійніший спосіб перевірити все одразу — надіслати лист на тестову адресу сервісу mail-tester.com: він надішле звіт з оцінкою від 0 до 10 і вкаже, який саме із трьох записів не пройшов перевірку. Детальніше про захист пошти від спаму на вхідному боці — у статті SpamAssassin у cPanel.

Чи була стаття корисною?
← Назад до бази знань Поставити питання підтримці