まるコットでメモ的な何か

pepophilia.comから転送しているメールがGmailにブロックされる

現在のメールの構成

さくらVPSにpostfixのDockerサーバを立てていて、pepophilia.com宛のメールをgmail.comにsmtpで転送する設定をしている。
(Google Workspaceなどを使わずに、転送だけするメールサーバを間に建てて安く独自ドメインのメールアドレスをGmailで使えるようにしていた)

症状

ws.formzu.netからの申込内容確認メールがgmailに届かなかったので、ログを見たら以下のようなエラーが出た。

Windows Terminal> ssh vps
VPS # docker logs mailserver -n 100
...
Feb 22 23:55:01 mail postfix/smtp[1334449]: 572FE5D9FD: to=<xxxxxxxxxxx@gmail.com>, relay=gmail-smtp-in.l.google.com[xxx.xxx.xxx.xxx]:25, delay=1.3, delays=0.02/0/0.74/0.54, dsn=5.7.1, status=bounced (host gmail-smtp-in.l.google.com[xxx.xxx.xxx.xxx] said: 550-5.7.1 [xxx.xxx.xxx.xxx      12] Our system has detected that this message is 550-5.7.1 likely unsolicited mail. To reduce the amount of spam sent to Gmail, 550-5.7.1 this message has been blocked. Please visit 550-5.7.1  https://support.google.com/mail/?p=UnsolicitedMessageError 550 5.7.1  for more information. h12si12680547pfi.180 - gsmtp (in reply to end of DATA command))
...

エラー内容でググったら以下のサポートページが出た。

SMTP エラー リファレンス

550, “5.7.1”, Our system has detected that this message is likely unsolicited mail. To reduce the amount of spam sent to Gmail, this message has been blocked. For more information, see Why has Gmail blocked my messages?(550, “5.7.1”, このメールはシステムによって迷惑メールの可能性があると検出されました。Gmail に送信される迷惑メールの量を減らすためにこのメールはブロックされました。詳細については、Gmail でメールがブロックされる理由をご覧ください。)

Gmail でメールがブロックされる理由

Postmaster Tools で配信の問題のトラブルシューティングを行う

Postmaster Tools使おうとしたけどメールの送信件数が少なすぎてレポート表示できなかった。。。

メールを Gmail に転送するように設定していて、ご使用のドメインから転送されるメールに迷惑メールが含まれている場合は、メール転送のおすすめの方法をご確認ください。

メールを Gmail に転送するおすすめの方法

ざっくり調べた所感

DNSにSPF、DKIM、DMARCあたりの設定をするとブロックされる可能性が下がりそう?

Gmailに送信されたメールのソースを見るとSPFがSOFTFAILしているようなのでこれを直したい。

SPF設定

こちらを参考に実施

SPFを設定してGmailで迷惑メール扱いされるのを回避

TXTレコードに以下を追加
v=spf1 ip4:xxx.xxx.xxx.xxx ~all

とりあえず様子見。
設定後すぐには反映されないので、しばらく経ってから送信したメールのソースをチェックしてspf: passとなる事を確認する。

治らん

SPF設定について更に調べると、

メール転送(エイリアス)SPFのSoftFailへ対応|Postfix

転送する場合のFromは転送前のドメインです。つまり、自ドメインのSPFは関係ない。

Envelope fromパラメータを書き換えると、SPF認証の確認先が自ドメインに変わります。

つまりSPFのTXTレコードを追加しただけでは意味がないのでメールサーバ側でパラメータの書き換えが必要だそう。

使ってるメールサーバコンテナのREADME.mdにもなんか注意書きが載ってた。

docker-mailserver/docker-mailserver

SPF/Forwarding Problems
If you got any problems with SPF and/or forwarding mails, give SRS a try. You enable SRS by setting ENABLE_SRS=1. See the variable description for further information.

早速docker-compose.ymlにENABLE_SRS=1を追加

    environment:
      - PERMIT_DOCKER=host
      - ENABLE_POP3=
      - ENABLE_CLAMAV=0
      - SMTP_ONLY=1
      - ENABLE_SPAMASSASSIN=0
      - ENABLE_FETCHMAIL=0
      - ENABLE_SRS=1

コンテナ再起動

$ docker-compose down
$ docker-compose up -d

ログを見たところSRSの設定が動いてそう。

$ docker-compose logs
mailserver    | Feb 23 12:12:27 mail postsrsd[895]: srs_forward: <root@mail.pepophilia.com> rewritten as <SRS0=1bLX=TG=mail.pepophilia.com=root@pepophilia.com>

再度メール送信してGmailのソースを確認

パスしたー!!!!!!!!!!!!やったー!!!!!!!!!

formzuからのメールも届くようになったー!!!!!!!!!!!!!!!!!!!!!!!やったーーーーーーー!!!!!!!!!!!!!!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です