Как всем известно, протокол отправки электронной почты SMTP, подразумевает, что в качестве отправителя можно указать любой почтовый ящик. Таким образом можно послать письмо, подставив в поле "From" вымышленное значение. Процесс такого почтового обмана называется Спуфинг (e-mail spoofing). Чтобы бороться с этим явлением, был разработан и введен в действие стандарт SPF – Sender Policy Framework (структура политики отправителя).
Для успешной доставки писем с наших серверов используйте в своих скриптах SMTP авторизацию.
SPF позволяет владельцу домена указать в TXT-записи домена специальным образом сформированную строку, указывающую список серверов, имеющих право отправлять email-сообщения с обратными адресами в этом домене.
Простой пример SPF-записи.
example.org. IN TXT "v=spf1 +a +mx -all"Рассмотрим варианты поведения получателя, в зависимости от используемых опций:
"v=spf1" - используемая версия SPF.
"+" - принимать корреспонденцию (Pass). Этот параметр установлен по умолчанию. Тоесть, если никаких параметров не установлено, то это "Pass";
"-" - Отклонить (Fail);
"~" - "мягкое" отклонение (SoftFail). Письмо будет принято, но будет помечено как СПАМ;
"?" - нейтральное отношение;
"mx" - включает в себя все адреса серверов, указанные в MX-записях домена;
"ip4" - опция позволяет указать конкретный IP-адрес или сеть адресов;
"a" - указываем поведение в случае получения письма от конкретного домена;
"include" - включает в себя хосты, разрешенные SPF-записью указанного домена;
"all" - все остальные сервера, не перечисленные в SPF-записи.
Что значит SPF-запись, указанная выше.
"+a" - разрешает прием писем от узла, IP-адрес которого совпадает с IP-адресом в A-записи для example.org;
"+mx" - разрешает прием писем, если отправляющий хост указан в одной из MX-записей для example.org;
"-all" - все сообщения, не прошедшие верификацию с использованием перечисленных механизмов, следует отвергать.