Как правильно настроить запись SPF?
Используйте TXT и добавьте следующее?
v=spf1 a mx include:mydomain.tld ~all
ОБНОВЛЕНО:
После использования:
v=spf1 a mx ~all
Я получаю это:
Received-SPF: temperror (google.com: error in processing during lookup of PHPUSERNAME@SERVER.MYDOMAIN.TLD: DNS timeout) client-ip=x.x.218.7;
Authentication-Results: mx.google.com; spf=temperror (google.com: error in processing during lookup of PHPUSERNAME@SERVER.MYDOMAIN.TLD: DNS timeout) smtp.mail=PHPUSERNAME@SERVER.MYDOMAIN.TLD
Received: from PHPUSERNAME by SERVER.MYDOMAIN.TLD with local (Exim 4.77)
(envelope-from <PHPUSERNAME@SERVER.MYDOMAIN.TLD>)
id xxxxxxxxxxxxxxxx
for SOMEEMAIL@gmail.com;
Если вы еще не нашли www.openspf.org, это отличный ресурс. Обратите внимание на тему SPF и Sender ID. Проверять, выписываться http://www.openspf.org/SPF_Record_Syntax для пуха и грязи.
Если вы размещаете свой собственный почтовый сервер и ваши записи MX представляют собой единственные серверы-отправители, вы можете обойтись только с помощью механизма «mx».
Если вы используете размещенную службу для своей электронной почты (например, Google Apps) или даже пересылаете исходящую почту с внутреннего SMTP-сервера в такую службу, как SendGrid, обратитесь к этим службам за конкретными инструкциями по настройке SPF.
Отредактировано, чтобы добавить лучшее описание SPF, механизмов и квалификаторов
Когда почтовый обмен, поддерживающий использование SPF, получает электронное письмо, он проверяет предполагаемый домен отправителя (something@sendingdomain.tld) и IP-адрес сервера, отправившего сообщение. Вопрос в том, имеет ли этот IP-адрес разрешение на отправку электронной почты от имени домена отправителя (senddomain.tld)?
Чтобы ответить на этот вопрос, сервер извлекает запись SPF (хранящуюся как запись DNS TXT) из предполагаемого домена (senddomain.tld) и проверяет IP-адрес отправляющего сервера на соответствие этой записи SPF.
SPF использует механизмы для создания списков допустимых серверов отправки для электронной почты. Каждый механизм может быть обозначен знаком +, -, ~ или? префикс (эта информация была взята из OpenSPF:
'+' означает пройден (или действителен) - Примечание: это действие по умолчанию
'-' означает сбой (или недействительный)
'~' означает мягкий сбой (рассматривается многими серверами как нейтральный)
'?' означает нейтральный (действительность не подтверждена и не опровергнута)
Когда запись оценивается, она соответствует первому механизму слева направо. Если ни один механизм не подходит, результат по умолчанию нейтральный.
В общем, механизм «Все» подходит ко всему, так что ...
Механизм «+ Все» означает, что все серверы являются действительными отправителями для этого домена (не используйте эту опцию).
Механизм «-Все» дает сбой всех отправляющих серверов. Используйте это в конце записи SPF, чтобы переопределить нейтральный результат по умолчанию с потерпеть поражение результат. Некоторые службы (например, Google) предупреждают об этом, но я еще не столкнулся с какими-либо проблемами с этим.
Механизмы «~ Все» и «? Все» эквивалентны высказыванию: «Если отправляющий сервер не соответствует ни одному из допустимых серверов в списке, не беспокойтесь об этом». Используйте их только для тестирования записей SPF.
Полный список механизмов см. Синтаксис записи OpenSPF страница.
Еще один механизм, который я хотел бы здесь обсудить, - это «include: <домен>». Этот механизм предписывает серверу, анализирующему запись SPF, включать дополнительные механизмы, указанные в другой записи SPF, размещенной в <домен>.
Примеры:
Если ваш домен использует одни и те же серверы (как в одном IP-адресе) для отправки и получения:
Если вы используете Google Apps для размещения почты, но иногда используете внутренний SMTP-сервер для автоматических сообщений:
DKIM - это совсем другой зверь. Если вы используете размещенную на сервере почтовую службу, обратитесь к ней за инструкциями. Если вы размещаете свой собственный почтовый обмен, обратитесь к документации по своему серверному программному обеспечению, чтобы выяснить, как его реализовать. Это немного выходит за рамки этого вопроса.