Як додати DNS записи SPF, DKIM, DMARC і налаштувати поштові протоколи POP3 та IMAP4
У попередній статті ми розглянули, як інсталювати Exchange Server і як його налаштувати для запуску поштового сервера. У цій статті, продовжимо розповідати про те, що потрібно робити, щоб ваші листи дійшли до адресата і не потрапили в спам. Також, поговоримо про налаштування поштових протоколів POP3 та IMAP4.
- Крок 1. Як створити SPF запис
- Крок 2. Як створити DKIM запис
- Крок 3. Як додати DMARC запис
- Крок 4. Як налаштувати поштові служби IMAP та POP3 в Exchange Server
- Крок 5. Перевірка служб POP3 та IMAP
- Помилки
- Висновок
- Питання та відповіді
- Коментарі
Для того, щоб ваші листи на шляху до одержувача пройшли перевірку і не потрапили до спаму, потрібно додати записи SPF, DKIM та DMARC до вашого DNS-хостингу.
SPF, DKIM і DMARC — це базові налаштування, які потрібно зробити перед запуском поштового сервера. Дані записи не дають шахраям розсилати шкідливі листи від вашого імені, а за їх відсутності повідомлення може зовсім не дійти до адресата.
Крок 1. Як створити SPF запис
Запис SPF (Sender Policy Framework) – забезпечує взаєморозуміння між поштовими серверами відправника та отримувача. Вона містить інформацію про те, яким поштовим серверам дозволено надсилати пошту від вашого імені.
Без наявності SPF-запису, багато поштових сервісів можуть надсилати всю пошту, відправлену з поштових скриньок домену, в спам, незалежно від її вмісту. SPF-запис публікується на DNS-серверах, які обслуговують домен.
Перейдіть до панелі керування вашого DNS-хостингу і створіть запис txt, заповнивши всі ці поля. Запис містить такі ключі: версію spf, IP-адресу домену, v=spf1 — версія SPF.
- Ключ – a — задає правила до конкретного домену, порівнюючи IP-адресу відправника з IP-адресою, вказаною в А-записах домену.
- mx — включає всі адреси серверів, зазначені в MX-записах домену.
- Значок тільди ~ — це відхилення. Лист буде прийнято, але буде позначено як спам.
- all — всі адреси, які не вказані в записі.
Додаткові теги можна буде встановити пізніше, а зараз тиснемо – Зберегти.
Параметри, що визначають поведінку для зазначених ключів:
Параметр | Опис |
---|---|
+ | Параметр, який вказує на прийом листів (Pass). За замовчуванням, якщо немає інших. |
– | Відхилити (Fail). Лист не буде прийнято. |
~ | “М’яке” відхилення (SoftFail). Лист буде прийнято, але позначено як спам. |
? | Нейтральне сприйняття відправника. |
Ключі для визначення вузлів:
Правило | Опис |
---|---|
mx | Включає всі адреси серверів, зазначені в MX-записах домену. |
ip4 | Вказати конкретні IP-адреси. |
ptr | Перевірка запису PTR на наявність вказаного домену. |
exists | Перевірка працездатності домену. Важливо враховувати, що ця перевірка також може дати позитивну відповідь при використанні адрес виду 127.0.0.1, через що її використання є сумнівним. |
a | Застосування правил до конкретного домену, порівнюючи IP-адресу відправника з IP-адресою, зазначеною в А-записах домену. |
include | Використання дозволених вузлів, зазначених у SPF-записах іншого домену. |
redirect | Правило вказує на те, що SPF-політика цього домену використовується з іншого домену. Аналог include, але з ігноруванням записів поточного домену. |
all | Усі адреси, які не вказані в записі. |
Крок 2. Як створити DKIM запис
Другий ступінь захисту під час передачі між поштовими серверами це – DKIM (DomainKeys Identified Mail). З його допомогою до вихідних повідомлень електронної пошти додається цифровий підпис. Отримувач використовує цей підпис для перевірки автентичності листів.
Сервер одержувача надсилає DNS-запит і отримує публічний ключ, який розміщується в DNS-записі. Цей ключ використовується для перевірки листа. Якщо ключі співпадають, то лист доходить до адресата, інакше – потрапляє в Спам.
За промовчанням MS Exchange Server не підтримує DKIM. Для його налаштування, на Exchange потрібно встановити сторонній агент транспорту – Exchange DKIM Signer.
https://github.com/Pro/dkim-exchange/releases/tag/v3.4.0
https://www.collaborationpro.com/exchange-2016-2019-implementing-dkim/
Після встановлення, потрібно його налаштувати. Запустіть програму, у відкритому вікні натисніть – Configure, тут переконайтеся, що агент – Exchange DKIM Signer має найнижчий пріоритет (останній у списку). Це потрібно для того, щоб листи підписувалися на останньому етапі після всіх можливих модифікацій, які зроблять інші агенти транспорту.
На закладці «DKIM Settings» вказується, які поля будуть підписані. За замовчуванням це: From, Subject, To, Date, Message-ID.
Налаштування параметрів домену виконується на вкладці – Domain Settings. Тиснемо Add, вказуємо ім’я домену, селектор (ім’я DNS запису). Тут можна або згенерувати ключ, або вказати його розташування. Для створення публічного ключа натисніть – Generate new key, після чого він з’явиться у цьому вікні.
Потім, перейдіть в панель керування хостингом домену, і створіть txt запис. Задайте йому ім’я “mail._domainkey”, і в полі – Значення, вставте ваш публічний ключ. Після внесених налаштувань, у програмі натискаємо кнопку «Save domain». Налаштування застосовуються автоматично.
Крок 3. Як додати DMARC запис
Ну і нарешті розберемо, що таке DMARC (Domain-based Message Authentication, Reportingand Conformance). Це наступний етап захисту після SPF та DKIM. Цей запис визначає, що робити з повідомленнями, якщо вони не пройшли аутентифікацію за допомогою SPF та DKIM. Це правило, яке встановлюється для листів, надісланих від вашого імені.
Перед установкою DMARC важливо переконатися, що SPF та DKIM прописані коректно, інакше це може призвести до фільтрації листів від вас. Для налаштування DMARC, на панелі керування вашого DNS-хостингу, створіть txt запис _dmarc.
Де потрібно вказати як мінімум версію механізму та політику. При першому налаштуванні в якості політики рекомендується вказати – none (не робити нічого, крім надсилання звітів).
Надалі можна буде змінити запис, посиливши його, дописавши потрібні теги.
Параметр | Значення | Опис |
---|---|---|
v | DMARC1 | Версія DMARC. |
p |
|
Правило домену. Може приймати одне з значень:
|
sp |
|
Це правило для субдоменів. Може набувати таких же значень, як і p. |
aspf |
|
Дозволяє перевіряти відповідність записів SPF. Може приймати значення:
|
adkim |
|
Дозволяє перевіряти відповідність записів DKIM. Може приймати значення:
|
pct | 0-100 | Кількість листів, що підлягають фільтрації, у відсотках. |
ruf | Email Address | Пошта, на яку потрібно надсилати звіти про листи, які не пройшли перевірку DMARC. |
fo |
|
Визначає умови створення звітів. Може приймати значення:
|
На цьому налаштування електронної пошти завершено. Тепер, для перевірки надішліть тестовий лист зі своєї електронної скриньки.
Крок 4. Як налаштувати поштові служби IMAP та POP3 в Exchange Server
Тепер, переходимо до налаштування поштових служб POP3 та IMAP4. За промовчанням, служби Exchange POP3 та IMAP4 вимкнено. Для налаштування підключення клієнтів за IMAP та POP3, потрібно їх запустити та налаштувати автоматичний запуск.
Відкрийте – Services, знайдіть службу – Microsoft Exchange IMAP4, встановіть тип запуску – Автоматично і запустіть службу, а потім Apply та Ok.
Далі, такі ж самі маніпуляції проводимо зі службою – Microsoft Exchange IMAP4 Backend, Microsoft Exchange POP3 та Microsoft Exchange POP3 Backend. Після запуску служб необхідно налаштувати сертифікат. Відкрийте Панель керування Exchange, перейдіть до розділу – Servers – Certificates.
Відкрийте SSL сертифікат, клацнувши по ньому двічі лівою кнопкою миші, перейдіть у вкладку – Services і встановіть позначки навпроти – IMAP та POP, а потім Save.
Далі потрібно зв’язати домен зі службами pop3 та imap. Відкрийте Пуск, Microsoft Exchange Server – Exchange Management Shell та виконайте команду.
Вводимо першу команду для служби POP3, тут потрібно вказати зовнішній домен:порт 995 і SSL, потім ще раз домен зі 110 портом, і наприкінці вказуємо ім’я сертифіката. Відкриваємо сертифікат у панелі керування та копіюємо ім’я.
Set-PopSettings -ExternalConnectionSettings “mail.hetmansoftware.com:995:SSL”,“mail.hetmansoftware.com:110:TLS” -x509CertificateName hetmansoftware.com
Після виконання команди потрібно перезапустити службу POP3. У вікні служб, клацніть по відповідній службі правою кнопкою миші – Restart. І друга служба POP3 backend.
Далі, виконайте команду, щоб зв'язати службу – IMAP.
Set-ImapSettings -ExternalConnectionSettings “mail.hetmansoftware.com:993:SSL”,“mail.hetmansoftware.com:143:TLS” -x509CertificateName hetmansoftware.com
Після цього, перезапустіть службу IMAP та IMAP backend.
На наступному кроці потрібно перевірити та, уразі необхідності, відкрити у вашій мережі порти для даних служб: 995, 993, 110 і 143. Відкрийте налаштування мережі та відкрийте порти для сервера Exchange.
Наступне, що потрібно зробити – це змінити параметри конектора прийому. У панелі керування перейдіть до розділу - Mail flow – receive connectors – Client Frontend exchange.
Відкрийте вкладку – scoping, FQDN – змініть домен із внутрішнього на зовнішній – mail.hetmansoftware.com. та натисніть Save .
Далі, потрібно вказати сертифікат, який використовуватиметься для шифрування підключень SMTP. Для початку потрібно дізнатися про ID сертифіката, який хочемо зв'язати зі службами.
Відкрийте Exchange Shell та виконайте таку команду:
Get-exchangecertificate
Скопіюйте значення сертифіката – Thumbprint.
Вкажіть сертифікат, який використовується для шифрування автентифікованих клієнтських підключень SMTP. Для цього потрібно виконати три команди.
Виконайте першу команду:
$TLSCert = Get-ExchangeCertificate -Thumbprint <ThumbprintValue>
наприкінці додайте значення сертифіката.
Після цього, другу команду:
$TLSCertName = "<I>$($TLSCert.Issuer)<S>$($TLSCert.Subject)"
І потім третю команду:
Get-ReceiveConnector -Identity "Client Frontend*" | Set-ReceiveConnector -TlsCertificateName $TLSCertName
Щоб переконатися, що ви вказали сертифікат, який використовується для шифрування автентифікованих клієнтських підключень SMTP, виконайте таку команду:
Get-ReceiveConnector -Identity "Client Frontend*" | Format-List Name,Fqdn,TlsCertificateName
В результаті, ви отримаєте ім'я сертифіката: тут має бути ім'я сертифіката, який ви вказали. На наступному кроці потрібно перевірити, чи включені дані протоколи на рівні поштових скриньок. Якщо вони відключені в поштових скриньках, користувачі не зможуть налаштовувати свої профілі в outlook, для використання POP3 та IMAP4. За промовчанням вони мають бути включені.
Для перевірки відкрийте панель керування Exchange, перейдіть до розділу – recepients – mailboxes, відкрийте потрібний обліковий запис (поштова скринька) та перейдіть до розділу – mailbox features, тут перевірте чи встановлено значення – Enable, для даних служб.
А щоб перевірити роботу служб, виконайте команду:
-Test
Test-PopConnectivity -ClientAccessServer expc -Lightmode -MailboxCredential (Get-Credential)
Вводимо пароль та отримуємо успішний результат.
Далі, виконайте таку ж команду для IMAP:
Test-ImapConnectivity -ClientAccessServer expc -Lightmode -MailboxCredential (Get-Credential)
Пароль від облікового запису. Ця конфігурація також працює.
Крок 5. Перевірка служб POP3 та IMAP
Щоб переконатися, що ви увімкнули та налаштували IMAP4 на сервері Exchange, виконайте такі процедури:
На сайті Microsoft ви можете скористатися спеціальним сервісом, який перевірить протоколи POP3 та IMAP. https://testconnectivity.microsoft.com/tests/Imap/input
Заповнюємо всі обов'язкові поля та тиснемо – Виконати перевірку. Перевірка пройшла успішно, але із попередженням. Справа в тому, що Microsoft не може перевірити ланцюжок сертифіката. Можливо, на сервері вимкнено або неправильно налаштовано цю функцію.
Що стосується SSL сертифіката, то я в ньому впевнений на 100 відсотків, тому можна не звертати увагу на це попередження. Служба працює нормально.
Далі, перевіримо протокол POP3. https://testconnectivity.microsoft.com/tests/pop/input
Все робимо за тим же принципом, заповнюємо поля та тиснемо – Виконати перевірку. Перевірка пройшла успішно.
Тепер перевіримо, як ходить пошта. В Оutlook налаштуємо з'єднання через IMAP або POP3 протокол, та надішлемо тестовий лист.
Тепер пошта не потрапляє до спаму і дійшла прямо до адресата без жодних помилок.
Помилки
А зараз, давайте розберемо кілька помилок, які можуть виникати при неправильному налаштуванні або відсутності DNS-записів.
Помилка | Опис |
---|---|
550 5.7.1 | Повідомлення відхилене, оскільки перевірка SPF не пройдена. Це може свідчити про те, що IP-адреса відправника не включена до запису SPF для домену відправника. |
Message Failed DMARC Compliance | Повідомлення не пройшло перевірку DMARC. Це може бути викликано невдачею перевірки SPF і/або DKIM, або невідповідністю політики DMARC, встановленої для домену. |
DKIM-Result: fail (bad signature) | Перевірка DKIM не вдалася через поганий підпис. Це може свідчити про те, що DKIM-підпис у повідомленні некоректний або був змінений під час передачі. |
Помилка 550 SPF Check Failed. Якщо на сервері Microsoft Exchange встановлено програму від спаму, помилка може мати такий вигляд:
SMTP; 550 5.7.1 550 Message rejected because SPF check failed.
Ця помилка означає, що домен відправника має неправильний запис SPF, або те, що відправник використовує підроблену поштову адресу.
У тому випадку, якщо DNS-запис SPF відсутній, неправильно налаштований або відключений при надсиланні листа на зовнішню поштову адресу, ви можете отримати повідомлення з такою помилкою: mx.google.com відхилив ваші повідомлення на наступні адреси електронної пошти.
Для її усунення додайте SPF запис у вашому DNS-хостингу.
Під час перевірки запису DMARC, може спостерігатися така помилка:
Message Failed DMARC Compliance
Message Failed Verification Tests & is not DMARC Compliant
Ця помилка означає, що повідомлення не пройшло автентифікацію і не відповідає вимогам DMARC. Помилка відповідності DMARC означає, що перевірочні тести SPF та DKIM не пройдені. Ці збої можуть негативно вплинути на доставку електронної пошти, оскільки поштові скриньки не можуть перевірити справжність вашої електронної пошти.
Так виглядає помилка, пов'язана з DKIM записом:
"DKIM-Result: fail (bad signature)"
Зазвичай ця помилка з'являється під час початкового налаштування DKIM, після оновлення програми або після міграції сервера.
Часто, проблема викликана помилками в написанні тегів або налаштуванням відкритого ключа. Якщо у Вас немає запису DKIM або його неправильно налаштовано, у отриманому листі ви побачите попередження. Це ж стосується і запису DMARC. Якщо лист виглядає таким чином, змініть налаштування відповідного запису.
Висновок
Отже, ми розглянули доступний кожному адміністратору простий набір засобів, які допомагають посилити безпеку поштових серверів Microsoft. Правильно налаштовані записи DKIM-, SPF- та DMARC дозволять максимально знизити потік спаму, розсилок, і різних шкідливих листів. Я показав лише базове налаштування та принцип роботи, для повноцінного захисту потрібні точніші налаштування.
1. Відкрийте програму пошти та перейдіть до налаштувань акаунту.
2. Виберіть протокол POP3 чи IMAP4.
3. Введіть своє ім'я користувача та пароль.
4. Введіть сервер вхідної пошти та порт.
5. Налаштуйте сервер вихідної пошти та порт.
6. Збережіть зміни та перевірте, чи все правильно.