Настройка DKIM в @prisma-cms

Всем привет! Сегодня я кратко опишу процедуру запуска @prisma-cms с настройками DKIM, то есть с ключом подтверждения домена для отправляемых с сервера писем. Без него, в большинстве случаев отправки писем с сервера, они будут отправляться в спам (а то и вовсе не приниматься почтовыми серверами). 1. Устанавливаем мейл-сервер для отладки. Если мы занимаемся первичной разработкой и отладкой локально, то имеет смысл локально установить мейл-сервер для отладки, который будет на себя ловить всю отправляемую почту. Это очень удобно, так как часто реальные почтовые серверы могут не просто в спам письма отправлять, но и вовсе не принимать письма, если с ними что-то не так. А со своим почтовым сервером мы сможем получить все письма и посмотреть их исходники. Для установки выполняем Если все ОК, откройте http://localhost:8025, должен крутиться веб-интерфейс установленного почтового клиента. http://joxi.ru/MAjz7eNc4zjzzA 2. Генерируем ключи. Идем на https://dkimcore.org/tools/keys.html, указываем свой домен и получаем приватный и публичный ключ. Приватный ключ надо сохранить на сервер, к примеру в /opt/dkim/mydomain/privatekey.txt. Публичный ключ мы себе никуда не сохраняем, а просто записываем в DNS. Пример: То есть надо в управлении DNS создать TXT-запись поддомен 23423423.vr._domainkey со значением вида v=DKIM1;p=PublicKEY (поддомен конечно же у вас будет указан другой). 3. Запускаем @prisma-cms с указанием DKIM-ключа. Полная команда будет выглядеть вот так: Обратите внимание! Здесь есть путаница. Поддомен предлагается создать 1551899575.vr._domainkey, но key selector не 1551899575.vr._domainkey, а 1551899575.vr. Если указать 1551899575.vr._domainkey, то будет ошибка, точнее об этом не будет сказано, но если смотреть исходники полученного письма в гугле, то DKIM не пройден. http://joxi.ru/nAyYL6ZSYZ9wPA Можно еще проверить ключ здесь: https://dkimcore.org/tools/, только вводим домен не в раздел Generate a DKIM Core Key, а Check a published DKIM Core Key, и туда же указываем ключ поддомена, в моем случае 1551899575.vr Должно быть все ОК http://joxi.ru/DmBJ1RaCw0qqKm 4. Проверяем ключ. Запускаем фронт Регистрируем пользователя (если его еще нет), после этого разлогиниваемся и запрашиваем новый пароль. Ждем некоторое время (по умолчанию рассылка писем выполняется раз в минуту или типа того), или просто перезапускаем сервер (при запуске выполняется рассылка писем) и получаем письмо счастья. Смотрим исходник письма, есть информация о подписи: http://joxi.ru/krDq1k3tERGLvm Если с подписью все ОК, то гугл это отметит: http://joxi.ru/n2YdR0WHoMk0am P.S. В свое время я не раз настраивал DKIM на сервере. Тогда приходилось ставить отдельный софт, конфигурить его, sendmail конфигурить и т.п. Задачу разных подписей для разных доменов на одном сервере я и вовсе не победил... А сейчас все гораздо проще. Ничего особенно ставить и не надо. Просто лирическое отступление... P.P.S. Плюс к этому желательно еще добавить записи SPF и DMARK. Я создаю такие: