Якщо ви створили корпоративну пошту на своєму домені, але ваші листи потрапляють у “СПАМ” – ця стаття для вас. Я розповім як додати DKIM, DMARC та SPF записи у DNS-зону поштового домена. З ними ваша пошта почне верифікуватися й завжди потраплятимуть за адресою.
Що таке DKIM, DMARC, SPF простими словами
- DKIM (Domain Key Identified Mail) – веб-технологія, яка ідентифікує відправника електронної пошти та підтверджує його належність до поштового домену, тим самим верифікуючи легітимність й унеможливлюючи методи спаму та фішингу. Технологія була розроблена Марком Делані у співпраці з компанією Yahoo у 2003 році, потім підхоплена компанією Cisco та іншими авторитетними компаніями з метою покращення інформаційної безпеки.
- DMARC (Domain-based Message Authentication, Reporting, and Conformance) – ще одна технологія кібербезпеки, що дозволяє отримувачу перевірити валідність, легітимність та справжність відправника. Являє собою політики та правила, створені на основі інформації про відправника, зокрема почерпнутої з WHOIS та DNS.
- SPF (Sender Policy Framework) – протокол безпеки для відправки та отримання електронної пошти. Завдяки SPF можна визначити, чи не підроблений поштовий домен, з якого відправлений електронний лист.
Як додати DKIM, DMARC та SPF записи для поштового домену
Інструкція по DKIM
Першим чином необхідно згенерувати DKIM-ключі та авторизувати їх з допомогою електронного підпису в DNS-зоні поштового домену.
Якщо ваш сайт розміщений на хостингу з панелями управління, наприклад cPanel, ISP Manager, CyberPanel або VestaCP, то DKIM-ключ можна згенерувати вбудованими інструментами для адміністрування та обслуговування.
Інший спосіб як швидко отримати DKIM-ключ – скористатися онлайн-генераторами DKIM:
- https://2ip.ru/dkim/
- https://dkimcore.org/tools/keys.html
- https://www.port25.com/dkim-wizard/
- https://www.socketlabs.com/domainkey-dkim-generation-wizard/
- https://luxsci.com/dkim-wizard
Необхідно зайти на сервіс, вказати свій домен, задати селектор, обрати розмір шифрування 1024 або 2056 біт й запустити генерацію.
На виході отримаємо 2 ключі – приватний та публічний DKIM (public key). Його і треба додати у DNS-зону домена як TXT-запис. У полі HOST вказати: selector._domainkey.mydomain.com.
Обов’язково з крапкою вкінці. Сам TXT-запис, до прикладу, може бути наступним: v=dkim1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUA
У полі TTL – вказуємо бажану кількість днів у секундах для того, аби скинути кеш й дані глобально оновилися (можна залишити по замовчуванню). Зберігаємо зміни і через вказаний проміжок часу DKIM-запис повинен з’явитися на вашому домену.
Перевірити коректність налаштування DKIM можна з допомогою онлайн-тестувальників, валідаторів електронної пошти:
- https://mxtoolbox.com/NetworkTools.aspx
- http://www.mail-tester.com
- https://www.dnswatch.info
- https://dkimcore.org/tools/
- https://dkimvalidator.com (рекомендую)
- https://tools.dnsstuff.com/mstc
- https://www.dmarcanalyzer.com/dkim/dkim-check/
Детальне пояснення до синтаксису DKIM
Обов’язкові атрибути:
- v — версія DKIM, значення по замовчуванню: v=DKIM1
- k — тип ключа, по замовчуванню: k=rsa
- p — публічний ключ, закодований у base64.
Додаткові, необов’язкові атрибути:
- t=y — режим тестування, вказується тоді, якщо потрібно відстежувати відправку листів
- t=s — означає, що DKIM-запис відноситься лише до основного домену, усі інші, наприклад субдомени, будуть ігноруватися та відправлятися без DKIM
- h — алгоритм хешування, використовується для покращення безпеки, може мати значення: «h=sha1» або «h=sha256»;
- s — тип сервісу, який застосовує DKIM, по замовчуванню «s=email» (електронно пошта), хоча можна вказати «s=*», що значить “усі сервіси”.
- ; — розділювач атрибутів.
- b — зміст електронного листа (“тіло” + заголовки, закодовані у Base64)
- bh — хеш канонізованого “тіла” листа (Base64)
- d — доменне ім’я відправника
- h — список підписаних заголовків
- a — основний алгоритм для генерації сигнатури
- v — версія системи
- s — селектор
- c — алгоритм для приведення “тіла” і заголовків листа у канонічний вигляд
- q — список використаних алгоритмів для генерації публічного ключа
- x — час дії сигнатури
- i — підпис клієнта, що отримав DKIM-підпис
- l — розмір “тіла” листа у байтах
- t — час проставленої сигнатури
- z — копії заголовків листа
Інструкція по DMARC
Процес додання DMARC запису значно простіший, ніж DKIM. Головна відмінність між ними – DMARC не вимагає генерацію ключа, що, власне, робить його менш приорітетним. Але рекомендується його теж додати у DNS-зону:
- TXT-запис:
v=DMARC1; p=none; rua=mailto:[email protected]
- HOST:
_dmarc.mydomain.com.
Збережіть зміни. Через вказаний у полі TTL час зміни вступлять у силу і ваші електронні листи почнуть підписуватися SPF-протоколом.
Ознайомитися з більш детальною інструкцією по DKIM можна у довідці Google>>
Інструкція по SPF
Цей запис додати ще легше й він має найменшу приорітетність. На деяких хостингах він додається автоматично. Щоби додати SPF необхідно перейти у редагування DNS-зони й додати новий запис:
- TXT:
v=spf1 ip4:IP_address_domain a mx ~all
- HOST: вказати
@
абоmydomain.com.
Аналогічно попереднім записам, необхідно зачекати, щоби дані глобально оновилися й SPF-запис запрацював на вашому домені.
Ось і все. DKIM, DMARC та SPF в парі мають велику силу – ваша пошта ніколи не потрапить у спам, а поштові сервери завжди довірятимуть вашому поштовому домену й вам як відправнику.