コムセント 技術情報

  1. TOP
  2. コムセント 技術情報
  3. 送信メールがスパム扱いされない方法

送信メールがスパム扱いされない方法

Googleのスパムメール対策に端を発しているような気もしますが、送信したメールがスパムメールとして分類されるのを防ぐ、またはメール自体が拒否されるのを防ぐため、メールサーバーを運用している管理者などは対策が必要になっていることでしょう。
基本的にどこのメールサーバーに対してでも、Googleが出している指針に従えば良いかと思いますが、大量にメールを送信する環境では、それだけでは不足していることもあります。
弊社ではComelというメール配信サービスを提供しています。大量送信に向いているサービスを展開していますが、できる限りメールがスパム扱いされないように対策を取っています。一部を紹介します。

DKIMへの対応

Googleのスパムメール対策で重視されているのが、DKIMへの対応です。必ずしもGoogle宛て(ほぼGmailとなりますが)ではDKIMは必須とはされていないのですが、事実上必須になっています(SPFまたはDKIMとなっているので、必須では無いはず)。SPFを設定していてもDKIMが入っていないとほぼ拒否されます。
DKIMはOpenDKIMを利用し、メール送信時に付与するようにすれば良いでしょう。DNSへの登録もいろいろと必要ですが、SPFと同じようにTXTレコードに設定していけば問題ありません。
DKIMで気をつけるべきは、DKIMはFromアドレスのドメインに適合したものが付与されるという点です。ReturnPathやReply-Toなどに基づいて付与されるわけでは無いため、Fromを変えて送信するような状況がある場合は、DKIMが付与されません。

SPFへの対応

既にSPFの対応はしているところが多いと思いますが、これも設定しておいた方が良いです。基本的には、TXTレコードで、送信する可能性のあるサーバーのIPアドレスを記述していけば良いのですが、注意するべきはその数です。IPアドレスは10個までしか検索をしてくれません。そのため、includeなどで別のドメインを参照している場合、そこに5個IPアドレスが書いてあった場合、残りは5個ということになります。
他の送信サーバーを使いつつ、自分のところからもメールを送る場合などでは注意が必要です。

逆引きへの対応

URLなどからIPアドレスを参照することを正引きと呼んでいますが、逆にIPアドレスからホスト名を取得することを逆引きと呼んでいます。通常の使い方では使うことは無いのが逆引きですが、スパムメール対策ではこの逆引きも利用されることがあります。送信したメールサーバーのIPアドレスとホスト名が一致しているかどうかを調べるときに利用されているようです。
例えば、お名前.comなどでドメインを取得していた場合、DNSサービスは付いてきて利用する方も多いと思いますが、逆引きは設定できません。そのため、逆引きをするためDNSサーバーを別途構築するか、さくらインターネットのVPSなどでは逆引き設定ができるので、そういうサービスで提供されている逆引き設定を利用するのが良いでしょう。サービスが提供されていれば、それを使うのが一番速いです。

SSL/TLSへの対応

メールを他のメールサーバーに転送する際に、SSL/TLSへの対応をしておく必要があります。特にGmailなどでは、SSL/TLS以外での接続をメールサーバーから行なうと拒否される可能性が高くなるため、注意が必要です。
メールクライアントとメールサーバー間もSSL/TLS通信が望ましいですが、ここは通常通りの通信でも問題はありません。

RFC8058への対応

RFC8058は電子メールヘッダーに使用されるフィールドの1つでList-Unsubscribeヘッダーを利用して定義を行なうと、受信者の環境でメーリングリストやメルマガの配信停止を行える、という機能です。
・List-Unsubscribe-Post: List-Unsubscribe=One-Click
・List-Unsubscribe: https://example.com/unsubscribe/Yhm3geU3t3beh
のようにヘッダー内に記述を行なっておきます。2行とも必要です(URLは例示なので自分のシステムに合わせて変更が必要です)

データを受け取るための方法はいろいろとありますが、URLを指定すると、指定したURLに対してPOST送信されてくるため、そのデータを元に配信停止処理を行ないます。配信停止処理はメールを送っている側でシステムを作成する必要があります。
当然誰が配信停止したいのかを識別する必要があるため、個人を特定できるような情報を送って貰う必要はあります。
他にメールアドレスを指定することもできますが、URLを指定するのが必須なので、併記する必要があります。

またメール本文内にも配信停止のための案内を記述しておく必要はあります。Gmailなどではメールヘッダーに上記の記述をしても、最初の頃は停止ボタンが表示されません。メールアドレスが有効かどうかを調べるために利用される恐れがあるため、ある程度の期間は表示されません。

メーリングリストやメルマガ以外の送信

RFC8058は、基本的にメーリングリストやメルマガなど、同一内容で多数の人に対して送信するときのことを想定しているため、通常のメールを送信する場合は、RFC8058に対応しなくても問題ありません。
もっとも、同一ドメインで、対象のメールマガジンなどを送信していてスパム送信元と扱われてしまっている場合やブラックリストに掲載されている場合などでは届かなくなります。サブドメインでも関係無く同一ドメインとして認識されるため、メルマガなどはどうしてもブラックリストに載りやすいこともあるため、別ドメインなどで運用することをオススメします。

メーリングリストやメールの転送

メーリングリストやメールなどで受信するアドレスから転送してGmailなどで受信し確認するケースもありますが、この場合、通常の対応ではSPFもDKIMも使えなくなってしまうため、Gmailではブロックされてしまいます。
メーリングリストなどを運用する場合は、ARC(Authenticated Received Chain)を使って、この問題に対応する必要があります。
メーリングリストや転送メールの場合、投稿者が送信したときに使ったメールサーバーと、受信者に対して送信するメールサーバーが異なります。そのため、受信者に対して送信するメールサーバー側でARCヘッダーを追加して受信者に送信することで、ARCの検証が可能なメールサーバーの場合、ARCの検証を経て、メールが届くようになります。ただし、ARC自体新しい規格であるため、全てのメールサーバーが対応していないケースもあります。またほとんどのメール転送では、ARCヘッダーを追加してくれるケースが少ないため、転送は失敗するケースが多くなります。

メーリングリストなどでARCに対応しているかどうかは、メーリングリストソフトなどによります。sympaではAPCに対応していて、sympa.confに以下の設定を記述することでARCを使うことができます。

arc_feature on
arc_signer_domain ドメイン名を記述
arc_selector DKIMと同じセレクター名を記述
arc_private_key_path DKIMと同じ鍵ファイルをフルパスで指定

こちらで試した限りでは、DMARCの設定も変更が必要で、
保護モードを「すべて(all)」にし、送信者名書き換えの形式を「リスト名(アドレスの代理で送信)」にする必要がありました。

まとめ

これらの対策をしても、どうしてもメールは届かないケースが出てきます。届かないところに何回も送ってもスパムメールの送信元と判断されるケースもあるため、注意が必要です。
ブラックリストの中には届かないアドレスを作成しておいて、そこに届いたらブラックリストに載せるところもあるようです。
スパムメール自体が減っていないため、いろいろな対策手段が出てきて、それへの対応に追われてしまいますが、情報をいろいろ手に入れていきましょう。

おすすめ記事