DKIM, или DomainKeys Identified Mail — метод почтовой аутентификации. С его помощью сервер-получатель определяет, пришло письмо от достоверного отправителя или мошенника.
Что такое DKIM-подпись и как она выглядит
Чтобы метод аутентификации DKIM работал, создают два ключа: приватный и публичный.
Приватный шифрует в заголовках каждого отправленного письма данные отправителя. Заголовки не видны получателям писем, а сам ключ находится на сервере почтового провайдера.
Публичный ключ и есть DKIM-подпись или DKIM-запись. Выглядит она как txt-запись, которую необходимо добавить в настройки DNS-зоны домена. Выглядит она так:
v=DKIM1; k=rsa; t=s; p=»»*******….»»
где:
- v — версия DKIM;
- k — тип ключа, всегда указывается равным «rsa»;
- p — ключ, который создаётся через настройки сервисов почтовых рассылок, или его можно сгенерировать на сторонней платформе.
Зачем нужен DKIM
Защищает от мошенников
На уровне почтового сервера мошенники могут заменить адрес отправителя и начать выдавать себя за компанию или бренд с хорошей репутацией. Когда пользователь откроет поддельное письмо и, например, перейдёт по ссылке внутри, он может случайно оставить свои данные — логин и пароль, которые попадут в руки мошенникам.
Такая подделка почты называется фишингом. DKIM позволяет серверу-получателю распознавать фишинговые письма и перемещать их в папку «Спам».
Читайте также
Что нужно сделать, чтобы не попасть в спам
Повышает доставляемость
Через DKIM сервер-получатель может выяснить, каким рейтингом обладает отправитель письма. Письма от отправителя с хорошим рейтингом с большей вероятностью попадают в папку «Входящие».
Даёт доступ к использованию постмастеров
Постмастеры — это сервисы, на которых удобно проводить анализ рассылок: отслеживать доставляемость, проверять открытия писем, количество отписок и жалоб на спам.
Но пользоваться постмастером можно, если настроена email-аутентификация. Один из элементов email-аутентификации — DKIM-подпись. Без неё пользоваться постмастером нельзя.
Как работает DKIM
Для каждого сервера создаётся два ключа шифрования — приватный и публичный.
Приватный ключ размещается на сервере отправителя. Он понадобится для создания DKIM-заголовков всех исходящих писем. В заголовках зашифровываются данные об отправителе.
Публичный ключ помещается в файл DNS-зоны домена в виде TXT-записи, о которой говорилось выше. Этот ключ является открытым и доступен всем.
Когда письмо с DKIM-подписью приходит на сервер-получатель, он расшифровывает DKIM-заголовок, созданный приватным ключом, с помощью публичного ключа. Если данные из заголовка и публичного ключа при проверке совпадут, письмо попадёт во «Входящие», если нет — сервер-получатель перемещает его в «Спам».
Как настроить DKIM-подпись
Чтобы настроить DKIM-подпись, надо:
- иметь собственный почтовый домен;
- обладать доступом администратора сайта, чтобы внести изменения в настройки DNS;
- создать ключ DKIM.
Как создать DKIM-ключи
Создать ключи можно создать на почтовом сервисе, который используется для рассылки писем. Например, чтобы создать ключ в Google, необходимо:
- Зайти в консоль администратора.
- Пройти путь Приложения → Google Workspace → Gmail.
- Кликнуть «Аутентификация электронной почты».
- Выбрать домен, где будет использоваться DKIM.
- Нажать «Создать новую запись».
- Указать размер ключа DKIM в битах: 1024 или 2048, если нужен более надёжный ключ.
- Выбрать префикс.
- Нажать «Создать».
Создать DKIM-ключ можно и на стороннем сервисе, например, на DKIM-генераторе. Необходимо указать имя домена, селектор домена и выбрать размер ключа — 1024 или 2048 битов.
После нажать кнопку «Рассчитать» и скопировать сгенерированные ключи.
Общая настройка
После того как ключи сгенерированы, их надо разместить на домене и сервере, с которого отправляется почта.
Чтобы добавить публичный ключ в DNS-зону домена, нужно:
- Взять публичный ключ и копировать всё, что находится между BEGIN и END.
——BEGIN PUBLIC KEY—— MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuSratnoCyJR9FoZ+c3t0 UrNiDuv9lkfmD4/teG0TJ6o8doO2APZLkRKAvhNdZP0E6Pc13pCysg7ejEBECJ38 6V0kBR+Wd0fcNgLu141k1LUkoO6LHtBj/cxpOKs5WBvVeFWcyHz5j1Tnm3/fZnC+ qMskzsKu1HRdamS2F+omMbSqqk0+yULh4FJF9ZmGNDcTL1DxgjI3TYLcRACfQUuw gCXERFzJEC9X6WBFpfRNx+oEM8tZrz07XSal1cfRrnI9IyjG79MZo0AvzYXt6Edj I9+H1M511GXISz6SKmtKUAURsm2L/OdQyf1xArOBxDDh9OduUEaByHfmNTXUeuNs 5wIDAQAB ——END PUBLIC KEY——
- Зайти в панель управления DNS-зоной домена и создать DKIM-запись согласно следующим параметрам:
Домен: имя_сервера.domainkey.example.com. Вместо _key1 можно использовать что угодно. Варианты: * имя сервера
Тип: TXT
Значение:»»k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuSratnoCyJR9FoZ+c3t0 UrNiDuv9lkfmD4/teG0TJ6o8doO2APZLkRKAvhNdZP0E6Pc13pCysg7ejEBECJ38 6V0kBR+Wd0fcNgLu141k1LUkoO6LHtBj/cxpOKs5WBvVeFWcyHz5j1Tnm3/fZnC+ qMskzsKu1HRdamS2F+omMbSqqk0+yULh4FJF9ZmGNDcTL1DxgjI3TYLcRACfQUuw gCXERFzJEC9X6WBFpfRNx+oEM8tZrz07XSal1cfRrnI9IyjG79MZo0AvzYXt6Edj I9+H1M511GXISz6SKmtKUAURsm2L/OdQyf1xArOBxDDh9OduUEaByHfmNTXUeuNs 5wIDAQAB
- Сохранить изменения. Настройка может вступить в силу не сразу, а, например, через 24 часа — зависит от хостинга. Проверить, начала ли работать DKIM-запись, можно на whatsmydns.net. Достаточно указать адрес сайта и нажать Enter.
Приватный ключ располагается на сервере-отправителе. Важно, чтобы сервер не имел доступа к этому файлу. Необходимо также включить поддержку DKIM в почтовом сервере.
Читайте также
Как мы проводим аудит email-маркетинга
Если DKIM не работает
Если DKIM не работает, надо проверить, полностью ли скопирован ключ — вдруг «потерялась« часть символов.
Ещё вариант — у провайдера хостинга выставлено ограничение на длину ключа. Необходимо обратиться к провайдеру за помощью в добавлении записи.
Если DKIM работает с перебоями, надо проверить, не установлен ли на домене больше одного DNS-сервера. Если их несколько, возможно, один настроен с ошибками. Надо проверить настройки на каждом сервере.
Недостатки DKIM
DKIM полезен, но не гарантирует попадания письма во «Входящие». Обычные пользователи могут настроить DKIM на собственном домене. Если настройку выполнят мошенники, они смогут проходить проверку сервером-получателем.
Также DKIM-подпись неверно расшифровывается сервером-получателем, если специально или случайно внести изменения в порядке заголовков письма, при добавлении заголовков или любых изменениях текста заголовков.
Ещё недостаток — уязвимость ключей шифрования, размер которых меньше 1024 бита, однако при длине, равной 1024 или 2048, ключи взломать трудно.
Что важно запомнить
- DKIM — это метод проверки почты. С помощью двух ключей — приватного и публичного — сервер-получатель выясняет, от достоверного отправителя пришло письмо или мошенника.
- Публичный ключ называют DKIM-записью. Он размещается в DNS-зоне домена.
- Приватный размещается на сервере почтового провайдера. Он генерирует невидимые заголовки, которые добавляются к каждому письму. Внутри заголовков содержатся данные об отправителе.
- При проверке письма сервер-получатель считывает данные из заголовка, потом сравнивает их с информацией в публичном ключе и если всё сходится, перемещает письмо во «Входящие«. Если данные не сходятся, отклоняет письмо или перемещает в «Спам».
- С помощью DKIM можно защитить рассылку от взлома мошенников, повысить доставляемость писем и получить доступ к постмастерам — специальным сервисам, через которые можно собирать статистику о рассылке и анализировать её эффективность.