Поиск по сайту:

Как использовать запись SPF для предотвращения спуфинга и повышения надежности электронной почты


Введение

Тщательно подобранная запись SPF снизит вероятность мошеннической подделки вашего доменного имени и сохранит вашу

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

Преимущества

Добавление записи SPF в файл зоны DNS — лучший способ предотвратить спуфинг вашего домена спамерами. Кроме того, запись SPF уменьшит количество допустимых сообщений электронной почты, которые помечаются как спам или возвращаются обратно почтовыми серверами получателей. Запись SPF, к сожалению, не на 100% эффективна, потому что не все почтовые провайдеры проверяют ее. Однако многие это делают, поэтому вы должны заметить значительное уменьшение количества получаемых вами возвратов.

Пример записи SPF

Запись SPF добавляется в файл зоны DNS вашего домена в виде записи TXT и идентифицирует авторизованные SMTP-серверы для вашего домена.

TXT @ \v=spf1 a include:_spf.google.com ~all\

Если вы используете диспетчер DNS DigitalOcean, обязательно заключите запись SPF в кавычки. В следующей таблице приводится объяснение различных компонентов примера записи SPF:

ComponentsDescription
TXTThe DNS zone record type; SPF records are written as TXT records
@In a DNS file, the "@" symbol is a placeholder used to represent "the current domain"
v=spf1Identifies the TXT record as an SPF record, utilizing SPF Version 1
aAuthorizes the host(s) identified in the domain's A record(s) to send e-mail
include:Authorizes mail to be sent on behalf of the domain from google.com
~allDenotes that this list is all inclusive, and no other servers are allowed to send e-mail

Компоненты записи SPF

Запись SPF состоит из номера версии SPF, за которым следуют строки, состоящие из (i) механизмов, (ii) квалификаторов и (иногда) (iii) модификаторов. Клиенты SPF игнорируют записи TXT, которые не начинаются со строки версии \v=spf1 ...\.

Записи SPF могут определять ноль или более механизмов. Механизмы могут использоваться для описания набора хостов, назначенных в качестве авторизованных исходящих почтовых программ для домена. В следующем списке перечислены общие механизмы, включенные в запись SPF:

все | ip4 | ip6 | а | мкс | птр | существует | включить

Перед механизмами может стоять один из четырех квалификаторов:

QualifierDescription
+Pass = The address passed the test; accept the message. Example: "v=spf1 +all"
-(Hard) Fail = The address failed the test; bounce any e-mail that does not comply. Example: "v=spf1 -all"
~Soft Fail = The address failed the test, but the result is not definitive; accept & tag any non-compliant mail. Example: "v=spf1 ~all"
?Neutral = The address did not pass or fail the test; do whatever (probably accept the mail). Example: "v=spf1 ?all"

Если квалификатор не указан, подразумевается квалификатор +.

Записи SPF также могут определять 1 из 2 модификаторов; или вообще без модификатора. Однако каждый модификатор может появиться только один раз.

перенаправление | выражение

Записи SPF оцениваются в два этапа: сначала оцениваются все механизмы и квалификаторы. Тогда все модификаторы

  1. Механизмы оцениваются слева направо;
  2. Модификаторы оцениваются на втором проходе и могут встречаться в любом месте записи.

Механизмы

MechanismDescription
allMatches all local and remote IPs and goes at the end of the SPF record. Example: "v=spf1 +all"
ip4Specifies a single IPv4 address or an acceptable IPv4 address range. A mask of /32 is assumed if no prefix-length is included. Example: "v=spf1 ip4:192.168.0.1/16 -all"
ip6Same concept found in ip4, but, obviously, with IPv6 addresses, instead. If no prefix-length is given, /128 is assumed (singling out an individual host address). Example: "v=spf1 ip6:1080::8:800:200C:417A/96 -all"
aSpecifies all IPs in the DNS A record. Example: "v=spf1 a:domain.com -all"
mxSpecifies all A records for each host's MX record. Example: "v=spf1 mx mx:domain.com -all"
ptrSpecifies all A records for each host's PTR record. Example: "v=spf1 ptr:domain.com -all"
existsSpecifies one or more domains normally singled out as exceptions to the SPF definitions. An A query is performed on the provided domain; if a result is found a match occurs. Example: "v=spf1 exists:domain.com -all"
includeSpecifies other domains that are authorized domains. Example: "v=spf1 include:outlook.microsoft.com -all"

The "all" Mechanism

The all mechanism usually goes at the end of the SPF record; and it is prefixed with a qualifier, e.g.

ExamplesDescription
"v=spf1 mx -all"Allows the domain's MX hosts to send mail for the domain, and prohibits all other hosts.
"v=spf1 -all"The domain sends no mail at all.
"v=spf1 +all"This SPF is useless, as it does not limit the hosts that are authorized to send e-mail.

Modifiers

Модификаторы необязательны, и модификатор может появиться только один раз в записи. Неизвестные модификаторы игнорируются.

Модификатор \redirect отправляет запрос в другой домен.

redirect=example.com

То есть запись SPF для example.com заменяет запись SPF для текущего домена. Модификатор перенаправления полезен для

Sample entry in ny.yourdomain.com's zone file:TXT @ "v=spf1 redirect=_spf.yourdomain.com"
Sample entry in sf.yourdomain.com's zone file:TXT @ "v=spf1 redirect=_spf.yourdomain.com"
Sample entry in am.yourdomain.com's zone file:TXT @ "v=spf1 redirect=_spf.yourdomain.com"
Sample entry in _spf.yourdomain.com's zone file:TXT @ "v=spf1 mx:yourdomain.com -all"

Для ясности РЕКОМЕНДУЕТСЯ, чтобы любой модификатор «перенаправления» отображался как самый последний термин в записи.

Модификатор \exp\ устанавливает объяснение в записи SPF.

exp=[macro-string]

Если запрос SPF дает результат FAIL, запрашивается объяснение, и строка объяснения предоставляет дополнительную информацию для

Собираем все вместе

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

Как всегда, если вам нужна помощь в настройке записи SPF, обратитесь за помощью к сообществу DigitalOcean, задав свои вопросы,