DNS-хостинг Яндекса. DNS и электронная почта


Думаю, многим будет интересно наконец-то узнать, как работает почта. В нескольких статьях я попытаюсь максимально простым языком расписать все основные вопросы, связанные с работой электронной почты вообще и нужными настройками - в частности.

Для простоты и сокращения количества букв мы рассмотрим простейшую (и наиболее распространенную) ситуацию:

1 доменное имя (example.com).
1 почтовый домен (*@example.com).
1 почтовый сервер (mail.example.com).
1 IP-адрес (127.127.127.127).

Касательно почты, в DNS нас интересует четыре типа записей.

Второй - желательный, без него почта будет отправлятся на А запись. Без остальных, в принципе, можно обойтись, но шансы, что ваше письмо будет отвергнуто как спам возрастают в разы - тот же mail.ru отбрасывает практически всю почту, чьи IP-адреса не имеют PTR, либо PTR относится к dial-up провайдерам. И это правильно.

A-запись

A (Address) - запись, указывающая IP-адрес нужного нам доменного имени. Для корректной работы почты требуется A-запись сервера почты (mail.example.com). Выглядеть, в нашем случае, она будет так:

mail IN A 127.127.127.127

Где:
mail - домен.
IN A - тип записи.
127.127.127.127 - IP нашего почтового сервера.

MX-записи.

MX (Mail eXchange) - основная DNS-запись для электопочты. Она указывает, какими серверами обрабатывается почта для нашего домена.

У нас есть один почтовый домен - @example.com. И один почтовый сервер - mail.example.com. Соответственно, запись будет выглядеть так:

example.com. IN MX 10 mail.example.com

Где:
example.com - домен, для которого обробатывается почта.
IN MX - тип записи.
10 - приоритет записи (Подробнее - ниже).
mail.example.com - A-имя почтового сервера.

MX-запись должна указывать именно на A-запись почтового сервера. Ставить MX указателем на IP или CNAME - не правильно.

Приоритет MX-записи нужен тогда, когда существует больше одного почтового сервера для одного домена (например у Google Mail их шесть). Он указывает, к какому серверу идет обращение в первую очередь, во вторую и так далее (если первый (второй, десятый) сервер недоступен или перегружен или по другим причинам не может принять письмо). Логика простая - приоритетнее тот, цифра которого меньше. Порядок цифр - не ограничен, хоть 10-20-30, хоть 1000-2000-3000.

Если у домена нет ни одной MX-записи, либо ни один из MX-серверов не доступен, сервер отправителя попытается доставить почту на IP, указанный в A-записи домена. Это назвается А-доставкой, но в принципе не кошерно и не используется многими серверами - нужно указывать MX, даже если он всего один.

PTR-запись.

PTR (PoinTeR) - так называемая «обратная запись». Она позволяет обратное разрешение (reverse resolving) IP-адреса в FQDN-хост.

Наш IP в виде reverse будет выглядеть так: 127.127.127.127.in-addr.arpa. В данном примере видно плохо, но адрес инвертируется в обратной зоне. Т.е. IP 192.168.0.1 будет выглядеть как 1.0.168.192.in-addr.arpa.

Для корректного распознования хоста, запись IP-адреса, с которого отправляется должна соответсовать hostname почтового сервера, отправляемому в HELO\EHLO.

PTR-запись в нашем случае, соответственно:

127.127.127.127.in-addr.arpa IN PTR mail.example.com.

Прописать эту запись может владелец блока IP-адресов (Читайте мою статью про распределение адресного пространства). Если вы таковым не являетесь и получили адреса от провайдера - обращайтесь к вашему провайдеру или дата-центру, чтобы запись установил он.

TXT-запись и SPF.

TXT (TeXT) - текстовая запись DNS. Нам она интересна только тем, что может (и в современном мире - должна) содержать в себе SPF.

SPF (Sender Policy Framework) - запись, позволяющая вам указать, какие сервера имеют право отправлять почту от имени вашего домена (представившись вашим сервером, либо с обратным адресом в вашем домене).

Если этой записи нет, и кто-то пытается отправить письмо (как правило, спам) с обратным адресом в вашем домене - оно будет отклонено большинством серверов. Или не будет, и вы получите большие проблемы со своим дата-центром или провайдером и репутацию спамера 🙂

SPF-запись выглядит так:

v=spf1 ip4:1.1.1.1 +a +mx -all (пример).

v=spf1 - версия протокола.
(+\-)a - разрешение или запрет отправки почты с IP, соответствующего A-записи домена.
(+\-)mx - разрешение или запрет отправки почты с IP, соответствующего MX-записи домена.
ip4:IP - явное указание IP, с которого можно принимать почту от имени домена.
(~\-all) - отвергать или принимать почту от IP, не перечисленных в списке и не указанных явно.

В нашем случае TXT SPF запись будет такой:

example.com. IN TXT «v=spf1 +mx +a -all»

Таким образом, мы разрешили прием почты от имени домена с IP, соотвествующих A или MX записям и запретили прием от других адресов - никто не сможет наспамить прикинувшись нами или обмануть наших пользователей, отправив фишинговую ссылку от имени тех. поддержки.

