В данной части материала поговорим об MX- и TXT-записях и наиболее распространенных случаях их применения.
Как управлять доменной почтой?
Делегирование доменной почты - конечно, тема отдельного разговора, в котором лучше всего будет на примерах показать, как настроить почтовые ящики на разных почтовых сервисах (mail.ru, yandex.ru, gmail.com и др.), но все же львиная доля настройки в этом процессе - это прописывание определенных MX- и TXT-записей, а потому теорию лучше всего разобрать на этом примере.
MX-запись указывает сервер, который будет принимать входящую почту. Как и А-запись, она имеет переменные “имя” и “значение”, но такие и уникальную для себя - “приоритет”. Имя так же может быть как доменом, так и поддоменом, значением является сам сервер приема почты, а приоритет указывает, на какой сервер слать письма в первую очередь, а на какой - в случае недоступности первого.
При полном делегировании домена на хостинг или VPS, последние предложат свой сервер для сбора почты. Они автоматически создадут MX-запись с именем основного домена - условно site.ru - и значением mail.site.ru. Такая запись означает, что входящая почта собирается сервером. И действительно, в панели можно создать почтовый ящик по типу admin@site.ru и с помощью встроенных утилит (webmail, roundcube или др.) получать письма на такую почту. Но это часто не удобно.
Поэтому, многие используют для сбора доменной почты знакомые и полюбившиеся почтовики по типу Яндекса, mail.ru или google mail. Первые 2 предоставляют такую услугу даже бесплатно.
Для делегирования входящей почты необходимо удалить значение текущей MX-записи в зоне домена и вписать значение нового сервера входящей почты. MX-запись Яндекса - mx.yandex.net, у майла - emx.mail.ru, а у google их 7 штук с разными значениями приоритетов. Но конечно же, мало лишь указать MX-запись, для корректного делегирования необходимо зарегистрировать домен в соответствующем сервисе.
Итак, с входящей почтой разобрались, а что с исходящей? Здесь немного сложнее.
Дело в том, что есть 2 сценария использования доменной почты.
- Ваш домен был куплен только для почты. Вы ведете с него личные переписки и больше ни для чего он не нужен. Тогда вам нужно полное делегирование входящей и исходящей почты на соответствующий почтовик.
- Вам нужно отправлять письма с вашей доменной почты на mail.ru, но также на домене лежит сайт, который должен отправлять письма вам или другим людям, а еще вы бы хотели с доменной почты делать массовые рассылки через соответствующий, уже третий, сервис (sendpulse, mailchimp, getresponse и др.). И чтобы всё доходило до адресатов, не летело в спам и работало как надо.
Реализация обоих сценариев происходит через DNS-зону домена, а если точнее - через определенные TXT-записи.
Как мы помним, TXT-запись содержит переменные “имя” и “значение”. За счет большого числа вариантов использования, TXT-записи также делятся на несколько типов. И в данном примере мы рассмотрим только те, что необходимы для настройки исходящей почты.
SPF-запись
Начнем с SPF (Sender Policy Framework). Данный тип записи нужен почтовым сервисам, которые будут принимать письма, подписанные вашим доменом. Из второго из двух сценариев, описанных выше, становится логично, что даже “легальных” источников таких писем может быть несколько. Более того, любой программист может написать скрипт, который позволит ему со своего сайта рассылать письма, подписанные вашим доменом, соответственно якобы от вашего имени.
Данный способ мошенничества называется “фишингом” и бороться с ним научились именно принимающие письма почтовые сервисы. Отличать настоящие письма от таких подделок почтовикам помогает SPF-запись в зоне вашего домена.
Для данного типа TXT-записи именем всегда выступает домен, по которому идет настройка, а значение имеет следующий шаблон:
v=spf1 include:_spf.mail.ru ip4:123.123.123.123 a mx ~all
Разберем по порядку:
- v=spf1 - обозначает, что данная TXT-запись является SPF-записью 1-й версии;
- директива include указывает сервер исходящей почты, которому данный домен дает разрешение отправлять письма, подписывая собой; в данном случае именно эта часть обеспечивает доставляемость писем, которые вы будете отправлять с вашего доменного ящика на mail.ru;
- сервисы рассылок типа senpulse, mailchimp и др. также используют директиву include;
- директива ip4 дает разрешение отправлять письма с указанного в значении IP-адреса, что обеспечивает доставляемость писем, которые отправляет ваш находящийся по этому IP сайт (заявки, уведомления, рассылки и др.);
- аналогично ip4 есть директива ip6, которая так же дает разрешение для IP-адреса, но уже написанного в IP6-формате;
- директива a и директива mx позволяют отправлять письма с серверов, значения которых прописаны в соответствующих A- и MX-записях зоны домена;
- директива ~all запрещает отправку писем из других источников, которые не указаны ранее в SPF-записи.
Как можно заметить, данный тип SPF-записи актуален для второго сценария из описанных в статье выше, где источников, которые отправляют письма, подписанные доменом, несколько, и все нужно разрешить. Для первого же сценария SPF-запись выглядит следующим образом.
v=spf1 redirect=_spf.mail.ru
Данная запись, помимо определяющей ее как SPF, содержит лишь одну директиву - redirect. Как можно догадаться из названия, данная директива полностью перенаправляет управление исходящей почты только серверам mail.ru.
Как ни странно, но в последнее десятилетие почтовые сервисы решили, что для борьбы с фишингом простой SPF-записи в зоне домена недостаточно. Якобы, неправильная запись может позволить другим источникам слать письма от вашего имени.
Поэтому был введен еще одни тип TXT-записи.
DKIM-запись
DKIM-запись (DomainKeys Identified Mail) - это TXT-запись, которая содержит зашифрованный цифровой ключ. Каждый источник, который отправляет письма от имени домена, имеет свою DKIM-запись. Для писем с сайта ее генерирует сервер, для писем с доменной почты - почтовик, куда она делегирована. Сервисы рассылок также имеют свою DKIM. И запись каждого источника должна быть прописана в DNS-зоне домена.
Почтовик сверяет ключ полученного письма с ключом в DKIM-записи и при соответствии считает источник доверенным.
Имя DKIM-запись чаще всего имеет вид поддомена по типу mail._domainkey.site.ru, sign._domainkey.site.ru. или подобные, а значения начинаются с v=DKIM1; а далее идет сам цифровой ключ.
Получить DKIM-запись для сервера можно в его панели или у службы поддержки, а отдельные сервисы выдают ее при настройке интеграции.
Это были основные примеры использования каждого типа DNS-записей. В будущем мы постараемся более детально и на практике посмотреть настройку каждого процесса, за которые отвечают DNS-записи.
Важно помнить! В сети интернет DNS-записи каждого домена хранятся на серверах интернет-провайдеров, которые делают переобходы по DNS-зонам не в режиме реального времени, а периодически - раз в период от 15 минут до 72 часов. По этой причине при внесении изменений в DNS-зону, часто они применяются не сразу, а спустя вышеуказанный период времени.
Также, всем, кто работает с DNS-зонами доменов, полезно знать сторонние онлайн сервисы для проверки DNS-записей домена. Вот список лучших на наш взгляд:
- xseo.in/dns
- pr-cy.ru/dns
- reg.ru/nettools/dig
- dnschecker.org
Обновление DNS-зоны на серверах этих сервисов происходит с высокой частотой, поэтому по ним удобно проверять, видит ли сеть внесенные в зону изменения.
Друзья, мы, специалисты IT-BUTIK, ведем этот блог для тех, кто хочет самостоятельно вести и администрировать сайт. Мы регулярно наполняем раздел полезной информацией, которая помогает как тем, кто уже приобрел наш готовый сайт, так и для тех, кто планирует покупки.
И специально для вторых у нас есть предложение ниже!