これは『エンジニアが知っておくべき メール送信・運用ノウハウ、メールの認証技術やセキュリティについて投稿しよう! by blastengine Advent Calendar 2024』の12月3日(水曜日)用の記事です。
なぜかメールが届かない(なぜかではない)
共用サーバー上のWordpressからパスワードリセットを申請してもなぜか登録者のGmailアドレスにメールが届かない。各種通知メールも届かない。
確認しながらひとつずつGmailのガイドラインに対応していきましょう。問題が起きる前に早めに対応しておけという話ではある。
対応が必要なことの確認
MailData様の『Googleの2024年2月1日からの新しいメールセキュリティポリシーについて』を参考に、必要な対応を確認していきましょう。
なおユースケースから、メール数は5,000通/日以下と想定します。また、メール送信には同じサーバー上のPostfixを利用します。
項目 | 対応 |
ドメイン用のSPFまたはDKIMメール認証を設定する | SPFを設定します |
DMARCの実装 | 必須ではありませんが設定します |
DMARCのポリシー | p=none; sp=reject; として設定します |
FDrDNS | 設定します |
STARTTLS | 設定します |
RFC5322準拠のメールフォーマット | 準拠します |
ARC | メール転送は行わないため、対応しません |
メーリングリストのList-idヘッダ | メーリングリストではないため、対応しません |
RFC8058ベースのワンクリック配信停止 | メールマガジン配送ではないので、対応しません。 |
SPFの設定
これは簡単。DNSでSPF用のTXTレコードを設定しましょう。
設定後は『SPF Surveyor』等で設定が正しいか確認しておきましょう。
DMARCの実装 & ポリシー
下記のTXTレコードをドメイン "_dmarc.rainyvillage.jp" に設定します。
"v=DMARC1; p=none; sp=reject; rua=mailto:[email protected]"
FDrDNS
サーバーIPアドレスの逆引き設定を行います。
今回は、利用しているVPS事業者様の管理画面より設定しました。
STARTTLS
Postfixをメール送信に使う場合は "main.cf" 内で "smtp_tls_security_level" の設定が妥当であれよいようです。
今回は "smtp_tls_security_level=may" と設定しました。
WordPress側の設定
設定した同じサーバー内のPostfixを利用するようにWordpressを設定します。
設定しないと意図していないメールサーバーからメールが送られる場合があります。(送られました)
今回はWordpressプラグイン『WP Mail SMTP Lite』を導入して設定しました。
設定後の受信結果
正常にメールが受信できるようになりました。また、暗号化された送信が利用されています。
おわりに
明日の投稿者は未定のようです。(2024/11/24現在)
ご参加をお待ちしております。