SPF-запись защищает получателей от спама и писем мошенников. Поэтому компании, которые отправляют рассылки, настраивают ее для своих почтовых доменов. Это улучшает доставляемость писем.
10 января 2024
Как и зачем настраивать SPF-запись для домена
Как и зачем настраивать SPF-запись для домена
Часть писем, которые приходят на электронную почту, оказываются спамом или вовсе отправлены мошенниками. Чтобы защитить от них получателей, почтовые сервисы используют цифровые подписи: SPF-запись, DKIM-подпись и политику DMARC. Они работают как пропуск: по ним почтовик решает, доставить письмо, отклонить или отправить в спам. Поэтому компании, которые отправляют рассылки, настраивают цифровые подписи для своих почтовых доменов. Это положительно влияет на их репутацию у почтовых сервисов, а значит, и на доставляемость рассылок.
В статье расскажем, как настроить SPF-запись.
Что такое SPF-запись
SPF-запись (sender policy framework) — это запись в системе доменных имен (DNS) отправителя. DNS похожа на справочник: в ней указаны названия сайтов ― домены и их цифровые адреса ― IP-адреса. С помощью IP-адреса устройства в сети могут обмениваться информацией, в том числе отправлять электронные письма.
Она содержит список IP-адресов, которым разрешено отправлять почту от имени домена отправителя. Так почтовые сервисы могут проверить, что письмо действительно пришло с сервера, который может отправлять письма от имени этого домена.
v=spf1 ip4:192.0.2.1 include: example.com ~all ― так выглядит типичная SPF-подпись.
Вот как она работает:
- Сервер с IP-адресом 192.0.2.1 отправляет письмо от имени домена example.ru.
- Почтовый сервер получателя ищет в DNS домена example.ru запись SPF.
- Если она есть, сервер проверит, указан ли в ней IP-адрес 192.0.2.1.
- Если IP-адрес указан, письмо отправляется в папку «Входящие». Если нет, почтовый сервер может отклонить письмо или отправить его в спам.
Для рассылок можно использовать один или несколько IP-адресов. Например, с одного IP-адреса отправлять продающие рассылки, а с другого ― транзакционные. В этом случае в SPF-подпись нужно включить их все.
Эта цифровая подпись помогает:
- улучшить доставляемость писем, так как с ее помощью почтовый сервер определяет, что сообщение прислал действительный и авторизованный отправитель;
- бороться со спуфингом и фишингом, когда мошенник пытается отправить письмо от имени чужого домена. Например, известной компании вроде «Сбера» или «Госуслуг».
Синтаксис SPF-записи
Запись состоит из нескольких тегов, их еще называют механизмами. В каждом из них зашифрована подсказка для почтового сервера: откуда пришло письмо, опасно ли оно для получателя и что с ним нужно сделать.
Разберем на примере: v=spf1 ip4:192.0.2.1 include: example.com ~all.
- Тег v=spf1 указывает на версию SPF. Сейчас поддерживается только версия spf1, поэтому эта часть будет одинаковой во всех записях.
- Тег ip4:192.0.2.1 означает, что разрешена отправка почты с IP-адреса 192.0.2.1. Наравне с механизмом ip4 может использоваться механизм ip6. Он тоже указывает IP-адреса, с которых можно отправлять письма.
- Тег include: example.com указывает, что нужно учитывать настройки SPF домена example.com. То есть разрешает принимать письма со всех серверов, указанных в ней.
- Тег ~all указывает, что механизм нужно применять ко всем входящим письмам.
В SPF-подпись можно добавить один из четырех префиксов, или квалификаторов: +, -, ~, ?. Он говорит серверу получателя, что делать с письмом, если оно не пройдет проверку. Если у механизма не будет квалификатора, проверка будет считаться пройденной.
В нашем примере используется префикс ~. Он означает, что письмо можно принять, но пометить как подозрительное. Например, отправить в спам.
Вот что означают остальные три:
- принять письмо: +;
- отклонить письмо: -;
- нейтральный префикс, который показывает, что явно не указано, что IP-адресу можно отправлять письма от имени домена: ?.
Синтаксис можно прописать самому, а можно воспользоваться генератором SPF-записи. Это быстро, бесплатно и гарантирует отсутствие ошибок.
Однако одной SPF-записи недостаточно, чтобы дать указание почтовому сервису, что делать с письмом, если оно не пройдет проверку. Она работает только в комплексе с DKIM-подписью и политикой DMARC. Если письмо не пройдет проверку SPF и DKIM, политика DMARC укажет, что с ним сделать: отклонить, положить в спам или пропустить. Поэтому лучше настроить все эти цифровые подписи.
Как настроить SPF-запись
Запись настраивается на сайте DNS-провайдера домена. Вот как это сделать:
1. Определить список серверов, которые могут отправлять письма от имени домена. Это могут быть серверы почтового провайдера: «Яндекс», Gmail или облачные сервисы электронной почты, например Google Cloud или Microsoft Exchange Online.
2. Создать TXT-запись DNS. Запись TXT — это текстовая информация о домене. Например, ее используют, чтобы подтвердить право собственности на домен. А в нашем случае — как контейнер для SPF. В SPF-записи может быть не больше 255 символов, а файл TXT не должен весить больше 512 байт.
3. Добавить TXT-запись DNS на сайте DNS-провайдера домена. Для этого нужно войти в консоль управления DNS-провайдера и найти страницу управления записями домена.
4. Проверить, что все настроено правильно. В специальном сервисе можно проверить:
- существует ли опубликованная запись SPF;
- не превышает ли она установленную длину, используется ли в ней разрешенный набор символов;
- подлинность указанных в ней IP-адресов и доменов.
Например, это можно сделать в сервисе MxToolbox. Для этого нужно ввести имя домена и выбрать из списка проверок SPF Record Lookup.
В сервисе MXToolbox можно проверить валидность каждого элемента отдельно и всю запись целиком
Почему настраивать SPF-запись нужно не всегда
Некоторые платформы для рассылок автоматически обеспечивают корректность настройки SPF-подписи — в этом случае самостоятельно настраивать ее не нужно. Обычно это указано в инструкции по настройке цифровых подписей.
У каждого письма отправитель указывается в техническом заголовке, который используется только для отправки почты, и в теле письма ― его получатель видит в интерфейсе почтового сервиса.
Если клиент отправляет письма через посредника, например, через Mindbox или другой рассыльщик, есть вероятность, что технический домен, для которого сделана SPF-запись, не совпадает с клиентским. В таком случае рассыльщик настраивает ее на своей стороне. Поэтому нашим клиентам не нужно самим создавать и настраивать SPF-запись.