Postmaster, abuse и прочие *master для наших доменов: поддерживаем RFC-2142 на Яндексе
Уже писал подобную статью для случая, когда почтовая система реализована на базе MS Exchange, и DNS зона размещена на Ваших DNS серверах. Теперь опишу реализацию той же задачи, но для случая, когда и DNS зона, и почта поддерживается сервисом Яндекса “Почта для домена”.
Регистрация домена на сервисе Яндекса “Почта для домена”
Речь пойдёт о домене csm.nov.ru. Первое, с чего начал в новой организации – зарегистрировал домен (домен – основа в рекламе посредством Интернет, он должен лечь в основу всех контактных координат, поэтому с него и начал). Зарегистрировал домен через nic.ru (эту процедуру описывать смысла нет, она очевидна).
Следующим шагом регистрирую домен на сервисе Яндекса “Почта для домена” (рисунок справа).
Теперь (так как своих DNS серверов для данного домена у меня ещё нет, а использовать домен уже есть необходимость хотя бы для почты) – делегирую домен на серверы Яндекса. Для этих целей пропишу в качестве DNS сервером для моего домена серверы dns1.yandex.ru и dns2.yandex.ru (в консоли управления доменом на nic.ru). Отключаю предварительное тестирование DNS серверов – и записи в корневых DNS серверах изменены.
В результате я получил возможность управлять записями DNS зоны своего домена через сервисы Яндекса (рисунок слева). В принципе – почтовые сервисы Яндекса уже с этого момента будут поддерживать почту для домена (в моём случае – @csm.nov.ru). И как раз теперь настало время вернуться к теме статьи – обеспечим поддержку специальных адресов электронной почты в соответствии с RFC-2142 на почтовом домене, поддерживаемом Яндексом.
RFC-2142 и “Почта для домена” от Яндекса
Есть некоторая тонкость при обслуживании домена почтовыми сервисами Яндекса. Вы не сможете создать ящик postmaster (в моём случае — postmaster@csm.nov.ru), хотя я и не понимаю причин таких ограничений, но Вы сможете создать группу рассылки с таким lname! Поэтому, как и в случае с MS Exchange для всех специальных адресов мы будем использовать группы рассылки.
hostmaster
Для начала исправим SOA запись нашей зоны (уже через online редактор зоны на Яндексе – https://pdd.yandex.ru/domain_ns/csm.nov.ru/, в Вашем случае в конце url будет Ваш домен). Для этих целей на странице, полученной по приведённой выше ссылке, щёлкаем на заголовок “Редактировать SOA запись”, видим следующее (рисунок справа). В поле admin mail Яндекс по умолчанию указывает Ваш почтовый адрес на Яндексе (адрес, соответствующий учётной записи, под которой Вы регистрировали домен на “Почте для Домена”). Меняю этот адрес на hostmaster.csm.nov.ru (в Вашем случае будет Ваш домен, но вместо @ используем “.”, в данном случае – FQDN форма записи адреса электронной почты). Нажимаем “Сохранить SOA запись” – и данные изменены:
nslookup -type=any csm.nov.ru csm.nov.ru text = "v=spf1 redirect=_spf.yandex.ru" csm.nov.ru primary name server = dns1.yandex.ru responsible mail addr = hostmaster.csm.nov.ru serial = 2012091802 refresh = 14400 (4 hours) retry = 900 (15 mins) expire = 1209600 (14 days) default TTL = 14400 (4 hours) csm.nov.ru MX preference = 10, mail exchanger = mx.yandex.ru csm.nov.ru nameserver = dns2.yandex.ru csm.nov.ru nameserver = dns1.yandex.ru csm.nov.ru nameserver = dns2.yandex.ru csm.nov.ru nameserver = dns1.yandex.ru mx.yandex.ru internet address = 77.88.21.89 mx.yandex.ru internet address = 87.250.250.89 mx.yandex.ru internet address = 93.158.134.89 mx.yandex.ru internet address = 213.180.193.89 mx.yandex.ru internet address = 213.180.204.89 dns1.yandex.ru internet address = 213.180.204.213 dns2.yandex.ru internet address = 93.158.134.213
Но этого мало, естественно. Следующий шаг – следует добавить RP и TXT записи hostmaster.csm.nov.ru (крайне желательно, потому как пока мы сообщили только адрес электронной почты, по которому можно связаться с администратором dns зоны, а следует сообщить ведь и телефон, да и не только). Однако, беда в том, что online редактор зоны от Яндекса не позволяет добавлять записи типа RP. Поэтому FQDN, который мы указали в SOA, и будет адресом электронной почты (RP запись позволяла его “переопределить”, что не обязательно). А TXT запись мы добавить вполне можем (рисунок справа).
Теперь можно считать, что с зоной, как с таковой, мы закончили.
abuse
Наравне с такими записями, как hostmaster@ и postmaster@ (определён как обязательный RFC-2821) крайне необходимо поддерживать и abuse@ (RFC-6650, хотя процедура и не регламентирует чётко адрес abuse@, но, учитывая неопределённость, поддержка данного адреса контролируется многими репутационными сервисами (чёрными и серыми списками)). Могу сказать, что процедура определения адреса, на который слать уведомления о спаме и атаках, чётко не зафиксирована (по-крайней мере – я не нашёл указаний, только рекомендации). Но тот же RFC-2142 говорит о том, что именно такой адрес должен быть, всевозможные RFC, описывающие форматы уведомлений, предлагают получать информацию через whois.
Исходя из вышесказанного, предлагаю всё-таки поддерживать адрес abuse@, о чём мы явно сообщим сервису, который по dns запросу как раз позволяет определить abuse адрес администратора домена – abuse.net. Для этой цели необходимо отправить на адрес update@abuse.net письмо следующего содержания:
csm.nov.ru: abuse@csm.nov.ru postmaster@csm.nov.ru
Естественно, письмо должно быть отправлено с этого же домена.
Теперь осталось создать саму рассылку, собственно говоря. Открываем консоль управления почтовыми службами нашего домена на Яндексе — https://pdd.yandex.ru/domain/csm.nov.ru/. Выбираем действие “создать рассылку” (справа в колонке, см. рисунок справа). Вводим lname – и нажимаем кнопку “создать”. Затем переходим по ссылке для нашей рассылки (она так же появится в правом столбце) – и добавляем ящики в группу рассылки (рисунок слева).
Некоторое неудобство по сравнению с MS Exchange в том, что нельзя включать в группы рассылок другие группы рассылок, только ящики того же домена. Но для небольших организаций это совсем не страшно.
postmaster
С поддержкой postmaster@ всё и сложнее, и проще. Проще в том, что регистрировать этот адрес нигде не надо – именно такой адрес должен поддерживаться почтовой системой (определён как обязательный RFC-2821). И создание группы рассылки с данным lname на сервисах Яндекса выполняем по той же процедуре, что и для группы abuse@. А сложность в том, что наши почтовые серверы (в данном случае – Яндекса) должны принимать почту и на адрес postmaster без указания домена, и на адрес postmaster@[ipадрес]! И серверы Яндекса примут сообщение на такой адрес, только увидим его не мы, а postmaster@yandex.ru. Но с этим ничего уже не поделать…
и прочие *master
Для прочих адресов достаточно создать группы рассылки и включить в них необходимые адреса – и всё. Повторяться уже не буду.
Скриптуем всё
Как и обещал, привожу сценарий на PowerShell для создания групп рассылки для описанных выше целей:
Import-Module 'ITG.Yandex.PDD' -Prefix 'Yandex' -ErrorAction Stop; 'sergei.s.betke' ` | New-YandexMailList -DomainName 'csm.nov.ru' -MailList 'master' -Force ` ; 'master' ` | New-YandexMailList -DomainName 'csm.nov.ru' -MailList 'hostmaster' -Force -PassThru ` | New-YandexMailList -DomainName 'csm.nov.ru' -MailList 'postmaster' -Force -PassThru ` | New-YandexMailList -DomainName 'csm.nov.ru' -MailList 'noc' -Force -PassThru ` | New-YandexMailList -DomainName 'csm.nov.ru' -MailList 'abuse' -Force -PassThru ` | New-YandexMailList -DomainName 'csm.nov.ru' -MailList 'webmaster' -Force -PassThru ` | New-YandexMailList -DomainName 'csm.nov.ru' -MailList 'www' -Force -PassThru ` | New-YandexMailList -DomainName 'csm.nov.ru' -MailList 'ftp' -Force -PassThru ` | Out-Null ` ;
Таким образом мы создаём группы рассылки, в которые в качестве члена так же включена группа рассылки! Через web интерфейс Яндекс нам этого сделать не позволяет, а через API позволяет…
В приведённом выше сценарии использован модуль ITG.Yandex.PDD, репозиторий которого со всеми зависимостями доступен на github. Модуль собственного творчества, о его особенностях уже писал ранее.
RSS комментарии
Обратная ссылка