Кажется, мне не удается заставить SPF-запись работать для нашего клиента, почта Google продолжает терпеть неудачу при поиске.
Моя запись SPF
v = spf1 a ip4: 80.74.254.215 include: mx1.helloevery1.co.uk include: _spf.google.com include: smtproutes.com include: smtpout.com
Основными почтовыми серверами клиентов являются
smtproutes.com и smtpout.com
Они работают нормально, SPF проходит должным образом.
mx1.helloevery1.co.uk - наш почтовый сервер. Это простая установка ISPConfig Postfix. Мы отправляем всю почту через одну учетную запись, скажем, «noreply@example.com».
Для отправки настроены имя пользователя и пароль, но мы меняем адрес «от» в нашем приложении. Адрес отправителя: enquiry@clientdomain.com.
enquiry@clientdomain.com не настроен на mx1.helloevery1.co.uk. Это только на клиентских серверах.
Когда я отправляю через свой SMTP-сервер с сайта, я получаю следующую ошибку при отправке на свою учетную запись электронной почты.
Received-SPF: permerror (google.com: постоянная ошибка обработки во время поиска enquiry@clientdomain.com) client-ip = 212.71.234.103;
Результаты аутентификации: mx.google.com; spf = permerror (google.com: постоянная ошибка обработки во время поиска enquiry@clientdomain.com) smtp.mail=enquiry@clientdomain.com
Похоже, он пытается найти домен на моем SMTP-сервере (где он не настроен). Если бы мне пришлось настроить домен на моем SMTP-сервере и создать учетную запись, тогда, когда я отправляю через свой SMTP-сервер, он попытается доставить его локально.
Я всегда предполагал, что SPF был просто инструментом проверки, чтобы сказать, с какого сервера разрешено отправлять, но никогда не принимал во внимание электронную почту, с которой он пришел.
Я застрял, так как не могу найти ресурс по созданию записи SPF, к которому я могу относиться
Запись SPF указывает, каким почтовым серверам разрешено отправлять почту из домена отправителя. В основном, что находится в адресе from :.
Итак, если у вас есть кто-то, отправляющий почту как «ninja@ninja.com», а получающий почтовый сервер проверяет SPF, он ищет запись SPF на «ninja.com», чтобы увидеть, указан ли отправляющий почтовый сервер в списке.
Отвечает ли это на ваш вопрос ?
По совету Mwuanno я изменил свои записи на ip4 и ip6, и он начал принимать запись spf. Теперь запись гласит
v = spf1 a ip4: 80.74.254.215 ip4: 212.71.234.103 ip6: 2a01: 7e00 :: f03c: 91ff: fedb: 4ec8 include: smtproutes.com include: smtpout.com ~ все
Мне показалось, что это сработало, и SPF проходит
Причина Google PermError это домен mx1.helloevery1.co.uk
упомянутый в вашем SPF include:
Механизм не имеет настроенной собственной записи SPF. Это упоминается Вот:
включить: <домен> : Указанный домен ищется совпадение. […] Предупреждение: Если домен не имеет действующей записи SPF, результатом будет постоянная ошибка. Некоторые получатели почты отклонят запрос на PermError.
Так как ты узнал, используя ip4: ip6:
механизмы помогают (используйте оба, поскольку вы не знаете, какой IP-адрес отправителя видит Google, поэтому он может выйти из строя, если вы используете только ip4:
). Чтобы обеспечить некоторую устойчивость к изменениям IP-адресов, вы можете разрешить диапазон IP-адресов (инструкции).
Однако, если у вас есть доступ к DNS include:
-ed, это более удобное решение для настройки записи SPF и для него, чтобы IP-адрес отправителя прошел этот тест SPF. Это делает вашу другую запись SPF устойчивой к изменениям IP-адреса.
Причина, по которой запись SPF с параметром ~ all в конце, вероятно, сработала, не обязательно из-за включения адресов IP4 и IP6, а из-за параметра ~ all.
~ all - это мягкий сбой: все почтовые серверы, не указанные в записи SPF, не авторизованы для отправки почты с использованием домена отправителя, но владелец домена не желает делать убедительных заявлений на этот счет. Другими словами, проверка SPF не обязательно завершится ошибкой, и принимающий сервер может принять сообщение электронной почты.