VPSサーバーでホストされているWebサイトがあります。ドメインが設定されているため、受信メールは引き続きVPSサーバーでもホストされます。 Gmailの送信IPレピュテーションははるかに信頼性が高いため、使用しているSMTPサーバーはGmailを除き、受信者はスパムフォルダーに移動せずにメールを受信する可能性が高くなります。
最近、p = rejectのDMARCポリシーを実装しましたが、これを行うと、受信側のメールサーバーがアライメントに失敗するため、これらの電子メールを拒否してバウンスすることに気付きました。
これに対する回避策はありますか? Gmail SMTPサーバーを使用している場合、DMARCを渡す方法はありますか?
これはあなたの問題です:
最近、p = rejectのDMARCポリシーを実装しました
すべてが期待どおりに機能することを確認できるまで、テストにそれほど厳格でない規則を使用します。このようなものは、問題の電子メールレポートを提供するので、修正する必要があることがわかります。
v=DMARC1; p=none; rua=mailto:[email protected];
オンラインDMARCポリシージェネレーターを使用してポリシーを作成します。作成する各ステップについて説明します。私は https://dmarcian.com/dmarc-record-wizard/ にあるものを使用してお勧めします(所属なし、無料で使いやすいのが好きです)。
すべてをテストし、機能させたら、より強力なポリシーに戻すことができます。たとえば、ドメインでv=DMARC1; p=reject; adkim=s; aspf=s;
を使用していますが、これは非常に厳密であり、問題がある場合にエラーレポートを生成しません。必要なすべてのDNSレコードがテストされ、機能していれば、非常にうまく機能します。
DMARCを渡すと、実際にはSPFまたはDKIM(できれば両方)をheader.from
ドメインに合わせて渡すことになります。
SPFは、Google経由で中継する前に、通常はSMTPサーバーで設定されているリターンパスアドレスで使用されているドメインでチェックされます。 header.from
と同じかもしれませんが、必ずしもそうではありません。
リターンパスアドレスでドメインを制御する場合、GoogleのSMTPサーバーを含むSPFレコードを設定する必要があります。 GSuiteユーザーは、include:_spf.google.com
の後、かつv=spf1
または~all
の前のどこかに-all
を追加する必要があります。ただし、追加するとSPFレコードに4つのDNSルックアップが追加されるため、注意してください。 GoogleのSMTPサービス経由でのみメールを送信する場合、SPFレコードは次のようになります。
v=spf1 include:_spf.google.com ~all
異なるサービスの使用を開始するときは、必ず編集してください。
さらに、SMTPサーバーにDKIM署名を追加して、GoogleのSMTPサーバー経由でルーティングされる前にメッセージに署名することもできます。 DKIMは、header.d
ヘッダーのドメインでチェックされます。これは、送信ドメインと一致する必要があります。
トムが指摘したように、rua:
タグをDMARCポリシーに追加して、ドメインの使用と不正使用に関するレポートを受け取ることができます。テストメッセージのヘッダーを確認して、return-pathと、オプションでDKIM署名情報を確認できます。