Бесплатный инструмент

Проверка DKIM-записи

Находим DKIM-ключ домена и читаем его по-настоящему: тип, длину, отозван ли он и не остался ли в тестовом режиме. Знаете свой селектор — впишите. Не знаете — переберём те, которыми пользуются крупные провайдеры.

Оставьте селектор пустым — переберём те, которые используют крупные провайдеры.

Что доказывает DKIM

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

Именно поэтому DKIM — та половина аутентификации, которая переживает пересылку: подпись едет вместе с письмом, тогда как SPF описывает лишь сервер, который его передал.

Где лежит ключ

На имени <селектор>._domainkey.вашдомен, в TXT-записи с v=DKIM1, типом ключа и самим ключом в p=. Селектор нужен, чтобы домен мог публиковать несколько ключей сразу, — благодаря этому ротация проходит без простоя: публикуете новый ключ на новом селекторе, переключаете подпись на него, через неделю удаляете старый.

Что проверяет этот инструмент

  • Отозванный ключ — запись опубликована с пустым p=, и любая подпись им не проходит.
  • Длину ключа, прочитанную из самого ключа, а не из того, что заявлено в записи. Ниже 1024 бит получатель вправе проигнорировать подпись.
  • Тестовый режим (t=y), который говорит получателям не реагировать на неудачную проверку.
  • Ключи только под SHA-1, подпись которыми проверяющий по RFC 8301 считает окончательно неверной.
  • Значение, которое не читается как ключ, и несколько записей на одном селекторе.

Сам по себе DKIM подделку не останавливает

Подпись, проверять которую никто не обязан, ничего не защищает: поддельное письмо просто приходит неподписанным. Обязательной DKIM делает DMARC — он говорит получателям действовать, когда ни DKIM, ни SPF не совпадают с доменом в заголовке From.

Вопросы

Что такое селектор и где взять свой?

Селектор — метка, которая позволяет одному домену публиковать несколько ключей: запись лежит на имени <селектор>._domainkey.вашдомен. Его выбирает тот, кто подписывает вашу почту, и показывает в своей инструкции по DNS: Google Workspace использует google, Microsoft 365 — selector1 и selector2, собственный сервер обычно default или mail. Ещё его можно прочитать в теге s= заголовка DKIM-Signature любого отправленного вами письма.

Ничего не найдено. Значит, DKIM у меня нет?

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

1024-битный ключ — это проблема?

Сегодня он проверяется везде. Google, Microsoft и Yahoo рекомендуют 2048, и именно 1024 первым попадёт под отказ. Ротация — это изменение в DNS и перезапуск, так что лучше сделать её до того, как она станет срочной.

Что означает t=y?

Тестовый режим: получателям сказано считать неудачную подпись так, как будто письмо не подписано. Он нужен, чтобы опубликовать ключ до того, как вы ему доверяете, и его регулярно забывают выключить после переезда — DKIM опубликован, виден и не делает ничего.

Запись опубликована, но ключ не разбирается.

Почти всегда значение обрезала или переразбила панель DNS. Ключ на 2048 бит — это 392 символа, их нужно разбить на части в кавычках, что одни панели делают сами, а другие нет. Опубликуйте значение целиком и дайте панели разбить его.

Проверить другую запись