우리 고객 중 한 명이 자신의 고객으로부터 메일이 거부되었습니다. 발신자의 SPF 레코드는 다음과 같습니다.
v=spf1 +a +mx +ip4:12.34.56.78 ?all
메일은 12.34.56.78에서 발생하지 않지만 AFAIU '?all'은 내 메일 서버(접미사)가 메일을 수락해야 함을 의미합니다. 그 맞습니까?
이러한 이메일을 허용하도록 '/etc/postfix-policyd-spf-python/policyd-spf.conf'를 변경할 수 있습니까? 그렇다면 어떻게 해야 합니까?
이렇게 해야 하나요?
FWIW py 오류 로그의 메시지는 다음과 같습니다.
Message rejected due to: access neither permitted nor denied.
미리 감사드립니다.
업데이트:
내 SPF 정책은 다음과 같습니다.
HELO_reject = SPF_Not_Pass
Mail_From_reject = Fail
HELO 단계에서 메일이 거부되었는데 지금은 'Fail'로 변경했습니다.
답변1
메일은 12.34.56.78에서 발생하지 않지만 AFAIU '?all'은 내 메일 서버(접미사)가 메일을 수락해야 함을 의미합니다. 그 맞습니까?
예, 하지만 그렇지 않습니다~해야 한다, 단지예정된
에서여기Neutral
, 그 의미 를 알 수 있습니다The SPF record specifies explicitly that nothing can be said about validity
그러나 postfix의 기본 SPF 정책은 다음과 같습니다.
HELO_reject = SPF_Not_Pass
SPF 검사가 통과되지 않으면 접미사가 HELO를 거부함을 의미합니다(예: Fail, Softfail, Hardfail...).
SPF 확인이 실패하더라도 이메일을 수락하도록 postfix SPF 정책을 변경할 수 있습니다.
답변2
당신은 올바른 길을 가고 있습니다. ?all 정책을 포함시키는 것은 보낸 사람이 원하는 메일 처리 방법에 대한 기본 설정을 명시하는 것뿐입니다. 실제로 처리되는 방법은 시스템에 따라 결정됩니다.
정책을 게시하지 않았지만 정책을 수정하여 이 도메인이나 이 조건을 허용하도록 설정할 수 있습니다.
보다: http://manpages.ubuntu.com/manpages/lucid/man5/policyd-spf.conf.5.html
일부 정책 조건에서는 SPF를 확인할 수 없는 경우 이메일을 거부합니다(예: SPF 레코드 자체의 형식 오류 또는 DNS 문제).