1. Блог
  2. Мануали

Налаштування SPF, DKIM і DMARC у HestiaCP

Налаштування SPF, DKIM і DMARC у HestiaCP

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

Що робить кожен запис

  • SPF перелічує сервери, яким дозволено надсилати пошту від імені домену.
  • DKIM додає до кожного листа цифровий підпис. Одержувач перевіряє його за відкритим ключем, опублікованим у DNS.
  • DMARC повідомляє одержувачу, що робити з листами, які не пройшли перевірки, і куди надсилати звіти.
  • PTR — зворотний DNS-запис: IP-адреса сервера має розв’язуватися в його ім’я.

Для надійної доставки потрібні всі чотири.

Крок 1. Увімкніть DKIM для домену

Через панель. Увійдіть під користувачем, якому належить домен, відкрийте розділ Mail, наведіть курсор на домен і натисніть Edit Mail Domain. Позначте DKIM Support і збережіть. Для нового домену ця опція вмикається під час створення.

Через консоль:

v-add-mail-domain-dkim користувач example.com

Панель створить пару ключів: закритий залишиться на сервері, відкритий потрібно опублікувати в DNS.

Крок 2. Отримайте DNS-записи

У списку поштових доменів натисніть на значок DNS Records поруч із доменом. Панель покаже готові записи для SPF, DKIM і DMARC.

З консолі відкритий ключ можна отримати так:

v-list-mail-domain-dkim-dns користувач example.com

Крок 3. Додайте записи в DNS

Подальші дії залежать від того, де обслуговується DNS-зона домену.

DNS обслуговує HestiaCP

Якщо домен використовує DNS-сервери вашої панелі, записи створюються автоматично під час увімкнення DKIM. Перевірте їх у розділі DNS.

DNS у реєстратора або стороннього провайдера

Додайте записи вручну в панелі керування DNS.

Тип Ім’я Значення
TXT @ v=spf1 a mx ip4:203.0.113.10 -all
TXT mail._domainkey v=DKIM1; k=rsa; p=MIIBIjANBg...
TXT _domainkey t=y; o=~;
TXT _dmarc v=DMARC1; p=none; rua=mailto:postmaster@example.com

Замініть 203.0.113.10 на IP-адресу свого сервера, а значення DKIM скопіюйте з панелі повністю.

Кілька важливих деталей:

  • Домен повинен мати лише один запис SPF. Якщо пошта надсилається ще й через сторонній сервіс розсилок, додайте його в наявний запис через include:, а не створюйте другий.
  • Довгий ключ DKIM. Деякі панелі DNS не приймають рядки, довші за 255 символів. У цьому разі розбийте значення на частини в лапках, як підказує інтерфейс вашого провайдера.
  • -all і ~all. Суворий варіант -all відхиляє листи зі сторонніх серверів. Якщо ви не впевнені, що перелічили всі джерела пошти, почніть із м’якого ~all.

Крок 4. Налаштуйте PTR-запис

Зворотний запис встановлюється не в DNS домену, а на боці хостингу, якому належить IP-адреса. Для сервера UnixHost його можна задати в панелі керування послугою або через звернення в підтримку.

PTR має вказувати на ім’я поштового сервера — зазвичай mail.example.com, — а це ім’я має розв’язуватися назад у ту саму IP-адресу. Перевірка:

dig -x 203.0.113.10 +short
dig mail.example.com +short

Крок 5. Перевірте результат

Зміни DNS набувають чинності протягом кількох хвилин або годин. Перевірте записи з консолі:

dig TXT example.com +short
dig TXT mail._domainkey.example.com +short
dig TXT _dmarc.example.com +short

Потім надішліть лист на адресу, яку видає сервіс mail-tester.com: він покаже оцінку й докладний звіт щодо кожної перевірки.

Ще один спосіб — надіслати лист на свою скриньку Gmail і відкрити Показати оригінал. У заголовках мають бути рядки:

SPF: PASS
DKIM: PASS
DMARC: PASS

Крок 6. Посильте політику DMARC

Режим p=none лише збирає звіти й нічого не блокує. Він потрібен, щоб переконатися, що всі легітимні листи проходять перевірки. Через два-три тижні перейдіть до суворішої політики:

v=DMARC1; p=quarantine; rua=mailto:postmaster@example.com

а коли переконаєтеся, що все працює, — до p=reject. Лише сувора політика захищає ваш домен від підробки відправника.

Часті проблеми

  • DKIM: FAIL. Запис у DNS не збігається з ключем на сервері — найчастіше через обрізане значення або зайві пробіли. Скопіюйте ключ заново.
  • SPF: SOFTFAIL або FAIL. У записі не вказано IP-адресу, з якої насправді йде пошта. Перевірте, яку адресу сервер використовує для вихідних з’єднань.
  • Листи все одно в спамі. Перевірте PTR-запис і наявність IP-адреси в чорних списках. Новій адресі потрібен час, щоб заробити репутацію: починайте з невеликих обсягів.
  • Записів немає в панелі. Переконайтеся, що для домену ввімкнено підтримку пошти та DKIM.

А як же VestaCP

Панель VestaCP, для якої спочатку писалася ця інструкція, більше не розвивається й не отримує оновлень безпеки. Команди в ній називаються так само, але для нових серверів використовуйте HestiaCP — її пряме продовження. Оновлення самого поштового сервера описано в статті про Exim.

#hestiacp#dkim#spf#dmarc#пошта

Ця стаття іншими мовами:EnglishРусский