メール許可リスト(Email Allowlist)
概要
メール許可リスト(Email Allowlist) は、特定の送信元 IP アドレス、ドメイン、またはメールアドレスからのメールをスパムフィルターやセキュリティチェックから除外し、確実に受信トレイに配信する仕組みです。従来は「ホワイトリスト(Whitelist)」と呼ばれていましたが、IETF は 2020 年の RFC 8788 で包括的な用語の使用を推奨し、業界全体で「Allowlist」への移行が進んでいます。
許可リストは受信側で設定するものです。受信側のメールサーバー管理者が、信頼できる送信元を明示的にリストに追加します。リストに含まれる送信元からのメールは、スパムスコアの計算やコンテンツフィルタリングをバイパスして配信されます。
許可リストの対象は 3 つのレベルに分かれます。IP アドレスベース(送信サーバーの IP)、ドメインベース(送信ドメイン)、メールアドレスベース(個別の送信者アドレス)です。IP アドレスベースが最も広い範囲をカバーし、メールアドレスベースが最も細かい制御を提供します。
仕組み
許可リストは受信サーバーの MTA レベル、DNS ベースの DNSWL、メールクライアントのユーザー設定の 3 層で機能します。
受信サーバーでの許可リストの処理
受信側 MTA がメールを受信する際、許可リストは以下の順序で参照されます。
- SMTP 接続時に送信元 IP アドレスを許可リストと照合する
MAIL FROM(エンベロープ From)のドメインまたはアドレスを許可リストと照合する- 許可リストに一致した場合、スパムフィルターのスコア計算をスキップまたはスコアを大幅に減算する
- コンテンツフィルタリング(ベイジアンフィルター、URL チェック等)もバイパスする
- メールを受信トレイに直接配信する
許可リストに一致しない場合は、通常のフィルタリングプロセスが適用されます。
DNS ベースの許可リスト(DNSWL)
DNSBL(DNS-based Blocklist)がブロック対象の IP を管理するのと同じ仕組みで、DNSWL(DNS-based Whitelist / Allowlist)は信頼できる送信元 IP のリストを DNS で提供します。RFC 5782(2010年)が DNSBL/DNSWL の構造を定義しています。
代表的な DNSWL は dnswl.org です。受信サーバーは送信元 IP を逆順にして DNSWL に問い合わせ、登録されていればスパムスコアを減算します。
dig +short 25.100.51.198.list.dnswl.org
A レコードが返れば登録されています。返される IP アドレスの第 4 オクテットが信頼度レベルを示します。127.0.x.0 は none、127.0.x.1 は low、127.0.x.2 は medium、127.0.x.3 は high です。NXDOMAIN であれば登録されていません。
メールクライアントの許可リスト
サーバーレベルの許可リストとは別に、MUA(メールクライアント)でもユーザー単位の許可リストを設定できます。
Gmail では「連絡先に追加」することで、そのアドレスからのメールが迷惑メールフォルダに振り分けられにくくなります。Outlook では「差出人セーフリスト」に追加します。これらはサーバーサイドのフィルタリングに対するヒントとして機能し、完全な保証ではありません。
Google Workspace の管理コンソールでは、組織全体の許可リストを設定できます。IP アドレスベースの「メール許可リスト」と、ドメインベースの「承認済み送信者」が用意されています。
許可リストとメール認証の関係
許可リストは認証の代替ではありません。SPF・DKIM・DMARC は送信元の正当性を検証する仕組みであり、許可リストはフィルタリングの除外条件です。認証が fail しているメールを許可リストで配信すると、なりすましメールを素通りさせるリスクがあります。
DMARC ポリシーが p=reject のドメインからのメールが認証に失敗している場合、許可リストに登録されていても受信サーバーの設定次第では拒否されることがあります。許可リストを設定する際は、対象の送信元が正しく認証設定を行っていることを前提にします。
具体例
Google Workspace、Postfix、SpamAssassin での許可リスト設定手順を示します。
Google Workspace の IP 許可リスト設定
Google Workspace の管理コンソールで IP ベースの許可リストを設定する手順です。
- Google 管理コンソール(admin.google.com)にログインする
- [アプリ] → [Google Workspace] → [Gmail] → [スパム、フィッシング、マルウェア] に移動する
- [メールの許可リスト] に信頼する送信元の IP アドレスを追加する
追加した IP アドレスからのメールは、Gmail のスパムフィルターを通過しやすくなります。ただし、これは「スパム判定を完全にスキップする」設定ではなく、「スパムスコアを下げる」動作です。
Postfix の許可リスト設定
Postfix で特定の送信元をフィルタリングから除外する設定です。
# /etc/postfix/main.cf
smtpd_client_restrictions =
check_client_access hash:/etc/postfix/client_allowlist,
reject_rbl_client zen.spamhaus.org
# /etc/postfix/client_allowlist
198.51.100.0/24 OK
203.0.113.50 OK
client_allowlist に登録された IP アドレスやネットワークからの接続は、後続の reject_rbl_client(DNSBL チェック)をスキップします。
SpamAssassin の許可リスト
SpamAssassin でドメインベースの許可リストを設定する例です。
# /etc/spamassassin/local.cf
welcomelist_from *@trusted-partner.com
welcomelist_from_rcvd *@newsletter.example.com 198.51.100.0/24
welcomelist_from は From アドレスのみで判定します。welcomelist_from_rcvd は From アドレスと送信元 IP の組み合わせで判定するため、なりすまし耐性が高くなります。SpamAssassin 4.0 で従来の whitelist_from が welcomelist_from に改名されました。
確認方法
送信元 IP が DNSWL に登録されているかは dig で確認できます。
dig +short 25.100.51.198.list.dnswl.org
A レコードが返れば登録されています。NXDOMAIN であれば未登録です。
送信元が DNSBL に登録されていないかも併せて確認します。
dig +short 25.100.51.198.zen.spamhaus.org
NXDOMAIN であれば Spamhaus には登録されていません。
送信ドメインのメール認証設定が正しいかも確認します。許可リストで配信されているメールでも、認証が fail している場合はリスクがあります。
dig TXT example.com
dig TXT _dmarc.example.com
外部の視点からも確認したい場合は、Labee Dev Toolbox の Mail Auth API を使うと、外部の視点から見た結果を取得できます。
curl "https://labee.dev/api/mail-auth?domain=example.com"
{
"success": true,
"data": {
"spf": {
"record": "v=spf1 include:_spf.google.com ~all",
"exists": true
},
"dkim": {
"record": null,
"exists": false,
"selector": "default"
},
"dmarc": {
"record": "v=DMARC1; p=reject; rua=mailto:dmarc@example.com",
"exists": true
},
"bimi": {
"record": null,
"exists": false
}
},
"error": null,
"meta": { "responseTime": 120 }
}
許可リストに追加する送信元の data.spf.exists と data.dmarc.exists が true であることを確認します。認証が設定されていない送信元を許可リストに追加すると、そのアドレスやドメインになりすましたメールまで配信してしまう危険があります。
よくある問題
許可リストの運用では、適用範囲の広さ、更新の漏れ、認証の代替としての誤用が問題を引き起こします。
許可リストの範囲が広すぎる
IP アドレスを /16 のような広いネットワーク範囲で許可リストに登録すると、意図しない送信元まで許可してしまいます。許可リストは可能な限り限定的に設定します。IP アドレスは /32(単一 IP)または /24(256 アドレス)程度に留め、ドメインベースの場合は具体的なサブドメインを指定します。
許可リストの更新を忘れる
取引先の変更やサーバー移行で送信元 IP が変わった場合、許可リストの更新を忘れると、新しい IP からのメールがスパム判定されます。逆に、古い IP を許可リストに残しておくと、その IP が別の送信者に再割り当てされた際に不正なメールを素通りさせるリスクがあります。許可リストは定期的に棚卸しを行います。
許可リストに頼りすぎる
許可リストはフィルタリングの例外設定であり、メール配信の根本的な解決策ではありません。送信者に SPF・DKIM・DMARC を正しく設定してもらうことが本来の対応です。認証が fail し続ける送信元を許可リストで救済し続けると、なりすましメールへの耐性が低下します。許可リストは、認証設定が整うまでの一時的な措置として使い、恒久的な運用にしないのが望ましい方針です。