Railsアプリケーションからメールを送信していますが、何らかの理由でSPFが通過せず、常に失敗またはニュートラルと表示されます。
順方向と逆方向のDNSを設定しました(正しいと思います)。私はここのガイドに従ったが役に立たなかった。良いことは、私のメールがスパムになっていないことですが、それだけでは十分ではありません。SPFを通過させたいのです。誰かが私を助けることができればそれはありがたいです。
ホスト名をに設定していmail.example.com
ます。逆引きDNSを同じに設定しています。ただし、メールを送信するときは、help@mail.example.comからではなくhelp@example.comからメールを送信するようにします。help@mail.example.comからメールを送信すると、ニュートラルなSPFが得られますが、help @ example.comに変更すると、失敗します。私が理解している方法は、それがまだFQDNからのものである場合は通過するはずですが、通過しないということです。
これらは私のDNSレコードです:
A = mail xxx.xxx.xxx.xxx
A = example. xxx.xxx.xxx.xxx
A = www xxx.xxx.xxx.xxx
MX = example. mailstore1.secureserver.net.
MX = example. smtp.secureserver.net.
MX = example. mail.example.com.
TXT = v=spf1 mx include:mail.example.com -all.
最初の2つのMXレコードはgodaddyからのものですが、私はslicehostでサイトをホストしています。また、役に立たないと思うCNAMEレコードとNSレコードがいくつかありますが、役立つ場合に備えて言及しています。
UbuntuとRails3でpostfixを使用しています。
何か案は?
更新: これが私の失敗したメールの1つのヘッダーです
Delivered-To: myemail@gmail.com
Received: by 10.229.49.65 with SMTP id u1cs60507qcf;
Mon, 12 Dec 2011 19:20:11 -0800 (PST)
Received: by 10.42.150.135 with SMTP id a7mr13973149icw.53.1323746409644;
Mon, 12 Dec 2011 19:20:09 -0800 (PST)
Return-Path: <help@example.com>
Received: from mail.example.com ([xxx.xxx.xxx.xxx])
by mx.google.com with ESMTP id y15si2866827ibk.138.2011.12.12.19.20.09;
Mon, 12 Dec 2011 19:20:09 -0800 (PST)
Received-SPF: fail (google.com: domain of help@example.com does not designate xxx.xxx.xxx.xxx as permitted sender) client-ip=xxx.xxx.xxx.xxx;
Authentication-Results: mx.google.com; spf=hardfail (google.com: domain of help@example.com does not designate xxx.xxx.xxx.xxx as permitted sender) smtp.mail=help@example.com
Received: from localhost.localdomain (localhost [127.0.0.1])
by mail.example.com (Postfix) with ESMTP id B6BB31C1F5D
for <myemail@gmail.com>; Tue, 13 Dec 2011 03:20:08 +0000 (UTC)
Date: Tue, 13 Dec 2011 03:20:08 +0000
From: Example <help@example.com>
To: myemail@gmail.com
Message-ID: <4ee6c468a8150_7e4e4ea930773a1@mail.example.com.mail>
Subject: Password Reset
Mime-Version: 1.0
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: 7bit
解決策: spfレコードを引用符で囲みます。私の場合は、次のようになります。
TXT = "v=spf1 mx include:mail.example.com -all"