ActiveCampaignのSPF・DKIM・DMARC設定。
ActiveCampaignのドメイン認証は、共通のSPF行をルートドメインに貼り付ける方式ではなく、CNAMEレコードで行います。Settings → AdvancedでSending Domainを追加すると、3つのCNAMEと初期設定用のDMARCレコードが提示されます。CNAMEの内訳は、2つのDKIM鍵(acdkim1._domainkeyとacdkim2._domainkey)と、バウンス/Return-Pathを自社ドメインのサブドメインに移すMailserver DomainのCNAMEです。これらが解決されると、すべてのキャンペーンはActiveCampaignによってd=yourdomain.comで署名され、自社ドメイン上のReturn-Pathで送信されます。その結果、DKIMとSPFの両方でアライメントが一致してDMARCに成功し、未認証のActiveCampaignメールにGmailが付ける「via acems1.com」の表記も消えます。ルートドメインのSPFレコードに追加するinclude:はありません。その役割はMailserver DomainのCNAMEが担います。
ActiveCampaignを認証すべき理由
ActiveCampaignのドメイン認証は形式的な作業ではなく、ブロードキャストやオートメーションが受信トレイに届くかどうかを左右します。ActiveCampaign自身も現在、事実上の必須事項として扱っています。2024年2月以降、GmailとYahooは、すべての大量送信者(1日あたり約5,000通以上)に対し、SPF、DKIM、DMARCにアライメントが一致した状態で成功することを義務付けています。Microsoftも2025年に、Outlook.com/Hotmail宛ての大量メールに同じ要件の適用を始めました。認証が完了するまで、ActiveCampaignは同社の共有バウンス用ドメイン(acems1.comのReturn-Path)で送信します。この状態では、メールが暗号学的に自社から送られたものであることを受信者に示せず、FromアドレスのアライメントもDMARCの成功も得られません。送信者レピュテーションも、同じインフラを使う未認証のActiveCampaignテナントすべてと共有されます。設定を最後まで行う価値がある、ActiveCampaign固有の利点もあります。Mailserver DomainのCNAMEがReturn-Pathを自社ドメインのサブドメインに委任するため、ActiveCampaignは、DKIMだけでなくSPFのアライメントも利用者のドメインと一致させられるメール配信サービス(ESP)の1つです。DMARCに成功する経路が独立して2つあることで、メールが転送され(メーリングリストや.forwardルールなど)SPFだけでは失敗する場合でも、認証された状態を保てます。
ActiveCampaignにおけるSPFの実情
ActiveCampaignはCNAMEでドメインを認証するサービスのため、ルートドメインの1つのSPF TXTレコードに追加するinclude:メカニズムはありません。自分で作り出そうとしないでください。SPFは、代わりにMailserver DomainのCNAMEで処理します。バウンスを処理するのは利用者ではなくActiveCampaignであるため、デフォルトでは、すべてのキャンペーンのエンベロープ送信者/Return-Pathは同社の共有バウンス用ドメイン(bounce-…@acems1.comのような形式)になります。SPFは常にこのエンベロープのドメインに対してチェックされるので、デフォルトの設定ではacems1.comとしてSPFに成功するものの、Fromドメインとはアライメントが一致せず、DMARCの成功にSPFは寄与しません。これを解決するのがMailserver Domainの設定です。自社ドメインのサブドメインにCNAMEを公開し、Return-PathをActiveCampaignに委任します。ラベルはem-3501330.yourdomain.comのようにActiveCampaignが自動生成します。従来の手動フローでは、サブドメインをyouraccount.activehosted.comに向けます。するとエンベロープ送信者は自社のサブドメイン上に置かれ、ActiveCampaignがこのCNAMEを通じてSPFレコードを提供するので、チェック自体の成功も維持されます。さらに、Return-Pathのサブドメインは組織ドメインの配下にあるため、DMARCのデフォルトである緩和されたアライメントで一致します。独自のReturn-Pathを使い続け、SPFのアライメントが決して一致しないMailchimpとの大きな違いはここです。結果として、ルートドメインのSPFレコードには何も追加されず、ActiveCampaignが10回のSPF DNSルックアップを消費することもありません。3つのCNAMEがすべて有効になれば、SPFとDKIMの両方で自社ドメインとのアライメントが一致します。
2つの設定方法
Configure Domain:DNSとのネイティブ連携(推奨)
- ActiveCampaignがDNSホストに接続し、3つのCNAMEとDMARCレコードを追加します
- ホストのラベル、レコードタイプ、Cloudflareのプロキシ設定を間違える機会が最も少なくなります
- DNSが対応ホスト(Cloudflare、GoDaddy、Route 53、Namecheap、Squarespace、IONOS、Hostinger、Bluehostほか約20社)にある場合に最適です
- 作成されるのは同じacdkimとMailserverのCNAMEで、公開作業を任せられるだけです
Set up manually
- 「View DNS records」を使い、2つのDKIM CNAME、MailserverのCNAME、DMARCを自分でコピーします
- ネイティブ連携の対象外のホストを含め、どのレジストラでも利用できます
- 公開する内容を正確に管理でき、DMARCレコードを既存のものと1つにまとめられます
- CloudflareではCNAMEをグレーのクラウドにすることと、ホスト欄の二重化を避けることを忘れないでください
設定手順
- 1
Advanced settingsを開く
ログインしてSettings → Advancedを開きます。最初に押さえておきたいActiveCampaign固有の注意点として、ドメイン認証は「Email」や「Domains」といったわかりやすいメニューにはありません。Advanced settingsのSending Domainセクションにあり、見つけられない人が多いのはそのためです。
- 2
送信ドメインを追加
Sending Domainセクションで、送信に使うドメイン(例:yourdomain.com)を追加します。すると、対応ホスト向けのワンクリックのネイティブDNS連携である「Configure Domain」と、「Set up manually」の2つの方法が提示されます。どちらでも作成されるレコードは同じです。
- 3
所有権を確認し、レコードを表示する
所有権またはメールの確認手順を完了します。手動の場合は、続いてドメインの横のドロップダウン矢印をクリックし、「View DNS records」を選びます。3つのCNAMEレコード(DKIMが2つ、Mailserver Domainが1つ)とDMARCのTXTレコードが表示されるので、それぞれのName/HostとValueを正確にコピーします。
- 4
DKIM CNAMEを2つ追加
acdkim1._domainkeyとacdkim2._domainkeyをCNAMEレコードとして作成し、ActiveCampaignに表示された向け先をそのまま指定します(dkim.acdkim1.acems1.comやdkim.acdkim2.acems1.comのような形式で、acemsのクラスター番号はアカウントごとに異なります)。タイプはCNAMEのままにし、AやTXTに変更しないでください。古いアカウントではacdkim1._domainkeyのセレクターが1つだけ表示される場合があります。画面に表示されたものを追加してください。
- 5
Mailserver DomainのCNAMEを追加
ActiveCampaignが生成したサブドメイン(em-3501330のようなラベル)に、Mailserver DomainのレコードをCNAMEとして作成し、表示された向け先を指定します(従来のフローではyouraccount.activehosted.comです)。このレコードがReturn-Pathを自社ドメインに移し、SPFのアライメントを一致させます。省略すると、SPFはActiveCampaignの共有バウンス用ドメインacems1.comのままとなり、アライメントは一致しません。
- 6
DMARCレコードを追加(既存のものがあれば維持)
ActiveCampaignは、ホスト_dmarcに初期設定用のDMARC TXTレコードを用意します。通常はv=DMARC1; p=none; rua=mailto:dmarc@yourdomain.comです。p=noneは監視のみのため、配信には影響しません。すでに_dmarcレコードがある場合は、2つ目を追加しないでください。_dmarcレコードはドメインごとに必ず1つだけです。既存のレコードを検出すると、ActiveCampaignは自動的に作成をスキップします。
- 7
ホストの二重化とCloudflareのプロキシを修正
レジストラがドメインを自動で付加する場合は、二重化を避けるためにラベルのみ(acdkim1._domainkey.yourdomain.comではなくacdkim1._domainkey)を入力します。DNSがCloudflareにある場合は、ActiveCampaignのCNAMEをすべて「DNS only」(グレーのクラウド)に設定してください。オレンジのクラウドでプロキシが有効なCNAMEは、acems/emsendのホストではなくCloudflareのIPに解決され、ActiveCampaignのチェックに失敗します。これはActiveCampaignの確認失敗で最も多い原因です。
- 8
ActiveCampaignでCheck DNSをクリック
Sending Domainのページに戻り、Check DNS(またはVerify)をクリックします。DNSの反映は通常5~10分ですが、最大24~48時間かかることがあります。3つのCNAMEがすべて解決されると、ステータスが緑色/authenticatedに変わります。進まない場合はCNAMEの向け先とCloudflareのプロキシ設定を見直し、チェックを再実行してください。
- 9
認証済みドメインからキャンペーンを送信し、ヘッダーを確認
キャンペーンのFromアドレスが認証済みドメインのものであることを確かめます(DNSの確認が済んでも、別のFromを設定済みのキャンペーンは変更されません)。テストを送ってGmailで開き、⋮ → Show originalを選びます。DKIM: PASSでd=yourdomain.com、SPF: PASSでem-のサブドメイン(acems1.comではなく、アライメントが一致している状態)、DMARC: PASSと表示されていれば成功です。
追加するレコード
正確な値はActiveCampaignのセットアップウィザードで生成されます。以下は、DNSホストに追加するレコードの形式を示したものです。
| タイプ | ホスト | 値 |
|---|---|---|
| CNAME | acdkim1._domainkey | dkim.acdkim1.acems1.comDKIM鍵1(2048ビット、ActiveCampaignが管理)。例です。acemsのクラスター番号はアカウントごとに異なるため、正確な向け先はView DNS recordsからコピーしてください。 |
| CNAME | acdkim2._domainkey | dkim.acdkim2.acems1.comDKIM鍵2:2つ目のセレクターにより、ActiveCampaignが鍵をローテーションできます。古いアカウントではacdkim1のセレクターが1つだけ表示される場合があります。 |
| CNAME | em-3501330 | youraccount.activehosted.comMailserver DomainのCNAME:Return-Pathをこのサブドメインに移し、SPFのアライメントを一致させます。例です。em-のラベルはアカウントごとに自動生成され、向け先はアカウントのホストです。正確なNameとValueはView DNS recordsからコピーしてください。 |
| TXT | _dmarc | v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.comDMARCポリシー:ActiveCampaignは初期設定用のレコードを用意しますが、既存のレコードは上書きしません。_dmarcはドメインごとに1つだけにし、p=noneから始めてください。 |
ルートドメインのSPF(v=spf1)のTXTレコードは1つだけにし、すべての送信元をこの1行にまとめてください。SPFレコードが2つあると、それ自体がエラーになります。
DNSルックアップの10回制限
SPFのDNSルックアップは10回までに厳格に制限されており、超えるとpermerrorを返して、どの受信側でも検証されなくなります。ActiveCampaignの設定がこの上限のうち何回を消費するかは、次のとおりです。
ActiveCampaignの推奨設定はルックアップを消費しません。10回すべてを、includeが必要な他の送信元に使えます。
DKIM
ActiveCampaignのDKIMはCNAME方式のため、公開後の手間がかかりません。ActiveCampaignは2023年2月23日にDKIMをTXTレコードからCNAMEへ移行し、CNAMEの設定では2048ビットの鍵を使用しています。公開するのは2つの短いCNAME(acdkim1._domainkey.yourdomain.comとacdkim2._domainkey.yourdomain.com)で、向け先はdkim.acdkim1.acems1.comやdkim.acdkim2.acems1.comのような形式です(acemsのクラスター番号はアカウントごとに異なります)。貼り付け式のTXT鍵ではなくActiveCampaignに委任するCNAMEなので、秘密鍵はActiveCampaignが保持し、この2つのセレクターの背後で公開する内容をローテーションできます。DNSを再編集する必要はありません。DKIMのTXTレコードを作成したり、公開鍵を自分でコピーしたりする必要はありません。CNAME方式には実用面の利点もあります。2048ビットの鍵はCNAMEの先のActiveCampaign側に置かれるため、長い鍵でTXT方式のDKIMがつまずきがちな、255文字のTXT文字列分割の問題を避けられます。ActiveCampaignが付与する署名はd=yourdomain.comなので、Fromドメインとアライメントが一致し、これによってDMARCに成功します。注意点は2つあります。Cloudflareでは、CNAMEを「DNS only」(グレーのクラウド)にしないとacemsのホストに解決されません。また、従来のアカウントには今もacdkim1._domainkeyのセレクターが1つだけ表示される場合があります。チュートリアルの値を自分の値と混在させず、View DNS recordsの画面に表示されたものを追加してください。
DMARC
DMARCは、ルートドメインに設定する別のポリシーTXTレコードです。現在のActiveCampaignは、Sending Domainを追加する際に初期設定用のレコードを用意します。通常はホスト_dmarcのv=DMARC1; p=none; rua=mailto:dmarc@yourdomain.comです。ただし、ドメインの_dmarcレコードは必ず1つだけでなければならないため、既存のレコードがあれば2つ目は作成されません。p=noneは監視のみのため、配信には一切影響しません。その間に集計レポート(rua)を確認し、ActiveCampaignのメールがアライメントの一致した状態で成功していることを確かめます。ActiveCampaignの強みは、設定を完了すれば、acdkimセレクターによるDKIMと、Mailserver DomainのCNAMEで利用者のサブドメインに置かれるReturn-PathによるSPFの両方でアライメントが一致することです。正しく設定したドメインは両方の経路でDMARCに成功し、転送にも耐える堅牢な構成になります。1~2週間レポートを確認し、正規の送信元すべて(ActiveCampaignに加え、Google Workspace、Microsoft 365、トランザクションメールのリレーなど)が認証されていることを確かめたら、p=noneからp=quarantine、最終的にp=rejectへと段階的に引き上げます。送信元がいくつあっても、_dmarcレコードは組織ドメイン全体で1つだけにしてください。ActiveCampaign専用に2つ目を追加してはいけません。
正しく設定できたか確認する
ActiveCampaignの緑色の「authenticated」ステータスだけで判断せず、実際のメールで確認してください。認証済みドメインのアドレスから自分宛てにテストキャンペーンを送り、Gmailで開いて⋮ → Show originalを選びます。DKIM: PASSでsigned-by: yourdomain.com(セレクターはacdkim1またはacdkim2)、SPF: PASSでacems1.comではなくem-で始まるMailserverサブドメイン、そしてDMARC: PASSと表示されていれば成功です。SPFにこのサブドメインが表示されていれば、Mailserver DomainのCNAMEが機能し、SPFのアライメントが一致している証拠です。SPFにacems1.comと表示されたままなら、Mailserver DomainのCNAMEが解決されていません。その場合もDKIMだけでDMARCには成功しますが、SPFのアライメントも一致させるには、このCNAMEを追加または修正してください。レコード自体はdig CNAME acdkim1._domainkey.yourdomain.comとdig TXT _dmarc.yourdomain.comで確認できます。続いて、Qualisendのドメイン診断でドメインをチェックし、3つのCNAMEとDMARCレコードが正しく解決され、ルートドメインのSPFレコードがDNSルックアップの10回制限に収まっていることを確かめます。集計レポートが届き始めたら、DMARCレポート解析にレポートをドロップします。ActiveCampaignが、アライメントの一致した成功している送信元として表示されるはずです。
よくある注意点
- 適用範囲
設定はわかりにくい場所にあります。ドメイン認証はSettings → Advanced → Sending Domainにあり、「Email」や「Domains」といったわかりやすいメニューにはありません。見つからないときは、ここを確認してください。
- DNS設定
ActiveCampaignには「カスタムドメイン」と呼ばれるものが2種類あり、混同されがちです。Custom Domain Name(youraccount.activehosted.comへのCNAME)はリンク、画像、ランディングページのブランディング用で、送信ドメイン認証とは関係ありません。メールを認証するのは、Mailserver DomainのCNAMEとacdkimのDKIM CNAMEだけです。
- DNS設定
Mailserver DomainのCNAMEを省略すると、SPFのアライメントは一致しません。Return-PathがActiveCampaignの共有バウンス用ドメインacems1.comのままとなるため、SPFはacems1.comとしては成功しても、自社ドメインとしては成功しません。DKIMだけでもDMARCには成功しますが、SPFのアライメントも一致させて転送に強い構成にするには、Mailserver DomainのCNAMEの追加が必要です。
- DNS設定
Cloudflareのオレンジのクラウド(プロキシ)が原因で失敗します。これはActiveCampaignの確認失敗で最も多い原因です。acdkimとMailserverのCNAMEをすべて「DNS only」(グレーのクラウド)に設定してください。プロキシが有効なCNAMEはacems/emsendのホストではなくCloudflareのIPに解決され、Check DNSに失敗します。
- DNS設定
ホスト欄の二重化:多くのレジストラはドメインを自動で付加するため、acdkim1._domainkey.yourdomain.comと入力するとacdkim1._domainkey.yourdomain.com.yourdomain.comになります。管理画面がドメインを付加する場合は、ラベルのみ(acdkim1._domainkey、acdkim2._domainkey、em-XXXXXXX)を入力してください。
- 認証失敗の原因
SPFレコードとDMARCレコードは、それぞれ1つだけにしてください。DMARCレコードがすでにあれば、ActiveCampaignは2つ目を作成しません。Google WorkspaceやMicrosoft 365でも送信している場合は、2つ目のSPF TXTレコードも公開しないでください。どちらも2つあると、それ自体がエラーになります(SPFのPermError/無効なDMARC)。
- DNS設定
これらはTXTレコードではなくCNAMEです。よかれと思ってDKIMレコードをTXTに変換したり、鍵の値を貼り付けたりしないでください。ActiveCampaignがacdkimセレクターの背後で2048ビットの鍵を保持し、ローテーションするにはCNAMEが必要です。従来のアカウントではacdkim1のセレクターが1つだけ表示される場合があります。アカウントに表示されたとおりに使用してください。
- DNS設定
無料の公開メールドメイン(gmail.com、yahoo.com、outlook.com)をFromアドレスにして送信しないでください。これらのドメインは厳格なDMARCを公開し、第三者がそのユーザーとして送信することを禁じています。そのためDKIMのアライメントを一致させられず、DMARCに失敗します。認証済みの自社ドメインから送信してください。
SPFレコードを作成
ActiveCampaignでは、ルートドメインにSPFのinclude:を追加する必要はありません。作成ツールを使って他の送信元用のクリーンなレコードを1つ組み立て、1行に収めてください。
送信元
メールの送信に使っているサービスを検索して、それぞれチェックを入れてください。
上の検索欄で利用中のメールサービスを検索するか、してください。
このドメイン自身のサーバー
ドメインが(上記のサービスを経由せず)直接メールを送信する場合は、ドメイン自体を許可します。
その他の送信元・IP
リストにないもの(別のサービスのSPFホストや特定のIPアドレス)を追加します。
接頭辞のinclude:は自動で付加されます。サービスのドキュメントに記載されているホスト名を入力してください。
その他すべての送信元へのポリシー
上記に記載されていないサーバーからのメールを、受信側がどう処理すべきかを指定します(allメカニズム)。
送信元がまだないため、すべてのメッセージに~allポリシーが適用されます。ステップ1で利用中のサービスを追加してください。
- ルートドメインにTXTレコードとして公開します。ホストは@(ドメインそのもの)、値は上記の文字列全体です。
- SPFレコードは1つのドメインにつき1つだけにします。すべての送信元をこの1行にまとめてください。v=spf1で始まるTXTレコードが2つあると、両方とも無効になります。
- DNSルックアップは10回以内に収めてください。include:、a、mxはそれぞれ1回とカウントされ、includeは内部でさらにルックアップを発生させることがあります。ip4:とip6:はカウントされません。
送信ドメイン認証の設定が済んだら、次は検証済みのクリーンなリストへの配信です。
リストを検証ActiveCampaignのSPFに関するよくある質問
関連記事
マーケティング・ESPの他のサービス
すべてのSPFガイド公開したら、ドメイン診断ですべてのレコードが正しく解決されることを確認し、DMARCレポート解析で自社ドメインを名乗って送信している送信元を把握します。作成ツールではすべての送信元を確認できます。ただし、認証は到達率対策の半分にすぎません。送信IPやドメインがブラックリストに掲載されていると、SPFの設定がどれほど適切でも迷惑メールに振り分けられます。そのため、ブラックリスト監視で掲載状況を確認しておくことをおすすめします。
認証の次は、リストをクリーンに保つ
SPF、DKIM、DMARCに成功すれば受信トレイに届き、クリーンなリストならその状態を維持できます。お手持ちのリストも検証してクリーニングできます。100クレジット無料、クレジットカード登録不要で始められます。