Сегодня практически любой виртуальный хостинг в качестве дополнительной услуги предлагает возможность создания почтовых ящиков для вашего домена, однако удобство работы с такими ящиками иногда оставляет желать лучшего. Чтобы поднять качество работы с почтой домена можно воспользоваться бесплатным сервисом от Яндекс Почта для домена . Данный сервис позволяет привязать почту вашего домена к почтовым серверам Яндекс с возможностью создания до 1000 безлимитных почтовых ящиков с использованием всех преимуществ сервиса Яндекс.Почта , таких как автоматическая проверка антивирусом, спам фильтры, доступ через веб-интерфейс, доступ с мобильных устройств и через прямое подключение по протоколам SMTP/POP3/IMAP.

Одним из основных этапов настройки привязки домена к почтовой системе Яндекса является создание специальных записей в DNS-зоне вашего домена. Чтобы максимально упростить и автоматизировать данную процедуру, можно произвести делегирование домена на NS-серверы Яндекса, то есть фактически воспользоваться ещё одним бесплатным сервисом DNS-хостинг Яндекса .

В этой заметке мы поэтапно рассмотрим процедуру подключения почты домена к почтовым серверам Яндекса а также делегирование домена серверам Яндекса на примере нашего домена IT-KB.RU

Регистрируем аккаунт на Яндексе

Для работы с Почтой для домена необходим аккаунт Яндекса, используя который, мы в дальнейшем будем управлять почтой. На данный момент к каждому аккаунту можно подключить до 50 доменов. Зарегистрируемся и получим аккаунт Яндекс, если этого ещё не было сделано ранее.

Подключаем домен к Яндексу

После того, как мы авторизовались на сайте Яндекс используя созданный аккаунт, откроем cтраницу добавления домена , укажем имя нашего домена и нажмём кнопку Подключить домен .

После добавления домена, нам нужно будет подтвердить то, что мы являемся его владельцем. На веб-странице будет отображаться статус Домен не подтверждён и будет предложено три варианта действий, которыми мы сможем подтвердить владение доменом.

Из трёх предложенных вариантов я выбрал первый вариант с размещением файла в корневом каталоге сайта. После того, как указанный файл размещен, жмём кнопку Проверить владение доменом .

После успешной проверки нас перенаправят на страницу настройки MX -записи для нашего домена. Внести указанные изменения в DNS-зоне нашего домена можно как самостоятельно, так и автоматически, если выполнить делегирование домена на Яндекс. Учитывая то, что помимо MX-записи в нашем домене для полноценной поддержки почты Яндекс потребуется внести ещё несколько служебных SRV-записей, проще всего выполнить делегирование домена, в результате которого все нужные записи в DNS-зоне нашего домена будут созданы автоматически.

Пройдём по справочной ссылке делегировать домен на Яндекс и ознакомимся с информацией о том, как делегировать DNS-домен NS-серверам Яндекса. Здесь всё предельно просто. Переходим на DNS-хостинг, на котором в данный момент расположен наш доменом и правим записи NS-серверов. Поменяем текущие NS-серверы на dns1.yandex.net и dns2.yandex.net

Ждём некоторое время (может пройти от нескольких часов до двух суток), чтобы изменения разошлись по нейм-серверам интернета и проверяем результат, например, с помощью утилиты nslookup

Как видим, теперь нейм-серверами нашего домена являются серверы Яндекса, и мы можем вернуться к настройке почты для домена. Вернёмся на консоль управления почтой домена и увидим, что теперь статус домена изменился на Домен подключён и делегирован на Яндекс .

Откроем ссылку Редактор DNS и просмотрим автоматически добавленные и настроенные после делегирования домена записи для поддержки сервисов Яндекса - MX ,CNAME записи для указания почтового сервера, SRV (SPF , DKIM ) записи для поддержки сервисов почты и системы обмена сообщениями по XMPP.

Создадим новый почтовый ящик для нашего домена и ознакомимся с доступными возможностями по управлению ящиками

Для правильной работы почтового сервера важно иметь правильно настроенную DNS зону. В мы уже касались некоторых аспектов, связанных с системой DNS, сегодня мы остановимся на этом вопросе более подробно. Настройка DNS зоны относится к подготовительным операциям перед развертыванием почтового сервера и от нее непосредственно зависит работоспособность системы электронной почты.

Неправильные настройки способны привести к тому, что почту будет невозможно доставить вашему почтовому серверу или сервера получателей будут отклонять вашу почту. Действительно, если записи вашей зоны не содержат сведений о почтовом сервере, куда должна отправляться почта? На деревню дедушке? Можно, конечно, попросить настроить DNS зону вашего провайдера, но лучше сделать это самим.

Что нам понадобиться? Выделенный IP адрес (допустим 11.22.33.44), который вы должны получить у своего провайдера. Доменное имя (например example.com), его можно зарегистрировать у любого регистратора или их партнера. При регистрации у партнера уточняйте, предоставляет ли он доступ к управлению DNS зоной, иначе придется потратить дополнительное время, нервы и деньги на перенос домена к регистратору.

