Электронная почта - важнейший инструмент для бизнеса, и большинство из нас ежедневно используют ее для общения. Однако с ростом числа пользователей электронной почты растет и проблема спама, подмены электронной почты, фишинга, китов и мошенничества с электронной почтой. Эти виды атак могут нанести значительный ущерб, включая потерю репутации, финансовые потери и утечку данных. Чтобы предотвратить такие атаки, компании должны принимать упреждающие меры по защите своих систем электронной почты. Одним из способов сделать это является настройка SPF.
Крупнейшие поставщики электронной почты, такие как Yahoo Mail и Google Workspace, рекомендуют использовать такие протоколы аутентификации электронной почты, как Sender Policy Framework (SPF), DomainKeys Identified Mail (DKIM) и Domain-based Message Authentication, Reporting, and Conformance (DMARC), чтобы защитить получателей электронной почты от потенциального мошенничества.
Ключевые выводы
- Протоколы проверки подлинности электронной почты, такие как SPF, являются важнейшими инструментами для предотвращения подмены почты, фишинга и мошенничества.
- Настройка действительной записи SPF подразумевает указание всех авторизованных почтовых серверов (включая сторонние) с помощью одной записи DNS TXT для каждого домена.
- Регулярное обновление записей SPF и соблюдение ограничения в 10 DNS-поисков (избегая таких нежелательных механизмов, как 'ptr') имеют решающее значение для обслуживания и доставки.
- Тестирование записи SPF помогает проверить правильность настройки и функциональность.
- SPF обеспечивает базовую защиту, но лучше всего работает с DKIM и DMARC для обеспечения комплексной безопасности электронной почты и соответствия нормативным требованиям.
SPF в системе безопасности электронной почты - объяснение
Что такое SPF? SPF расшифровывается как Sender Policy Framework. Протокол аутентификации электронной почты позволяет указать, какие серверы имеют право отправлять электронную почту на ваш домен. SPF работает путем добавления записи DNS TXT в файл зоны DNS вашего домена, в которой перечислены IP-адреса или имена хостов, разрешенные для отправки электронной почты с данного доменного имени. Эта запись просматривается принимающими почтовыми серверами для проверки подлинности письма; она сообщает другим почтовым серверам, что все письма, отправленные с вашего домена, которые не приходят с разрешенных IP-адресов, должны обрабатываться в соответствии с указанной вами политикой (например, отклоняться или помечаться как подозрительные).
Настройка действительной записи SPF необходима для предотвращения отправки электронных сообщений неавторизованными пользователями с использованием вашего доменного имени. Например, спамеры или злоумышленники могут использовать ваше доменное имя для рассылки спама или фишинговых писемЭто может повредить репутации вашего бренда, привести к блокировке или отклонению ваших законных писем другими серверами, а также поставить под угрозу безопасность ваших клиентов и сотрудников.
Упростите настройку SPF с помощью PowerDMARC!
Компоненты SPF
Основные компоненты SPF-запись в DNS являются следующие:
- Версия (v=spf1):
Указывает версию SPF, всегда начинающуюся с v=spf1. - IP4 и IP6 (ip4: / ip6:):
Список разрешенных адресов IPv4 и IPv6, с которых разрешено отправлять электронную почту для домена. - Механизмы A и MX (a: / mx:):
- a: разрешает отправку писем с серверов, чьи IP-адреса совпадают с A-записью домена (или конкретным именем хоста, если оно указано, например, `a:mail.example.com`).
- mx: позволяет получать электронную почту с серверов, перечисленных в записях MX (Mail Exchange) домена. Здесь должен быть указан домен (`mx:example.com`), а не конкретное имя хоста почтового сервера.
- Механизм включения (include:):
Разрешает SPF-записи других доменов для авторизации отправителей, что полезно, когда сторонние службы отправляют электронные письма от имени вашего домена. Обратитесь к сторонней организации, чтобы уточнить правильное значение домена для оператора include. - Механизм PTR (ptr:):
Выполняет обратный поиск DNS. Однако RFC7208 не рекомендует использовать механизм 'ptr' из-за проблем с надежностью и производительностью. Обычно рекомендуется использовать механизмы 'a', 'mx' или 'ip4'/'ip6'. - Все механизмы (все):
Устанавливает правило по умолчанию для отправителей, не найденных предыдущими механизмами. Оно всегда должно располагаться в самом конце записи SPF. Возможные варианты:- -все: Жесткий отказ (отклонять неавторизованные IP). Рекомендуется для принудительного применения.
- ~all: Soft fail (пометить неавторизованные IP как подозрительные). Часто используется при начальной настройке или тестировании.
- ?all: Нейтральный (никаких конкретных действий в отношении неавторизованных IP). Обеспечивает незначительную защиту.
- +all: Пропуск (разрешает все IP-адреса, настоятельно не рекомендуется, так как это сводит на нет цель SPF).
- Перенаправление (redirect=):
Указывает на SPF-запись другого домена, если вы хотите использовать его политику вместо определения механизмов в текущей записи. Заменяет необходимость использования механизма 'all'. - Модификаторы:
Необязательные правила для тонкой настройки, например `exp=` для объяснений при неудачах, хотя встречаются реже.
Пример SPF
v=spf1 ip4:192.168.1.1 include:_spf.thirdparty.com -all
В этом примере разрешены сообщения электронной почты с адреса 192.168.1.1 и включает запись SPF стороннего производителя, отклоняя письма с других IP с параметром -all.
Освоение настроек SPF
Настройка SPF - это конфигурация протокола аутентификации электронной почты SPF в DNS владельца домена. Настройка SPF позволяет авторизовать легитимные источники отправки, гарантируя, что серверы-получатели смогут легко отличить подлинного отправителя электронной почты от того, кто просто выдает себя за легитимное доменное имя. Это необходимый шаг в проверке электронной почты для защиты от кибератак на основе электронной почты.
Как настроить и добавить SPF-записи
Настройка SPF необходима не только для ваших активных источников, но и для всех принадлежащих вам доменов, включая не отправляемые или "припаркованные" домены, чтобы гарантировать их безопасность от вредоносного использования. Настройка SPF-записи - несложный процесс, который включает в себя следующие шаги:
Шаг 1: Определите серверы электронной почты и источники отправки
Прежде всего необходимо составить полный список всех серверов и служб, имеющих право отправлять электронные письма для вашего домена. Эти источники могут включать ваши собственные почтовые серверы (например, Microsoft Exchange, веб-серверы типа Gmail), сторонние поставщики услуг электронной почты (ESP), которые вы используете для маркетинговых или транзакционных писем, и другие сервисы, такие как платежные процессоры, платформы электронной коммерции, CRM, службы поддержки или системы продажи билетов, которые отправляют электронные письма от вашего имени.
Шаг 2: Создание SPF-записи
После того как вы определили все авторизованные источники отправки, вы можете создать SPF-запись с помощью инструмент для создания SPF-записей или вручную. Запись SPF - это TXT (текстовая) запись в конфигурации DNS вашего домена. Убедитесь, что вы создаете только одну SPF-запись для каждого домена. Простой синтаксис может выглядеть следующим образом:
v=spf1 ip4:<IP address> include:<third-party domain> -all
In this example, “v=spf1” indicates the SPF version, “ip4:<IP address>” lists an authorized IP, “include:<third-party domain>” incorporates a third-party sender’s policy, and “-all” at the end indicates that emails from sources not listed should be rejected. Double-check for typos, as even small errors like ‘inlcude’ instead of ‘include’ can invalidate the record.
Шаг 3: Опубликуйте свою SPF-запись
После создания SPF-записи необходимо опубликовать ее в DNS вашего домена. Администраторы доменов могут легко произвести необходимые обновления DNS. Для этого нужно зайти на сайт DNS-провайдера и добавить новую TXT-запись с содержимым SPF-записи. Фактическое содержание должно начинаться с `v=spf1` и не должно заключаться в двойные кавычки в самой DNS-записи (хотя некоторые DNS-интерфейсы могут отображать его с кавычками). В качестве альтернативы вы можете попросить свою ИТ-службу или хостинг-провайдера сделать это за вас. Помните, что изменения DNS могут распространяться по Интернету в течение некоторого времени (до 72 часов, хотя часто гораздо быстрее).
Шаг 4: Проверьте свою SPF-запись
После того как вы опубликовали свою SPF-запись и дали ей время распространиться, необходимо протестировать ее, чтобы убедиться, что она работает правильно и не превышает лимит в 10 DNS-поисков (такие механизмы, как `include`, `a`, `mx`, `ptr`, `exists` и `redirect`, учитываются в этом лимите, включая любые поиски внутри вложенных операторов `include`). Вы можете использовать онлайн программы проверки SPF-записейтакие как PowerDMARC или MXToolbox, для проверки вашей SPF-записи. Эти инструменты подскажут вам, действительна ли ваша SPF-запись, правильно ли она отформатирована, находится ли в пределах ограничений на поиск и функционирует ли она так, как нужно.
5 заблуждений о записях SPF
В интернете ходят мифы о записи SPF, которые могут привести к принятию неверных решений. Давайте развеем их один за другим:
1. SPF сам по себе может предотвратить спуфинг
Это неправда. Настройка SPF сама по себе не может предотвратить все типы подмены или самозванства, особенно в отношении заголовка 'From', который видят пользователи. Чтобы обеспечить более надежную защиту и проинструктировать получателей о том, как действовать в случае отказа, SPF необходимо сочетать с DKIM и DMARC (Domain-based Message Authentication, Reporting, and Conformance). DMARC позволяет владельцам доменов определять политику (например, отклонять или помещать в карантин) для писем, которые не прошли проверку SPF или DKIM.
2. Вы можете использовать +all в SPF-записи
Использование +all позволяет любому серверу в Интернете отправлять электронные письма от имени вашего домена. Это полностью сводит на нет цель безопасности, которую выполняет протокол SPF. Вместо этого рекомендуется использовать ~all (мягкий отказ) или, предпочтительно, -all (жесткий отказ) в конце записи, чтобы эффективно развернуть SPF.
3. SPF работает для пересылаемых писем
Мы все хотели бы, чтобы это было правдой. К сожалению, во многих сценариях пересылки почты SPF ломается. Это происходит потому, что IP-адрес сервера пересылки часто не совпадает с авторизованными IP-адресами, указанными в SPF-записи оригинального отправителя, и информация в заголовке может измениться. В таких случаях такие протоколы, как DKIM (который обычно выживает после пересылки) или, предпочтительно, ARC(Authenticated Received Chain), могут помочь сохранить результаты аутентификации при пересылке.
4. SPF-записи имеют неограниченное количество DNS-поисков
Спецификация SPF (RFC) устанавливает максимальное ограничение в 10 DNS-поисков для одной SPF-проверки. Такие механизмы, как `include`, `a`, `mx`, `ptr`, `exists` и `redirect`, выполняют поиск DNS. Превышение этого лимита приводит к ошибке SPF PermError (постоянная ошибка), из-за которой легитимные электронные письма могут не пройти проверку подлинности. Чтобы не превысить лимит, важно сохранять краткость записи и потенциально использовать методы оптимизации SPF, такие как сглаживание или динамические SPF-макросы, особенно если вы используете много сторонних отправителей.
5. С SPF вы можете "настроить и забыть"!
Не совершайте эту ошибку с SPF! Ваша инфраструктура отправки электронной почты может меняться со временем - вы можете добавлять новые сторонние сервисы, менять ESP или выводить из эксплуатации старые серверы. Вам необходимо регулярно обновлять записи SPF, чтобы отразить эти изменения. Отсутствие обновлений означает, что новые законные источники отправки могут быть не авторизованы, что может привести к блокировке их писем или их пометке как спама на серверах-получателях.
Как работает SPF-запись?
- Владелец домена создает SPF-запись (TXT-запись в DNS) вручную или с помощью онлайн-инструмента, в которой указываются источники отправки (IP-адреса, домены через include и т. д.), которым разрешено отправлять электронные письма от имени домена.
- При получении электронного письма почтовый сервер получателя извлекает домен из адреса Return-Path (также известного как конверт отправителя или Mail From) письма.
- Получающий сервер выполняет DNS-запрос, чтобы найти запись SPF TXT для домена отправителя.
- Получающий сервер проверяет, совпадает ли IP-адрес соединяющего сервера, отправившего письмо, с любым из авторизованных источников, перечисленных в записи SPF.
- Если есть совпадение (Pass), письмо проходит проверку SPF. Если совпадения нет, результат зависит от механизма 'all', определенного в записи (например, -all для Fail, ~all для SoftFail, ?all для Neutral). Этот результат может повлиять на то, попадет ли письмо во входящие, в папку спама или будет отклонено, особенно в сочетании с DMARC.
Советы по точной настройке SPF
Вот несколько советов по созданию надежной и эффективной настройки SPF-записи:
- Укажите все авторизованные источники отправки: Убедитесь в том, что вы тщательно перечислили все серверы и сторонние сервисы, имеющие право отправлять электронную почту для вашего домена. Отсутствие источника может привести к проблемам с доставкой легитимной почты.
- Примените SPF ко всем своим доменам: Защитите даже не отправляющие (припаркованные) домены, опубликовав SPF-запись типа `v=spf1 -all`, чтобы явно указать, что с них не должно приходить никаких писем.
- Используйте правильный механизм "все": Используйте `~all` (SoftFail) на начальных этапах тестирования или перехода. После того как вы убедитесь в этом, используйте `-all` (Fail) для более строгого применения, которое четко указывает принимающим серверам отклонять неавторизованные сообщения электронной почты. Избегайте `?all` (Neutral) и никогда не используйте `+all` (Pass).
- Правильно расположите 'all': Механизм `all` всегда должен быть последним компонентом в строке записи SPF.
- Правильно используйте механизм "include": Механизм "include" необходим для авторизации сторонних отправителей. Убедитесь, что вы используете правильный домен, предоставленный третьей стороной для своей политики SPF.
- Осторожно используйте механизмы 'mx' и 'a': Используйте `mx` для авторизации серверов, перечисленных в MX-записях вашего домена (`mx:yourdomain.com`). Используйте `a` для авторизации IP-адресов, связанных с A-записью вашего домена (`a`) или определенным именем хоста (`a:mail.yourdomain.com`). Не используйте `mx` с конкретным именем хоста почтового сервера.
- Избегайте нежелательных механизмов: Не используйте механизм `ptr`, так как он устарел и ненадежен.
- Не превышайте лимит в 10 DNS-поисков: помните о механизмах (`include`, `a`, `mx`, `exists`, `redirect`), которые требуют DNS-поисков. Вложенные запросы учитываются. Превышение лимита приводит к PermError.
- Проверьте, нет ли опечаток: Перед публикацией внимательно просмотрите запись SPF на предмет синтаксических ошибок и опечаток.
- Правильная публикация в DNS: Убедитесь, что запись опубликована как тип TXT и ее содержимое начинается с `v=spf1` без заключения в кавычки в поле фактических данных DNS.
- Поддерживайте свою запись SPF в актуальном состоянии: при изменении инфраструктуры электронной почты или списка сторонних отправителей не забудьте своевременно обновить запись SPF, чтобы отразить эти изменения. Регулярно просматривайте и поддерживайте свою запись.
Преимущества оптимизации настроек SPF с помощью PowerDMARC
Лимит DNS-поиска - это существенное ограничение, накладываемое стандартом SPF. Он ограничивает количество DNS-поисков, которые могут быть выполнены, когда сервер-получатель проверяет SPF-запись электронного письма. Этот лимит установлен на уровне 10 DNS-запросов. Если для оценки SPF-записи требуется более 10 запросов (включая вложенные запросы от механизмов `include`), это приводит к ошибке SPF PermError, в результате чего легитимные электронные письма могут не пройти проверку подлинности и столкнуться с проблемами доставки.
Сплющивание SPF это техника, используемая для сокращения количества DNS-запросов, необходимых для проверки SPF-записи электронной почты. Она работает за счет замены таких механизмов, как `include`, на фактические IP-адреса, разрешенные в результате этих поисков, консолидируя их непосредственно в основной записи SPF. Это позволяет значительно сократить количество DNS-запросов, необходимых для проверки подлинности электронной почты. PowerDMARC предлагает автоматическое сглаживание SPF или динамические решения на основе макросов для управления сложными SPF-записями и сохранения лимита.
Вот пример того, как может помочь выравнивание SPF:
Допустим, ваша компания использует несколько сторонних сервисов для отправки электронных писем. Это может быть программное обеспечение для автоматизации маркетинга (например, `include:spf.marketing.com`), система технической поддержки (например, `include:spf.support.com`) и CRM-инструмент для малого бизнеса (например, `include:spf.crm.com`). Каждое из этих заявлений `include` требует поиска DNS, а включаемые записи могут сами содержать дополнительные поиски. Если их общее количество превысит 10, ваша SPF-запись сломается.
При использовании SPF flattening (или макрорешения) IP-адреса, разрешенные этими сторонними включениями, могут быть разрешены и представлены более эффективно, часто сокращая общее количество необходимых поисков, чтобы не превысить лимит. Это гарантирует, что когда почтовый сервер выполняет поиск DNS для проверки вашей SPF-записи, он сможет успешно завершить оценку без превышения порога PermError.
Подводя итог
Настройка SPF - важнейший шаг в обеспечении безопасности вашей почтовой системы и предотвращении мошенничества с электронной почтой. Создав точную запись SPF, правильно опубликовав ее в конфигурации DNS вашего домена и поддерживая ее в течение долгого времени, вы сможете обеспечить проверку подлинности законных сообщений электронной почты, отправленных с вашего домена, и предотвратить злоупотребление доменным именем со стороны неавторизованных пользователей. Следуя приведенным выше советам, вы сможете создать надежную запись SPF и укрепить общую защиту электронной почты, особенно если она используется в сочетании с DKIM и DMARC.
Вопросы и ответы по настройке SPF-записи
Можно ли иметь несколько записей SPF для одного домена?
Нет. Домен должен иметь только одну SPF-запись. Публикация нескольких записей SPF для одного и того же домена - распространенная ошибка, которая приведет к тому, что проверка SPF не будет выполнена или вернет непредсказуемые результаты (часто None или PermError). Если вам нужно авторизовать несколько источников отправки, все они должны быть включены в одну строку TXT-записи SPF.
Можно ли разделить большую запись SPF?
Разделение логически большой политики SPF на несколько TXT-записей для одного и того же домена недопустимо из-за правила одной записи. Кроме того, отдельные TXT-записи DNS имеют ограничения по количеству символов (хотя современные системы DNS часто поддерживают несколько строк в одной записи, чтобы преодолеть старые ограничения в 255 символов). Если ваша запись становится слишком сложной или превышает лимит в 10 DNS-поисков, вы не можете просто разделить ее. Вместо этого попробуйте применить следующую тактику:
- Упростите свои записи: Удалите избыточные или ненужные записи. По возможности объединяйте диапазоны IP-адресов, используя нотацию CIDR.
- Минимизируйте механизмы, генерирующие поиск: Сократите количество механизмов `include`, `a`, `mx`, `exists` и `redirect`.
- Используйте решения для управления SPF: Используйте сторонние сервисы, предлагающие решения для сглаживания SPF или динамического SPF (на основе макросов), чтобы управлять сложными записями и оставаться в рамках ограничений.
Для чего используется запись SPF?
Запись SPF используется для предотвращения подделки электронной почты, позволяя владельцам доменов публично объявлять, какие почтовые серверы имеют право отправлять электронную почту от имени их домена. Серверы-получатели проверяют эту запись, чтобы убедиться в легитимности сервера-отправителя, что снижает вероятность попадания в почтовые ящики получателей фишинговых, спамерских и других мошеннических писем, отправленных с использованием имени домена.
Когда вам нужен SPF?
SPF необходим для любого вашего домена, особенно для тех, которые используются для отправки электронной почты. Это основополагающий протокол аутентификации электронной почты, необходимый для повышения эффективности доставки электронной почты, защиты репутации вашего бренда, проверки подлинности и соблюдения политик принимающих серверов и лучших отраслевых практик, включая недавние требования таких крупных провайдеров, как Google и Yahoo. Узнайте больше о о важности настройки SPF. Даже домены, которые не отправляют электронную почту, должны иметь ограничительную запись SPF (например, `v=spf1 -all`), чтобы предотвратить злоупотребления.
Как оптимизировать запись SPF?
Вы можете оптимизировать свою SPF-запись вручную, тщательно проверяя и объединяя авторизованных отправителей, удаляя неиспользуемые источники, используя эффективную нотацию диапазона IP-адресов (CIDR) и минимизируя механизмы, вызывающие поиск DNS. Однако для сложных сценариев или для того, чтобы не превышать лимит в 10 запросов, лучше воспользоваться сторонними услугами по оптимизации SPF, которые предлагают автоматическое сглаживание или динамические макросы SPF для постоянного управления записями.
Как узнать, что SPF-запись установлена правильно?
Вы можете проверить свою SPF-запись с помощью онлайнового Инструмент поиска SPF-записей. Эти инструменты проверяют синтаксис, проверяют, существует ли запись в вашем DNS, проверяют, не превышено ли ограничение на 10 DNS-поисков, и подтверждают, что запись в целом настроена правильно.