この記事では、レンタルサーバーConoHa WINGで、ドメイン認証を設定して、WordPressサイトのメールの到達度を格段にアップさせる方法を解説します。
WordPressサイトから送信されるメールには、サイトのお問い合わせフォームからのメールや、各種プラグインの通知メールなどがあります。なにも設定しないしないと、これらのメールは、WordPressのデフォルトのメール送信機能を使って送信されるのですが、困ったことに、大抵のメール受信サービス(GmailやOutlookなど)では迷惑メール扱いになってしまいます。
これを解決するには、通常、専用のメール配信サービス(SMTPサーバー)を使って、使用するメールアドレスのドメイン認証を行う必要があります。これについては以下の記事で詳しく解説しています。
↑の記事でも少し触れていますが、ドメイン認証では、SPF、DKIM、DMARCの3つの認証方法を組み合わせることで、メールの到達度をかなり上げることができます。
エックスサーバーやさくらのレンタルサーバーでは、SPFレコードはDNSに追加できるものの、DKIMレコードを追加することができません(2022年7月時点)。そのため、これらのレンタルサーバーにWordPressサイトを設置している場合は、DKIM認証が可能なSendinblueやSendGridなどの外部のSMTPサーバーを使ってメールを送信する必要があります(詳しくは↑の記事の解説をご覧ください)
WordPressのサイト制作・運営では、ここがいつも悩みの種だったのですが…
今使っているレンタルサーバーConoHa WINGでは、ありがたいことに、サーバーのデフォルトのメール機能でDKIMレコードが利用できるんです!
早速、ConoHa WINGが提供しているSPF、DKIMレコードで、WordPressサイトからのメールが迷惑メール扱いにならないか、試してみました。
前置きが長くなりましたが、以下がその方法です。
ConoHa WINGでメールのドメイン認証をする方法
最初に、ConoHaコントロールパネル側でDNSにSPF、DKIMレコードを追加します。
ConoHaコントロールパネル側の設定
ConoHaコントロールパネルにログインし、左メニューから「メール管理」を選択します。
メールアドレスの一覧から、今回ドメイン認証をしたいメールアドレスを選びます。
まだない場合は、右上の「+メールアドレス」ボタンをクリックしてメールアドレスを新規に作成して下さい。
「メールアドレス詳細」のタブを開いて、キャプチャの赤枠の部分をメモ帳などにコピペします。
メールアドレス、パスワード、SMTPサーバーの情報は、後ほどWordPress側での設定で必要になります。もしパスワードを忘れてしまっていたら、再設定します。
DNS情報の赤枠部分は、SPFレコードとDKIMレコードです。今からDNSレコードに追加していきます。
ConoHaコントロールパネルの左メニュー、「DNS」に移動します。
ドメインリストから該当するドメインをクリックし、表示されたDNSレコードの中に、先ほどコピペしたレコードがすでに登録されているか、確認します。もしあれば、以降のDNSレコード追加の作業はスキップして、WordPress側の設定に進んでください。
もしない場合は、右側の青い鉛筆アイコンをクリックします。
先ほどDNS情報の欄でコピーしておいた2つのレコードを追加してください。
上側の赤枠内がSPFレコード、下側がDKIMレコードです。「保存」ボタンをクリックします。
ドメイン登録サービスなど、DNSを別のサービスで管理している場合は、コピペしたDNS情報をお使いのサービスのDNS管理画面で追加してください。
次に、WordPressサイト側での設定に移ります。
WordPressサイトにSMTPサーバー情報を追加する
プラグインWP Mail SMTPをインストールします。
「設定」メニュー、「一般」タブで以下の情報を入力していきます。
送信元メールアドレス:先ほどSPF、DKIMレコードの設定を行ったメールアドレスを入力します。
フォーム名:会社名、差出人の氏名など、送信元の名前を入力します。
「このメールを強制使用」「この名前を強制使用」チェックボックスは必要に応じてチェックします。
メーラーに「その他のSMTP」を選択します。
先ほどConoHaコントロールパネルからメモ帳などにコピペしておいた、情報を以下の項目に入力していきます。
SMTPホスト:ConoHaコントロールパネル側の「SMTPサーバー」の値
SMTPユーザー名:ConoHaコントロールパネル側の「メールアドレス」
SMTPパスワード:ConoHaコントロールパネル側の「パスワード」
「設定を保存」ボタンをクリックします。
メール送信のテストをする
「メールテスト」タブに行き、メールを受け取れるメールアドレスを入力して、テスト送信します。正しく設定されていれば、以下のように表示されます。
SPFレコードはあるけど、DMARCがないよ、というメッセージですね。それでもGmailの受信ボックスには届いていました(=迷惑メール扱いになっていませんでした。)
Gmailに届いたメールの詳細を見てみると以下のようにDKIM:PASSと表示され、DKIM認証が通っていることが分かります。
このままでもいいという方はここまででOKです。
ただ前述したように、ドメイン認証には、SPF、DKIMの他にDMARCという仕組みがあり、この3つを組み合わせて使うことで確実にメールを到達させることができると言われています。
詳しい仕組みについては割愛しますが、「せっかくなので、DMARCレコードも追加してしっかり到達率を上げたい」という方は、以下の手順で行ってください。
DMARCレコードを追加して確実にメールを到達させる
ConoHaコントロールパネルにアクセスし、左メニューの「メール管理」を選択します。
メールアドレスを新たに追加します。画面右側の「+メールアドレス」をクリックし、dmarc@独自ドメイン*というメールアドレスを作成します。パスワードはあとで忘れないように管理してくださいね。
*dmarc@でなくても、別の文字列でもOKですがここではdmarc@としています。
これは、DMARCレポートと呼ばれる、メールの送信結果のレポートが届くためのメールアドレスになります。
では、DNS設定で、DMARCレコードを追加しましょう。
ConoHaコントロールパネルの左メニューから「DNS」を選択します。(他のサービスでDNSを管理している場合は、その管理画面にアクセスします)
ドメインリストから該当するドメインをクリックして、右側にある鉛筆アイコンをクリックします。
レコードの最後にいき、+アイコンをクリックして、以下のように情報を入力し、保存します。
タイプ:TXT 名称:_dmarc TTL:3600 値:v=DMARC1; p=none; sp=none; rua=mailto:先ほど作ったメールアドレス; ruf=mailto:先ほど作ったメールアドレス;
DNSが浸透するまで、少し時間をおいてから、WordPress側で、再度テストメールを送ってみてください。
DMARCが正しく設定されていれば、以下のようにテスト結果が表示されるはずです。
Gmailに送ったテストメールの詳細を見てみると、SPF、DKIM、DMARCすべてがPASSとなっていることが分かります。
上のような詳細は、Gmailでメールを開き、右側の3つの●のアイコンをクリックして「メッセージのソースを表示」をクリックすると見れます。
手順としては、これで完了なのですが、先ほど追加したDMARCレコードの意味について、少しだけ解説をして終わりにしたいと思います。
DMARCとは
まずはDMARCについてのGoogleからの引用です。
DMARC は標準的なメール認証方式で、メール管理者がハッカーをはじめとする攻撃者による組織またはドメインのなりすましを防ぐのに役立ちます。・・・DMARC を使用すると、組織またはドメインからのメールを受け取るメールサーバーに対してレポートをリクエストすることもできます。
https://support.google.com/a/answer/2466580?hl=ja
DMARCレコードを定義すると、なりすましメールがないかどうかをチェックできるレポートを受け取ったり、なりすましの可能性が高いメールをブロックしたりすることができます。例えば、以下のようなDMARCレコードの場合、ruaとrufに設定したメールアドレスdmarc@simplyweb.tech宛にレポートが届きます。
v=DMARC1; p=none; sp=none; rua=mailto:dmarc@simplyweb.tech; ruf=mailto:dmarc@simplyweb.tech;
ruaに設定したアドレスには、ある程度の期間にメールサーバーが受信したメールの統計情報がXML形式で送られてきます。そのレポートをEasyDMARCなどのサービスにアップロードすると、そのドメインのメールアドレスからなりすましメールの疑いがあるメールが送信されていないかをチェックすることができます。
上記のDMARCレコードのp=noneでは、なりすましの疑いがあるメールに対して「何もしない」というポリシーを設定しています。その他のポリシーとして、quarantineかrejectを設定することもできます。quarantineは「隔離」で、これを設定すると、なりすましの疑いがあるメールは迷惑メールフォルダに振り分けられます。rejectは「拒否」で、なりすましの疑いがあるメールをブロックされます。ただし、メール受信サーバー側で設定されているポリシーによっても受信メールの扱い方が変わるので、DMARCレコードでのポリシーが100%反映されるというわけではないようです。
DMARCポリシーは最初はnoneに設定し、DMARCレポートをチェックして、問題のない(=なりすましでない)メールがちゃんと認証に合格しているかを検証します。その後、より厳格なquarantineやrejectにポリシーを変更することが勧められています。
参考:https://support.google.com/a/answer/10032472
コメント