Если у вас уже есть домен и, скорее всего, на нем функционирует сайт, уточните, возможно ли управление DNS зоной из панели хостинг провайдера, в противном случае лучше перенести домен к регистратору, для этого обратитесь в поддержку провайдера.

Итак, домен у нас есть. Какие записи содержит его DNS зона? Во первых это SOA запись - описание зоны. Мы не будем подробно разбирать все записи, это выходит за рамки нашей статьи, но иметь общее представление о них необходимо. Также должны быть две NS записи, указывающие на сервера имен (DNS сервера) обслуживающие данный домен, это будут сервера регистратора или хостинг провайдера.

Первой записью, которую необходимо добавить будет A запись или запись имени. Она должна указывать на IP-адрес вашего сервера, если вы решите обслуживать все запросы к домену у себя или на IP адрес хостинг провайдера, если решите разместить свой сайт на хостинге. При размещении сайта у хостера домен обычно делегируется на его DNS сервера (прописываются соответствующие NS записи) и A запись будет сделана автоматически при парковке домена.

Чаще всего встречается этот вариант, но при необходимости вы всегда сможете создать A запись сами. Данная запись имеет вид

Example.com. IN A 22.11.33.44

В нашем примере 22.11.33.44 адрес нашего хостинг провайдера, у которого расположен сайт. Обратите внимание на точку в конце имени, это указывает что имя абсолютное, при отсутствии точки имя считается относительным и к нему добавляется доменное имя из SOA. Проверить запись можно командой nslookup .

Для работы почтового сервера нужно создать MX запись, которая должна указывать на наш почтовый сервер. Для этого создадим запись:

Example.com. IN MX 10 mail.example.com.

Также можно написать просто:

Example.com. IN MX 10 mail

К такому имени (без точки на конце) example.com будет добавлено автоматически. Цифра 10 определяет приоритет сервера, чем она меньше, тем выше приоритет. Кстати, DNS зона уже может содержать MX запись вида:

Example.com. IN MX 0 example.com.

Oбычно эта запись автоматически создается хостинг провайдером при размещении сайта, ее нужно удалить.

Теперь создадим A запись для mail.example.com

Mail.example.com. IN A 11.22.33.44

Теперь вся почта для домена example.com будет направляться хосту mail имеющему адрес 11.22.33.44, т.е. вашему почтовому серверу, в то-же время сайт example.com продолжит работать на сервере провайдера по адресу 22.11.33.44.
Может возникнуть вопрос, а почему нельзя сразу указать в MX записи IP адрес почтового сервера? В принципе можно, некоторые так и делают, но это не соответствует спецификациям DNS.

Также можно сделать алиасы для почтового сервера типа pop.example.ru и smtp.example.ru . Зачем это надо? Это позволит клиенту не зависеть от особенностей вашей инфраструктуры, один раз прописав настройки. Допустим, что ваша компания разрослась и выделила для обслуживания внешних клиентов отдельный почтовый сервер mail1 , все что вам понадобиться, это изменить две DNS записи, клиенты и не заметят того, что работают с новым сервером. Для создания алиасов используются записи типа CNAME:

Pop IN CNAME mail.example.com.
smtp IN CNAME mail.example.com.

На этом настройку прямой DNS зоны можно считать законченной, остается самое интересное - обратная зона. Обратная зона управляется провайдером, выдавшим вам IP адрес и самостоятельно управлять ей вы не можете (если только вы не владелец блока IP адресов). Но добавить как минимум одну запись в обратную зону необходимо. Как мы писали в прошлой статье, многие почтовые сервера проверяют PTR записи (записи обратной зоны) для отправляющего сервера и при их отсутствии или несовпадении с доменом отправителя такое письмо будет отклонено. Поэтому попросите провайдера добавить для вас запись вида:

44.33.22.11.in-addr.arpa. IN PTR mail.example.com.

Немного странный вид, не правда ли? Разберем структуру PTR записи более подробно. Для обратного преобразования имен используется специальный домен верхнего уровня in-addr.arpa. Это сделано для того, чтобы использовать для прямого и обратного преобразования имен одни и те же программные механизмы. Дело в том, что мнемонические имена пишутся слева направо, а IP адреса справа налево. Так mail.example.com. означает что хост mail находится в домене example, который находится в домене верхнего уровня com., 11.22.33.44 означает что хост 44 находится в подсети 33, которая входит в подсеть 22, принадлежащую сети 11. Для сохранения единого порядка PTR записи содержат IP адрес "задом наперед" дополненный доменом верхнего уровня in-addr.arpa.

Проверить MX и PTR записи также можно командой nslookup используя дополнительный параметр -type=MX или -type=PTR

Ну и конечно не стоит забывать, что любый изменения в DNS зонах происходят не мгновенно, а в течении нескольких часов или даже суток, необходимых для распространения изменений в мировой системе DNS. Это означает, что несмотря на то, что почтовый сервер у вас начнет работать через 2 часа после внесения изменений, у вашего партнера почта может не отправляться к вам в течении более длительного времени.







2024 © gtavrl.ru.