← Назад к вопросам

Как работают SPF и DKIM записи? Зачем они нужны?

2.2 Middle🔥 92 комментариев
#Безопасность#Сети и протоколы

Комментарии (2)

🐱
deepseek-v3.2PrepBro AI6 апр. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Механизмы аутентификации электронной почты: SPF и DKIM

В современном мире электронной почты, где спам и фишинг представляют собой серьёзные угрозы, SPF (Sender Policy Framework) и DKIM (DomainKeys Identified Mail) являются фундаментальными протоколами аутентификации. Они служат для подтверждения легитимности отправителя и защиты домена от несанкционированного использования (спуфинга). Их совместное использование, наряду с DMARC, формирует базовый каркас безопасности электронной почты.

SPF (Sender Policy Framework): Контроль разрешённых отправителей

SPF — это механизм, позволяющий домену публично декларировать, какие именно почтовые серверы имеют право отправлять письма от его имени. Работает он на основе DNS-записей типа TXT.

Как работает SPF:

  1. Публикация политики: Владелец домена (например, example.com) публикует в DNS специальную TXT-запись. В этой записи перечислены IP-адреса или hostname серверов, которые являются авторизованными отправителями для этого домена.
    example.com. IN TXT "v=spf1 ip4:192.0.2.0/24 include:_spf.google.com ~all"
    
    *   `v=spf1` — идентификатор версии протокола.
    *   `ip4:192.0.2.0/24` — разрешает блок IP-адресов.
    *   `include:_spf.google.com` — делегирует проверку политике Google (полезно при использовании Gmail/Workspace).
    *   `~all` (мягкий fail) или `-all` (жесткий fail) — определяет действие для писем с неавторизованных серверов.

  1. Проверка получателем: Когда почтовый сервер получателя (mail.recipient.com) принимает письмо с заголовком From: user@example.com, он выполняет SPF-проверку:
    *   Извлекает домен отправителя из поля `Return-Path` (также известного как `Envelope-From`).
    *   Запрашивает SPF-запись DNS для домена `example.com`.
    *   Сравнивает IP-адрес сервера, от которого пришло письмо, со списком разрешённых в SPF-записи.
    *   Возвращает результат: `Pass` (IP в списке), `Fail` (IP не в списке), `SoftFail`, `Neutral` и т.д.

Зачем нужен SPF: Он предотвращает ситуацию, когда злоумышленник может отправить письмо с поддельным адресом @example.com со своего собственного сервера. Получающий сервер, проверив SPF, увидит несоответствие и пометит письмо как подозрительное или отклонит его.

DKIM (DomainKeys Identified Mail): Цифровая подпись письма

В то время как SPF проверяет сервер, DKIM обеспечивает криптографическую целостность и аутентичность самого содержимого письма. По сути, это цифровая подпись, которая гарантирует, что письмо не было изменено в пути.

Как работает DKIM:

  1. Генерация ключей: Владелец домена генерирует пару криптографических ключей: приватный (хранится в секрете на исходящем почтовом сервере) и публичный (публикуется в DNS домена в виде TXT-записи для специального селектора).
    selector1._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC..."
    
    *   `selector1` — имя селектора, позволяющее использовать несколько ключей (например, для разных сервисов).
    *   `p=...` — собственно публичный ключ.

  1. Подписание исходящего письма: При отправке письма с домена example.com почтовый сервер (например, MTA) с помощью приватного ключа создаёт криптографическую хэш-сумму (подпись) для критически важных частей письма: тела и определённых заголовков (например, From, Subject, Date). Эта подпись добавляется в заголовок письма DKIM-Signature.

    DKIM-Signature: v=1; a=rsa-sha256; d=example.com; s=selector1;
        c=relaxed/relaxed; q=dns/txt; t=1648033125; h=from:to:subject:date;
        bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=;
        b=CU4/F4hAYvHNZrP4JAr1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ+/==
    
  2. Верификация получателем: Сервер получателя, обнаружив заголовок DKIM-Signature:

    *   Извлекает домен (`d=example.com`) и селектор (`s=selector1`).
    *   Запрашивает из DNS публичный ключ по имени `selector1._domainkey.example.com`.
    *   Используя публичный ключ, расшифровывает подпись и сравнивает полученный хэш с самостоятельно вычисленным хэшом от тех же частей полученного письма.
    *   Результат: `Pass` (подписи совпадают, письмо не меняли), `Fail` (подпись неверна), `Neutral` (ошибка проверки).

Зачем нужен DKIM: Он решает две ключевые проблемы:

  • Целостность: Гарантирует, что содержимое письма (тело и важные заголовки) не было подменено или искажено при передаче через промежуточные серверы.
  • Аутентификация отправителя: Подтверждает, что письмо действительно было отправлено с сервера, владеющего приватным ключом домена, что является более надёжным доказательством, чем просто проверка IP (SPF).

Синергия и цель SPF + DKIM

SPF и DKIM работают независимо, но дополняют друг друга. SPF проверяет путь доставки (MAIL FROM), а DKIM — целостность содержимого и подлинность домена в заголовке From. Их совместное использование значительно повышает доверие к письму.

Основные цели этих технологий:

  1. Борьба со спамом и фишингом: Затрудняют злоумышленникам возможность успешно выдавать себя за легитимных отправителей.
  2. Улучшение доставляемости: Почтовые сервисы (Gmail, Яндекс, Outlook) используют результаты проверок SPF/DKIM для оценки репутации письма. Письма с пройденными проверками с большей вероятностью попадут во «Входящие», а не в «Спам».
  3. Формирование основы для DMARC: Политика DMARC опирается на результаты SPF и DKIM, чтобы дать владельцу домена инструменты для явного указания, как получателю поступать с письмами, не прошедшими аутентификацию (отклонять, помещать в карантин), а также получать детальные отчёты о такой почте.

Таким образом, настройка SPF и DKIM является не просто рекомендацией, а обязательным шагом для любого серьёзного домена, использующего электронную почту. Это фундаментальные инвестиции в безопасность, репутацию и надёжность вашей электронной коммуникации.

Как работают SPF и DKIM записи? Зачем они нужны? | PrepBro