クラウド ドメインからメールに署名するように DKIM を設定する

ヒント

Microsoft Defender for Office 365 プラン 2 の機能を無料で試すことができることをご存知でしたか? Microsoft Defender ポータル試用版ハブで、90 日間の Defender for Office 365 試用版を使用します。 サインアップできるユーザーと試用版の条件については、「Microsoft Defender for Office 365 を試す」を参照してください。

DomainKeys Identified Mail (DKIM) は、Microsoft 365 organizationから送信されたメールを検証して、ビジネス メールの侵害 (BEC)、ランサムウェア、その他のフィッシング攻撃で使用されるなりすまし送信者を防ぐのに役立つ電子メール認証の方法です。

DKIM の主な目的は、メッセージが転送中に変更されなかったことを確認することです。 特に次のような場合です。

  1. ドメインに対して 1 つ以上の秘密キーが生成され、送信元メール システムによって送信メッセージの重要な部分にデジタル署名するために使用されます。 これらのメッセージ部分には、次のものが含まれます。
    • From、To、Subject、MIME-Version、Content-Type、Date、およびその他のメッセージ ヘッダー フィールド (ソース メール システムに応じて)。
    • メッセージの本文。
  2. デジタル署名は、メッセージ ヘッダーの DKIM-Signature ヘッダー フィールドに格納され、中間電子メール システムがメッセージの署名された部分を変更しない限り有効なままになります。 署名ドメインは、DKIM-Signature ヘッダー フィールドの d= 値によって識別されます。
  3. 対応する公開キーは、署名ドメインの DNS レコードに格納されます (Microsoft 365 の CNAME レコード。他の電子メール システムでは TXT レコードを使用する場合があります)。
  4. 宛先電子メール システムでは、DKIM-Signature ヘッダー フィールドの d= 値を使用して、次の目的で次を行います。
    • 署名ドメインを特定します。
    • ドメインの DKIM DNS レコードで公開キーを検索します。
    • ドメインの DKIM DNS レコードの公開キーを使用して、メッセージ署名を確認します。

DKIM に関する重要な事実:

  • DKIM がメッセージに署名するために使用するドメインは、メッセージ内の MAIL FROM アドレスまたは From アドレスのドメインと一致する必要はありません。 これらのアドレスの詳細については、「 インターネット メールで認証が必要な理由」を参照してください。
  • メッセージには、異なるドメインによって複数の DKIM 署名を含めることができます。 実際、多くのホストされた電子メール サービスは、サービス ドメインを使用してメッセージに署名し、顧客がドメインの DKIM 署名を構成した後、顧客ドメインを使用してメッセージに再度署名します。

作業を開始する前に、メール ドメインに基づいて Microsoft 365 の DKIM について知る必要がある内容を次に示します。

  • メールに Microsoft Online Email ルーティング アドレス (MOERA) ドメイン (たとえば、contoso.onmicrosoft.com) のみを使用する場合: 何もする必要はありません。 contoso.onmicrosoft.com ドメイン内の送信者からの送信メッセージは、contoso.onmicrosoft.com ドメインによって自動的に DKIM 署名されます。

    ただし、*.onmicrosoft.com ドメインを使用して DKIM 署名を手動で構成することもできます。 手順については、「Defender ポータルを使用して、*.onmicrosoft.com ドメインを使用して送信メッセージの DKIM 署名をカスタマイズする」を参照してください。

    最初の *.onmicrosoft.com ドメインの送信者からの送信メッセージが DKIM 署名されていることを確認するには、「Microsoft 365からの送信メールの DKIM 署名を確認する」を参照してください。

    *.onmicrosoft.com ドメインの詳細については、「 "onmicrosoft.com" ドメインがある理由」を参照してください。

  • メールに 1 つ以上のカスタム ドメイン (たとえば、contoso.com) を使用する場合: 現在、カスタム ドメインからの送信メールに対して DKIM 署名は行われません。そのため、メール保護を最大限に行うには次の手順を実行する必要があります。

    • カスタム ドメインまたはサブドメインを使用して DKIM 署名を構成する: メッセージは、From アドレス内のドメインによって署名された DKIM である必要があります。 また、DMARC を構成することをお勧めします。DKIM が DMARC 検証に合格するのは、DKIM がメッセージに署名したドメインと From アドレスのドメインが一致する場合のみです。

    • サブドメインに関する考慮事項:

      • 直接管理されていないメール サービス (一括メール サービスなど) の場合は、メインメール ドメイン (contoso.com など) の代わりにサブドメイン (marketing.contoso.com など) を使用することをお勧めします。 これらのメール サービスから送信されたメールに関する問題が、メインメール ドメイン内のユーザーから送信されたメールの評判に影響を与えるのを望んでいません。 サブドメインの追加の詳細については、「 カスタム サブドメインまたは複数のドメインを Microsoft 365 に追加できますか?」を参照してください。

      • Microsoft 365 からメールを送信するために使用する各サブドメインには、独自の DKIM 構成が必要です。

        ヒント

        未定義のサブドメインのEmail認証保護は、DMARC によってカバーされます。 サブドメイン (定義されているかどうか) は、親ドメインの DMARC 設定を継承します (サブドメインごとにオーバーライドできます)。 詳細については、「 DMARC を設定してクラウド送信者の差出人アドレス ドメインを検証する」を参照してください。

    • 登録済みで未使用のドメインを所有している場合: 電子メールや何か (パークされたドメインとも呼ばれます) に使用されていない登録済み ドメインを所有している場合は、それらのドメインの DKIM レコードを発行しないでください。 DKIM レコードが存在しないため (そのため、メッセージ署名を検証するための DNS に公開キーがないため)、偽造ドメインの DKIM 検証が妨げられます。

  • DKIM だけでは十分ではありません。 カスタム ドメインに最適なレベルの電子メール保護を行うには、 全体的な電子メール認証 戦略の一部として SPF と DMARC を構成する必要もあります。 詳細については、「 次のステップ」を参照してください。

この記事の残りの部分では、Microsoft 365 のカスタム ドメイン用に作成する必要がある DKIM CNAME レコードと、カスタム ドメインを使用した DKIM の構成手順について説明します。

ヒント

カスタム ドメインを使用した DKIM 署名の構成は、Microsoft 365 の手順と、カスタム ドメインのドメイン レジストラーでの手順の組み合わせです。

さまざまな Microsoft 365 サービスの CNAME レコードを多くのドメイン レジストラーで作成する手順について説明します。 DKIM CNAME レコードを作成するための出発点として、次の手順を使用できます。 詳細については、「 DNS レコードを追加してドメインを接続する」を参照してください。

DNS 構成に慣れていない場合は、ドメイン レジストラーに問い合わせてヘルプを依頼してください。

DKIM CNAME レコードの構文

DKIM は RFC 6376 で完全に説明されています。

Microsoft 365 では、カスタム ドメインまたはサブドメインを使用した DKIM 署名が有効になっている場合、2 つの公開秘密キー ペアが生成されます。 メッセージの署名に使用される秘密キーにアクセスできません。 CNAME レコードは、DKIM 署名の検証に使用される対応する公開キーを指します。 これらのレコードは セレクターと呼ばれます。

  • アクティブなセレクターは 1 つだけであり、カスタム ドメインを使用した DKIM 署名が有効になっている場合に使用されます。
  • もう 1 つのセレクターは非アクティブです。 これは、今後 DKIM キーをローテーションした後にのみアクティブ化され、元のセレクターが非アクティブ化された後にのみ使用されます。

DKIM 署名の検証に使用されるセレクター (メッセージの署名に使用される秘密キーを推論する) は、DKIM-Signature ヘッダー フィールド (たとえば、) の s=selector1-contoso-com 値に格納されます。

重要

Defender ポータルまたは PowerShell Exchange Onlineを使用して、カスタム ドメインを使用して送信メッセージの DKIM 署名に必要な CNAME 値を表示します。 この記事で示す値は、図専用です。 カスタム ドメインまたはサブドメインに必要な値を取得するには、Defender ポータルまたは powerShell プロシージャExchange Online使用します。

Microsoft 365 からメールを送信するカスタム ドメインの DKIM CNAME レコードの基本的な構文は次のとおりです。

Hostname: selector1._domainkey
Points to address or value: selector1-<CustomDomainWithDashes>._domainkey.<InitialDomainPrefix>.<DynamicPartitionCharacter>-v1.dkim.mail.microsoft

Hostname: selector2._domainkey
Points to address or value: selector2-<CustomDomainWithDashes>._domainkey.<InitialDomainPrefix>.<DynamicPartitionCharacter>-v1.dkim.mail.microsoft
  • ホスト名: 値は、すべての Microsoft 365 組織 ( selector1._domainkeyselector2._domainkey) で同じです。

  • <CustomDomainWithDashes>: ピリオドがダッシュで置き換えられたカスタム ドメインまたはサブドメイン。 たとえば、 contoso.comcontoso-comになるか、 marketing.contoso.commarketing-contoso-comになります。

  • <InitialDomainPrefix>: Microsoft 365 への登録に使用した *.onmicrosoft.com のカスタム 部分。 たとえば、 contoso.onmicrosoft.comを使用した場合、値は contoso

  • <DynamicPartitionCharacter>: 両方のセレクター (r や n など) に使用される動的に生成された文字。 新しいカスタム ドメインを追加し、DKIM を有効にすると、値は Microsoft によって自動的に割り当てられます。 値は Microsoft の内部ルーティング ロジックによって決定され、構成できません。

    • この値は、2025 年 5 月に導入された Microsoft 365 の新しいカスタム ドメインの更新された DKIM レコード形式の一部です。 既存のカスタム ドメインと初期ドメインでは、引き続き古い DKIM 形式が使用されます。

      Hostname: selector1._domainkey
      Points to address or value: selector1-contoso-com._domainkey.contoso.onmicrosoft.com
      
      Hostname: selector2._domainkey
      Points to address or value: selector2-contoso-com._domainkey.contoso.onmicrosoft.com
      
    • 同じセレクターに対して、古い形式と新しい形式を共存させることはできません。 割り当てられた <DynamicPartitionCharacter を含むドメインの正しい DKIM CNAME 値を取得するには> contoso.com をドメイン値に置き換え、Exchange Online PowerShell で次のコマンドを実行します。

      Get-DkimSigningConfig -Identity contoso.com | Format-List Name,Enabled,Status,Selector1CNAME,Selector2CNAME
      
  • v1: 両方のセレクターで使用される現在の CNAME 形式のバージョン。

  • dkim.mail.microsoft: 両方のセレクターで同じ親 DNS ゾーン。

次の例は、組織に複数のカスタム ドメインがある場合Microsoft 365 DKIM セレクターで想定される DNS CNAME 値を示しています。 この例を使用して、上記の構文のプレースホルダーを独自のドメイン値にマップします。

たとえば、organizationには Microsoft 365 に次のドメインがあります。

  • 初期ドメイン: cohovineyardandwinery.onmicrosoft.com
  • カスタム ドメイン: cohovineyard.com と cohowinery.com

各カスタム ドメインの DNS に 2 つの CNAME レコードを作成し、合計で 4 つの CNAME レコードを作成する必要があります。

  • cohovineyard.com ドメイン内の CNAME レコード:

    ホスト名: selector1._domainkey
    対処すべき点または値: selector1-cohovineyard-com._domainkey.cohovineyardandwinery.n-v1.dkim.mail.microsoft

    ホスト名: selector2._domainkey
    対処すべき点または値: selector2-cohovineyard-com._domainkey.cohovineyardandwinery.n-v1.dkim.mail.microsoft

  • cohowinery.com ドメイン内の CNAME レコード:

    ホスト名: selector1._domainkey
    対処すべき点または値: selector1-cohowinery-com._domainkey.cohovineyardandwinery.r-v1.dkim.mail.microsoft

    ホスト名: selector2._domainkey
    対処すべき点または値: selector2-cohowinery-com._domainkey.cohovineyardandwinery.r-v1.dkim.mail.microsoft

Microsoft 365 で送信メッセージの DKIM 署名を構成する

Defender ポータルを使用して、カスタム ドメインを使用して送信メッセージの DKIM 署名を有効にする

ヒント

カスタム ドメインまたはサブドメインを使用して DKIM に送信メールを署名できるのは、ドメインが Microsoft 365 に正常に追加された後のみです。 手順については、「 ドメインの追加」を参照してください。

カスタム ドメインが DKIM 署名送信メールを開始するタイミングを決定する主な要因は、DNS での CNAME レコードの検出です。

このセクションの手順を使用するには、[Email認証設定] ページの [https://security.microsoft.com/authentication?viewid=DKIM] タブにカスタム ドメインまたはサブドメインが存在する必要があります。 [ DKIM ] タブのドメインのプロパティには、次の値が含まれている必要があります。

  • Toggle 値は Disabled です
  • Status 値は NoDKIMKeys です

Defender ポータルの [Email認証] ページの [DKIM] タブのスクリーンショット。状態値 NoDKIMKeys とトグル値 [無効] が強調表示されています。

ヒント

ドメインの詳細ポップアップでは、これらの同じ値が次の設定で示されます。

  • [状態] の値は、このドメインに対して保存された DKIM キーがありません
  • DKIM キーの作成 は、ポップアップの下部に存在します。

[状態] 値 [このドメインに保存された DKIM キーなし] と [DKIM キーの作成] ボタンを示すカスタム ドメインのドメインの詳細ポップアップのスクリーンショット。

ドメインがこれらの要件を満たしている場合は、続行します。

  1. https://security.microsoft.com の Defender ポータルで、メール & コラボレーション>ポリシーとルール>脅威ポリシー>メール認証設定 ページに移動します。 または、Email認証設定ページに直接移動するには、https://security.microsoft.com/authenticationを使用します。

  2. [Email認証設定] ページで、[DKIM] タブを選択します。

  3. [ DKIM ] タブのカスタム ドメインまたはサブドメイン エントリの行で、[ トグル ] の値を [ Disabled ] から [有効] にスライドしてみてください。

  4. [クライアント エラー] ダイアログが開きます。 このエラーには、ドメインのドメイン レジストラーで作成した 2 つの CNAME レコードで、他の多くのテキストと共に使用するために必要な値が含まれています。 テキストを選択して Ctrl + キーを押して情報を保存することはできますが、後の手順で同じ情報をはるかに適切な形式で使用できます。

    ダイアログで [OK] を 選択して続行します。

  5. [DKIM] タブに戻ると、ドメインの [状態] の値が CnameMissing になり、[トグル] の値は引き続き Disabled になります

    [名前] の値の横にある [チェック] ボックス以外の行内の任意の場所をクリックするか、[トグル] 値でドメインの詳細ポップアップを開きます。

  6. 開いたドメインの詳細ポップアップで、次の手順を実行します。

    • [最後にチェックされた日付] の値をメモします。
    • [ CNAME の発行 ] セクションで必要な CNAME レコード値をメモするか、[ コピー] を選択します。 これらの値は、次の手順で使用します。

    ドメインの詳細ポップアップは開いたままにします。

    DKIM 署名が無効になっているカスタム ドメインの詳細フライアウトのスクリーンショット。[CNAME の公開] セクションに値が入力されており、[DKIM キーのローテーション] は表示されているもののグレーアウトされています。

  7. 別のブラウザー タブまたはウィンドウで、ドメインのドメイン レジストラーに移動し、前の手順の情報を使用して 2 つの CNAME レコードを作成します。

    さまざまな Microsoft 365 サービスの CNAME レコードを多くのドメイン レジストラーで作成する手順について説明します。 DKIM CNAME レコードを作成するための出発点として、次の手順を使用できます。 詳細については、「 DNS レコードを追加してドメインを接続する」を参照してください。

    Microsoft 365 が作成した新しい CNAME レコードを検出するには、数分 (または場合によってはそれ以上) かかります。

  8. しばらくしてから、手順 6 で開いたままにしたドメインの詳細ポップアップに戻り、[ DKIM 署名を使用してこのドメインのメッセージに署名 する] トグルを選択します。

    数秒後、次のテキストを含む セキュリティ ダイアログが開きます。

    状態の変更を同期するには数分かかる場合があります。

    [OK] を選択してダイアログを閉じると、ドメイン レジストラーで CNAME レコードが検出された場合、ドメインの詳細ポップアップに次の設定が表示されます。

    • [ DKIM 署名を使用してこのドメインのメッセージに署名する ] トグルは Enabled です。
    • 状態 の値は、このドメインに対して DKIM 署名を付与しています です。
    • 回転 DKIM キー を使用できます。
    • 最後にチェックされた日付: 日付と時刻は、手順 6 の元の値よりも新しい日付にする必要があります。

    ドメインに対して DKIM が有効になった後のカスタム ドメインのドメインの詳細ポップアップのスクリーンショット。

Defender ポータルを使用して、*.onmicrosoft.com ドメインを使用して送信メッセージの DKIM 署名をカスタマイズする

Microsoft 365 DKIM は、最初の *.onmicrosoft.com ドメイン内の送信者からの送信メールに自動的に署名します。 ただし、このセクションの手順を使用して、*.onmicrosoft.com ドメインを使用した DKIM 署名に影響を与えることができます。

  • 新しいキーを生成します。 新しいキーは自動的に追加され、Microsoft 365 データセンターで使用されます。
  • *.onmicrosoft.com ドメインのプロパティが、Email authentication settings ページの https://security.microsoft.com/authentication?viewid=DKIM タブにあるドメインの詳細ポップアウト、または PowerShell で正しく表示されるようにします。 この結果により、ドメインの DKIM 構成に対する今後の操作 ( 手動キーローテーションなど) が可能になります。

このセクションの手順を使用するには、 にある 電子メール認証設定 ページの https://security.microsoft.com/authentication?viewid=DKIM タブに *.onmicrosoft.com が表示されている必要があります。 [ DKIM ] タブのドメインのプロパティには、次の値が含まれている必要があります。

  • Toggle 値は Disabled です
  • Status 値は NoDKIMKeys です

ドメインがこれらの要件を満たしている場合は、続行します。

  1. https://security.microsoft.com の Defender ポータルで、メール & コラボレーション>ポリシーとルール>脅威ポリシー>メール認証設定 ページに移動します。 または、Email認証設定ページに直接移動するには、https://security.microsoft.com/authenticationを使用します。

  2. [Email認証設定] ページで、[DKIM] タブを選択します。

  3. [DKIM] タブの *.onmicrosoft.com ドメイン エントリの行で、[トグル] の値[無効] を [有効] にスライドします。

    しばらくすると、*.onmicrosoft.com ドメイン ドメインの [状態] の値が [有効] に変わりますが、[ トグル ] の値は引き続き Disabled です

    更新 を選択すると、Toggle の値が 有効 に更新されます。

Exchange Online PowerShell を使用して送信メッセージの DKIM 署名を構成する

PowerShell を使用してカスタム ドメインを使用して送信メッセージの DKIM 署名を有効にする場合、または初期 *.onmicrosoft.com ドメインの DKIM 署名をカスタマイズする場合は、powerShell Exchange Onlineに接続して次のコマンドを実行します。

ヒント

カスタム ドメインを使用して DKIM 署名を構成する前に、ドメインを Microsoft 365 に追加する必要があります。 手順については、「 ドメインの追加」を参照してください。 DKIM 構成でカスタム ドメインを使用できるかどうかを確認するには、次のコマンドを実行します: Get-AcceptedDomain

*.onmicrosoft.com ドメインは、既定で *.onmicrosoft.com の送信者からの送信メールに既に署名しています (「*.onmicrosoft.com ドメインを使用して送信メッセージの DKIM 署名をカスタマイズするには、Defender ポータルを使用する」を参照してください)。 通常、Defender ポータルまたは PowerShell で *.onmicrosoft.com ドメインの DKIM 署名を手動で構成しない限り、 Get-DkimSigningConfig の出力に *.onmicrosoft.com は表示されません。

  1. 次のコマンドを実行して、organization内のすべてのドメインの可用性と DKIM 状態を確認します。

    Get-DkimSigningConfig | Format-List Name,Enabled,Status,Selector1CNAME,Selector2CNAME
    
  2. DKIM 署名を構成するドメインの場合、手順 1 のコマンドの出力によって、次に何を行う必要があるかが決まります。

    • ドメインは、次の値で一覧表示されます。

      • 有効: False
      • 状態: NoDKIMKeys または CnameMissing

      手順 3 に進み、セレクター値をコピーします。

    または

    • ドメインは一覧に表示されません。 次の手順を実行します。

      1. <Domain> をドメイン値に置き換え、次のコマンドを実行します。

        New-DkimSigningConfig -DomainName <Domain> -Enabled $false [-BodyCanonicalization <Relaxed | Simple>] [-HeaderCanonicalization <Relaxed | Simple>] [-KeySize <1024 | 2048>]
        
        • BodyCanonicalization パラメーターは、メッセージ本文の変更に対する感度レベルを指定します。
          • Relaxed: メッセージ本文の末尾にある空白文字の変更と空行の変更は許容されます。 この値が既定値です。
          • Simple: メッセージ本文の末尾にある空行の変更のみが許容されます。
        • HeaderCanonicalization パラメーターは、メッセージ ヘッダーの変更に対する感度レベルを指定します。
          • Relaxed: メッセージ ヘッダーに対する一般的な変更は許容されます。 たとえば、ヘッダー フィールド行の再ラップ、不要な空白または空行の変更、ヘッダー フィールドの場合の変更などです。 この値が既定値です。
          • Simple: ヘッダー フィールドに対する変更は許容されません。
        • KeySize パラメーターは、DKIM レコード内の公開キーのビット サイズを指定します。
          • 1024 (既定値)
          • 2048

        例:

        New-DkimSigningConfig -DomainName contoso.com -Enabled $false
        
      2. 手順 1 のコマンドをもう一度実行して、ドメインが次のプロパティ値で一覧表示されていることを確認します。

        • 有効: False
        • 状態: CnameMissing
      3. 手順 3 に進み、セレクター値をコピーします。

  3. 手順 1 のコマンドの出力から、ドメインの Selector1CNAME 値と Selector2CNAME 値をコピーします。

    ドメインレジストラーで作成する必要がある CNAME レコードは、次のようになります。

    ホスト名: selector1._domainkey
    対処すべき点または値: <Selector1CNAME value>

    ホスト名: selector2._domainkey
    対処すべき点または値: <Selector2CNAME value>

    例:

    ホスト名: selector1._domainkey
    対処すべき点または値: selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft

    ホスト名: selector2._domainkey
    対処すべき点または値: selector2-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft

  4. 次のいずれかの手順を実行します。

    • カスタム ドメイン: ドメインのドメイン レジストラーで、前の手順の情報を使用して 2 つの CNAME レコードを作成します。

      さまざまな Microsoft 365 サービスの CNAME レコードを多くのドメイン レジストラーで作成する手順について説明します。 DKIM CNAME レコードを作成するための出発点として、次の手順を使用できます。 詳細については、「 DNS レコードを追加してドメインを接続する」を参照してください。

      Microsoft 365 が作成した新しい CNAME レコードを検出するには、数分 (または場合によってはそれ以上) かかります。

    • *.onmicrosoft.com ドメイン: 次の手順に進みます。

  5. しばらくしてから PowerShell Exchange Onlineに戻り、<Domain> を構成したドメインに置き換えて、次のコマンドを実行します。

    Set-DkimSigningConfig -Identity \<Domain\> -Enabled $true [-BodyCanonicalization <Relaxed | Simple>] [-HeaderCanonicalization <Relaxed | Simple>]
    
    • BodyCanonicalization パラメーターは、メッセージ本文の変更に対する感度レベルを指定します。
      • Relaxed: メッセージ本文の末尾にある空白文字の変更と空行の変更は許容されます。 この値が既定値です。
      • Simple: メッセージ本文の末尾にある空行の変更のみが許容されます。
    • HeaderCanonicalization パラメーターは、メッセージ ヘッダーの変更に対する感度レベルを指定します。
      • Relaxed: メッセージ ヘッダーに対する一般的な変更は許容されます。 たとえば、ヘッダー フィールド行の再ラップ、不要な空白または空行の変更、ヘッダー フィールドの場合の変更などです。 この値が既定値です。
      • Simple: ヘッダー フィールドに対する変更は許容されません。

    例:

    Set-DkimSigningConfig -Identity contoso.com -Enabled $true
    

    または

    Set-DkimSigningConfig -Identity contoso.onmicrosoft.com -Enabled $true
    
    • カスタム ドメインの場合、Microsoft 365 がドメイン レジストラーで CNAME レコードを検出できる場合、コマンドはエラーなしで実行され、ドメインはドメインからの送信メッセージの署名に使用されるようになりました。

      CNAME レコードが検出されない場合は、CNAME レコードで使用する値を含むエラーが発生します。 ドメイン レジストラーの値に入力ミスがないか確認します (ダッシュ、ピリオド、下線で簡単に実行できます)。しばらく待ってから、コマンドをもう一度実行します。

    • 以前にリストされていなかった *.onmicrosoft.com ドメインの場合、コマンドはエラーなしで実行されます。

  6. ドメインが DKIM 署名メッセージに構成されていることを確認するには、手順 1 のコマンドを実行します。

    ドメインには、次のプロパティ値が必要です。

    • 有効: True
    • 状態: Valid

構文とパラメーターの詳細については、次の記事を参照してください。

DKIM キーを回転させる

パスワードを定期的に変更する必要があるのと同じ理由で、DKIM 署名に使用される DKIM キーを定期的に変更する必要があります。 ドメインの DKIM キーを置き換えることは、 DKIM キーローテーションと呼ばれます。

キー ローテーションの詳細など、特定のカスタム ドメインのすべての DKIM 構成プロパティを確認するには、Exchange Online PowerShell で次のコマンドを実行します。

Get-DkimSigningConfig -Identity <CustomDomain> | Format-List
  • KeyCreationTime: DKIM 公開キーと秘密キーのペアが作成された UTC 日付/時刻。
  • RotateOnDate: 前または次の DKIM キーローテーションの日付/時刻。
  • SelectorBeforeRotateOnDate: Microsoft 365 のカスタム ドメインを使用した DKIM 署名には、ドメインに 2 つの CNAME レコードが必要です。 このプロパティは、DKIM が RotateOnDate 日時 (セレクターとも呼ばれます) の前に使用する CNAME レコードを示 します。 値は selector1 または selector2 であり、 SelectorAfterRotateOnDate 値とは異なります。
  • SelectorAfterRotateOnDate: RotateOnDate 日時の後に DKIM が使用する CNAME レコードを表示します。 値は selector1 または selector2 であり、 SelectorBeforeRotateOnDate 値とは異なります。

このセクションの説明に従ってドメインで DKIM キーのローテーションを行う場合、変更はすぐには行われません。 新しい秘密キーがメッセージの署名を開始するまでに 4 日間 (96 時間) かかります ( RotateOnDate の日付/時刻と対応する SelectorAfterRotateOnDate 値)。 それまでは、既存の秘密キー (対応する SelectorBeforeRotateOnDate 値) が使用されます。

DKIM 署名の検証に使用される対応する公開キー (メッセージの署名に使用された秘密キーを推論する) を確認するには、s= ヘッダー フィールド (セレクターなど) にDKIM-Signature値を s=selector1-contoso-comチェックします (セレクターなど)。

ヒント

  • カスタム ドメインが DKIM 署名送信メールを開始するタイミングを決定する主な要因は、DNS での CNAME レコードの検出です。
  • DKIM キーは、Email認証設定ページの [DKIM] タブで次の両方のプロパティ値を持つドメインでのみローテーションできます。
    • トグル: 有効
    • 状態: 有効またはCnameMissing
  • 現在、*.onmicrosoft.com ドメインの DKIM キーの自動ローテーションはありません。

Defender ポータルを使用してカスタム ドメインの DKIM キーをローテーションする

カスタム ドメインの DKIM キーをローテーションするには、次の手順に従います。 ドメインには、[電子メール認証の設定] ページの [DKIM] タブで [トグル] を [有効] に設定し、[状態] を [有効] または [CnameMissing] に設定する必要があります。

  1. https://security.microsoft.com の Defender ポータルで、メール & コラボレーション>ポリシーとルール>脅威ポリシー>メール認証設定 ページに移動します。 または、Email認証設定ページに直接移動するには、https://security.microsoft.com/authenticationを使用します。

  2. [Email認証設定] ページで、[DKIM] タブを選択します。

  3. [DKIM] タブで、[名前] の値の横にある [チェック] ボックス以外の行の任意の場所をクリックするか、[トグル] の値をクリックして、構成するドメインを選択します。

    Defender ポータルの [Email 認証] ページの [DKIM] タブのスクリーンショット。

  4. 開いたドメインの詳細ポップアップで、ポップアップの下部にある [回転 DKIM キー ] を選択します。

    ポップアップの下部にある [DKIM キーのローテーション] ボタンが使用できるカスタム ドメインのドメインの詳細ポップアップのスクリーンショット。

  5. 詳細ポップアップの設定は、次の値に変更されます。

    • 状態: このドメインのキーをローテーションし、DKIM 署名に署名します。
    • CNAMES を公開: 両方のセレクターで、ポイント先のアドレスまたは値 の値が空欄です。
    • DKIM キーのローテーション はグレー表示されます。

    キーのローテーションが進行中のカスタム ドメインのドメインの詳細ポップアップのスクリーンショット。

  6. 4 日後 (96 時間) に、新しい DKIM キーによってカスタム ドメインの送信メッセージが署名されます。 それまでは、現在の DKIM キーが使用されます。

    Status の値が このドメインの DKIM 署名に署名しています に変わると、新しい DKIM キーがメッセージに署名します。

DKIM 署名の検証に使用される対応する公開キー (メッセージの署名に使用される秘密キーを推論する) を確認するには、s= ヘッダー フィールド (セレクターなど、 DKIM-Signature) にs=selector1-contoso-com値をチェックします。

Exchange Online PowerShell を使用してドメインの DKIM キーをローテーションし、ビット深度を変更する

PowerShell を使用してドメインの DKIM キーをローテーションする場合は、Exchange Online PowerShell に接続して次のコマンドを実行します。

  1. 次のコマンドを実行して、organization内のすべてのドメインの可用性と DKIM 状態を確認します。

    Get-DkimSigningConfig | Format-List Name,Enabled,Status,Selector1CNAME,Selector1KeySize,Selector2CNAME,Selector2KeySize,KeyCreationTime,RotateOnDate,SelectorBeforeRotateOnDate,SelectorAfterRotateOnDate
    
  2. DKIM キーをローテーションするドメインの場合は、次の構文を使用します。

    Rotate-DkimSigningConfig -Identity <CustomDomain> [-KeySize <1024 | 2048>]
    

    新しい DKIM キーのビット深度を変更しない場合は、 KeySize パラメーターを使用しないでください。

    次の使用例は、contoso.com ドメインの DKIM キーをローテーションし、2048 ビット キーに変更します。

    Rotate-DkimSigningConfig -Identity contoso.com -KeySize 2048
    

    次の使用例は、キー ビット深度を変更せずに、contoso.com ドメインの DKIM キーをローテーションします。

    Rotate-DkimSigningConfig -Identity contoso.com
    
  3. 手順 1 のコマンドをもう一度実行して、次のプロパティ値を確認します。

    • KeyCreationTime
    • RotateOnDate
    • SelectorBeforeRotateOnDate
    • SelectorAfterRotateOnDate

    宛先メール システムは、 SelectorBeforeRotateOnDate プロパティによって識別される CNAME レコードの公開キーを使用して、メッセージ内の DKIM 署名を確認します (DKIM がメッセージに署名するために使用する秘密キーを推論します)。

    RotateOnDate日時の後、DKIM は新しい秘密キーを使用してメッセージに署名し、宛先電子メール システムは、SelectorAfterRotateOnDate プロパティによって識別される CNAME レコード内の対応する公開キーを使用して、メッセージ内の DKIM 署名を確認します。

    DKIM 署名の検証に使用される対応する公開キー (メッセージの署名に使用された秘密キーを推論する) を確認するには、s= ヘッダー フィールド (セレクターなど) にDKIM-Signature値をチェックします (たとえば、s=selector1-contoso-com)。

    重要

    KeySize パラメーターを使用して DKIM キーのビット深度を 1024 から 2048 に変更した場合、更新は最初のキーローテーション中に次のアクティブなセレクターにのみ適用されます。 キーをもう一度回転すると、以前に非アクティブだったセレクターがアクティブになり、ビット深度も 2048 に更新されます。

    ドメインで DKIM キーをローテーションする場合、変更はすぐには行われません。 4 日間 (96 時間) かかります。 キーのローテーションが進行中の間は、別のキーローテーションを実行することはできません。

構文とパラメーターの詳細については、次の記事を参照してください。

カスタム ドメインを使用して送信メッセージの DKIM 署名を無効にする

カスタム ドメインの DKIM 署名を無効にすると、Microsoft 365はそのドメインからの送信メッセージに DKIM 署名を追加できなくなります。 DKIM の署名は、Defender ポータルまたは powerShell Exchange Onlineで無効にすることができます。

Defender ポータルを使用して、カスタム ドメインを使用して送信メッセージの DKIM 署名を無効にする

Defender ポータルでカスタム ドメインの DKIM 署名を無効にするには、次の手順に従います。

  1. https://security.microsoft.com の Defender ポータルで、メール & コラボレーション>ポリシーとルール>脅威ポリシー>メール認証設定 ページに移動します。 または、Email認証設定ページに直接移動するには、https://security.microsoft.com/authenticationを使用します。

  2. [Email認証設定] ページで、[DKIM] タブを選択します。

  3. [ DKIM ] タブで、次のいずれかの手順を実行します。

    • ドメインのエントリで、[ トグル ] の値を [ Enabled ] から [ Disabled] にスライドします。
    • [名前] の値の横にある [チェック] ボックスまたは [トグル] の値以外の行をクリックして、構成するドメインを選択します。 開いたドメインの詳細ポップアップで、[ DKIM 署名を使用してこのドメインのメッセージに署名 する] トグルを [ Enabled ] から [ Disabled] にスライドします。

Exchange Online PowerShell を使用して、カスタム ドメインを使用して送信メッセージの DKIM 署名を無効にする

PowerShell を使用してカスタム ドメインを使用して送信メッセージの DKIM 署名を無効にする場合は、Exchange Online PowerShell に接続して次のコマンドを実行します。

  1. 次のコマンドを実行して、organization内のすべてのドメインの可用性と DKIM 状態を確認します。

    Get-DkimSigningConfig | Format-List Name,Enabled,Status
    

    DKIM 署名を無効にできるカスタム ドメインには、次のプロパティ値があります。

    • 有効: True
    • 状態: Valid
  2. DKIM 署名を無効にするドメインの場合は、次の構文を使用します。

    Set-DkimSigningConfig -Identity <CustomDomain> -Enabled $false
    

    この例では、カスタム ドメイン contoso.com を使用して DKIM 署名を無効にします。

    Set-DkimSigningConfig -Identity contoso.com -Enabled $false
    

Microsoft 365 からの送信メールの DKIM 署名を確認する

ヒント

このセクションのメソッドを使用して送信メールの DKIM 署名をテストする前に、DKIM 構成の変更が反映されるまで数分待ちます。

次のいずれかの方法を使用して、Microsoft 365 からの送信メールの DKIM 署名を確認します。

  • テスト メッセージを送信し、宛先メール システムのメッセージ ヘッダーから関連するヘッダー フィールドを表示します。

    1. Microsoft 365 DKIM 対応ドメイン内のアカウントから別のメール システムの受信者 (outlook.com や gmail.com など) にメッセージを送信します。

      ヒント

      DKIM テストのために AOL にメールを送信しないでください。 SPF チェックが渡された場合、AOL は DKIM チェックをスキップする可能性があります。

    2. 宛先メールボックスで、メッセージ ヘッダーを表示します。 例:

    3. メッセージ ヘッダーで DKIM-Signature ヘッダー フィールドを見つけます。 ヘッダー フィールドは次の例のようになります。

      DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=contoso.com;
       s=selector1;
       h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
       bh=UErATeHehIIPIXPeUAfZWiKo0w2cSsOhb9XM9ulqTX0=;
      
      • d=: DKIM がメッセージに署名するために使用したドメイン。
      • s=: メッセージの DKIM 署名の暗号化解除と検証に使用されたセレクター (ドメイン内の DNS レコードの公開キー)。
    4. メッセージ ヘッダーの Authentication-Results ヘッダー フィールドを見つけます。 宛先メール システムでは受信メールにスタンプを設定するために若干異なる形式を使用する場合がありますが、ヘッダー フィールドには DKIM=pass または DKIM=OK を含める必要があります。 例:

      Authentication-Results: mx.google.com;
        dkim=pass header.i=@contoso.com header.s=selector1 header.b=NaHRSJOb;
        arc=pass (i=1 spf=pass spfdomain=contoso.com dkim=pass dkdomain=contoso.com dmarc=pass fromdomain=contoso.com);
        spf=pass (google.com: domain of michelle@contoso.com designates 0000:000:0000:0000::000 as permitted sender) smtp.mailfrom=michelle@contoso.com
      

      ヒント

      DKIM 署名は、次のいずれかの条件で省略されます。

      • 送信者と受信者のメール アドレスが同じドメイン内にあります。
      • 送信者と受信者のメール アドレスは、同じorganizationによって制御される異なるドメインにあります。

      どちらの場合も、 DKIM-Signature ヘッダー フィールドはメッセージ ヘッダーに存在せず、 Authentication-Results ヘッダー フィールドは次の例のようになります。

      authentication-results: dkim=none (message not signed)
       header.d=none;dmarc=none action=none header.from=contoso.com;
      
  • Microsoft 365 ヘルプのテストを使用する: この機能にはグローバル管理者*アカウントが必要であり、Microsoft 365 Government Community Cloud (GCC)、GCC High、DoD、または 21Vianet が運営するOffice 365では使用できません。

    重要

    * Microsoft では、最小限のアクセス許可の原則を強くお勧めします。 アカウントにタスクを実行するために必要な最小限のアクセス許可のみを割り当てることは、セキュリティ リスクを軽減し、組織の全体的な保護を強化するのに役立ちます。 グローバル管理者は非常に特権的な役割であり、既存のロールを使用できない場合の緊急時に限定する必要があります。

    Microsoft 365 ヘルプの DKIM 診断 テストのスクリーンショット。

他のメール サービスでのカスタム ドメインからのメールの DKIM 署名

一部のメール サービス プロバイダーまたはサービスとしてのソフトウェア プロバイダーでは、サービスから送信されたメールに対して DKIM 署名を有効にできますが、方法は電子メール サービスに完全に依存します。

ヒント

直接制御しないメール システムまたはサービスにはサブドメインを使用することをお勧めします。そのため、これらのサービスに関する問題はメイン ドメインの評判に影響しません。

たとえば、Microsoft 365 のメール ドメインが contoso.com され、マーケティングメールには Adatum 一括メーリング サービスを使用します。 Adatum がサービスでドメイン内の送信者からのメッセージの DKIM 署名をサポートしている場合、メッセージには次の要素が含まれている可能性があります。

Return-Path: <communication@adatum.com>
 From: <sender@marketing.contoso.com>
 DKIM-Signature: s=s1024; d=marketing.contoso.com
 Subject: This a message from the Adatum infrastructure, but with a DKIM signature authorized by marketing.contoso.com

この例では、次の手順が必要です。

  1. Adatum は、Contoso にサービスからの送信 Contoso メールの DKIM 署名に使用する公開キーを提供します。

  2. Contoso は、MARKETING.CONTOSO.COM サブドメイン (TXT レコードまたは CNAME レコード) のドメイン レジストラーで DNS のパブリック DKIM キーを発行します。

  3. Adatum が marketing.contoso.com ドメインの送信者からメールを送信すると、メッセージは、最初の手順で Contoso に渡した公開キーに対応する秘密キーを使用して DKIM 署名されます。

  4. 宛先メール システムが受信メッセージで DKIM をチェックする場合、メッセージは DKIM 署名済みであるため、DKIM を渡します。

  5. 宛先メール システムが受信メッセージで DMARC をチェックする場合、DKIM 署名のドメイン (DKIM-Signature ヘッダー フィールドの d= 値) は、電子メール クライアントに表示される From アドレスのドメインと一致するため、メッセージは DMARC を渡すこともできます。

    : sender@marketing.contoso.com から
    d=: marketing.contoso.com

DKIM DNS 構成のトラブルシューティング

DKIM の動作を妨げる一般的な間違いには、 間違った CNAME ホスト名形式selector2 CNAME レコードの欠落CNAME レコードの代わりに TXT レコードTTL セットが低すぎるCNAME ターゲット値のドメインの不一致および後続のドットの問題が含まれます。 DKIM DNS の一般的なミスもひとめで確認できます

間違った CNAME ホスト名の形式

  • 症状: DKIM トグルが Defender ポータルで有効になっていません。 状態は CnameMissing のままです。

  • 問題が発生しました: CNAME ホスト名は、完全なドメインが追加された状態 (たとえば、 selector1._domainkey.contoso.com.contoso.com) または _domainkey プレフィックスなしで入力されました。

  • 修正: ホスト名 ("名前" または "レコード名" とも呼ばれます) にはサブドメイン部分のみを含める必要があります。 ほとんどの DNS プロバイダーは、ドメイン ゾーンを自動的に追加します。

    正解: selector1._domainkey

    正しくない (ホスト名にドメインが含まれており、その結果、二重ドメインになります): selector1._domainkey.contoso.com (DNS ゾーンが既に contoso.com されている場合)

ヒント

一部の DNS プロバイダー (GoDaddy など) では、入力した値にドメイン ゾーンが自動的に追加されます。 ドメイン ゾーンが contoso.com され、 selector1._domainkey.contoso.comと入力すると、実際のレコードが selector1._domainkey.contoso.com.contoso.comになります。 [ホスト名] フィールドに selector1._domainkey のみを入力します。

selector2 CNAME レコードがありません

  • 症状: DKIM 署名は正常に有効になりますが、キーのローテーションは後で失敗します。 または、Defender ポータルに、不完全な構成に関する警告が表示されます。

  • 問題が発生しました: selector1._domainkey のみが作成されました。 selector2._domainkey CNAME レコードがありません。

  • 重要な理由: Microsoft 365 には 両方の セレクター CNAME レコードが必要です。 selector2 は、キーの回転中に使用されます。 これを行わないと、DKIM キーを回転できません。

  • 修正: 両方の CNAME レコードを作成します。

    selector1._domainkey     selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft
    selector2._domainkey     selector2-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft
    

重要

常に 両方の CNAME レコードを作成します。ただし、一度にアクティブなセレクターは 1 つだけです。 非アクティブなセレクターは、シームレスなキーの回転に必要です。

CNAME レコードではなく TXT レコード

  • 症状: DNS レコードを追加しても、DKIM 状態は CnameMissing のままです。 selector1._domainkey.contoso.comの DNS 参照は TXT レコードを返します。

  • 問題: Microsoft の DKIM インフラストラクチャを指す CNAME レコードではなく、DKIM 公開キーを含む TXT レコードが直接作成されました。

  • 重要な理由: Microsoft 365 は DKIM キーを管理し、キーのローテーションを自動的に処理します。 CNAME レコードは、キー管理を Microsoft に委任します。 TXT レコードでは、Microsoft 365 ではサポートされていないキーとローテーションを手動で管理する必要があります。

  • 修正: TXT レコードを削除し、代わりに CNAME レコードを作成します。

    レコードの種類 ホスト名 ポイント先
    CNAME (正しい) selector1._domainkey selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft
    TXT (正しくない、サポートされていません) selector1._domainkey v=DKIM1; k=rsa; p=MIGfMA0GCS...

注:

Microsoft 以外の他のメール システムでは、DKIM に TXT レコードが使用される場合があります。 Microsoft 365 の場合は、常に Microsoft DKIM インフラストラクチャを指す CNAME レコードを使用 します。

TTL が低すぎる

  • 症状: dkim=temperror または dkim=fail (キー参照タイムアウト) を使用して、受信側で DKIM 検証が断続的に失敗します。

  • 問題: DKIM CNAME レコードの TTL (Time to Live) が低すぎる (60 秒や 300 秒など) 設定されすぎると、タイムアウトする可能性のある DNS 参照が頻繁に発生する可能性があります。

  • 推奨 TTL: 最小 3600 秒 (1 時間)。

  • 修正: 両方の DKIM CNAME レコードの TTL を少なくとも 3600 に更新します。

    selector1._domainkey  3600  CNAME  selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft
    selector2._domainkey  3600  CNAME  selector2-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft
    

CNAME ターゲット値のドメインの不一致

  • 症状: DKIM の状態は CnameMissing または DKIM 署名が失敗することを示します。 Get-DkimSigningConfig出力には、DNS の値とは異なる値が表示されます。

  • 問題が発生しました: CNAME ターゲット値が Microsoft 365 によって生成されたものと一致しません。 一般的なエラーには、正しくないドメイン置換 (ドットとダッシュ)、間違った初期ドメイン プレフィックス、または動的パーティション文字がありません。

  • CNAME ターゲットの主な規則:

    • ドメイン内のドット (.) は ダッシュ (-) に置き換えられます。
    • 初期ドメイン プレフィックスは、*.onmicrosoft.com プレフィックス ( .onmicrosoft.comなし) です。
    • 動的文字は Microsoft によって割り当てられます。
  • 修正: 常に Defender ポータルまたは PowerShell から正確な CNAME 値を使用します。 手動で構築しないでください。

    Get-DkimSigningConfig -Identity contoso.com | Format-List Selector1CNAME, Selector2CNAME
    

    : 初期ドメイン sub.contoso.comを使用するドメイン contoso.onmicrosoft.comの場合:

    コンポーネント 正しい値 一般的な間違い
    ダッシュを含むドメイン sub-contoso-com sub.contoso.com(ドットは維持)
    初期ドメイン プレフィックス contoso contoso.onmicrosoft.com (サフィックスを含む)
    完全な CNAME ターゲット selector1-sub-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft selector1-sub.contoso.com._domainkey.contoso.onmicrosoft.com

CNAME のターゲットに末尾のドットがない、または余分にある

  • 現象: DNS プロバイダーはレコードが作成済みとして表示されますが、Microsoft 365 では検出できません。
  • 問題が発生しました: 一部の DNS プロバイダーでは、完全修飾ドメイン名 (FQDN) を示すために、CNAME ターゲットの末尾に末尾のドット (.) が必要です。 他の場合は自動的に追加され、手動で追加するとドットが二重になります。
  • 修正: DNS プロバイダーの要件を確認します。 「DNS プロバイダー固有の CNAME の例」を参照してください。

一般的な DKIM DNS の間違いをひとめで確認する

間違い 症状 修正
ホスト名には完全なドメインが含まれます 状態: CnameMissing selector1._domainkeyのみを入力します (ドメイン サフィックスなし)
selector2 が見つからない キーのローテーションが失敗する 両方の CNAME レコードを作成する
CNAME ではなく TXT レコード 状態: CnameMissing TXT を削除し、CNAME を作成する
TTL が低すぎます 間欠的 dkim=temperror TTL を 3600 秒以上に設定する
ターゲットのドメイン形式が正しくありません 状態: CnameMissing Get-DkimSigningConfig の正確な値を使用する
末尾のドットの不具合 レコードは存在するが検出されない DNS プロバイダー固有の書式設定に従う

DNS 伝達を確認する

CNAME レコードを作成した後、 nslookup または dig を使用して、両方の DKIM セレクターがパブリック DNS で正しく解決されることを確認します。

Windows (nslookup):

nslookup -type=CNAME selector1._domainkey.contoso.com
nslookup -type=CNAME selector2._domainkey.contoso.com

予想される出力 (成功):

selector1._domainkey.contoso.com  canonical name = selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft

macOS または Linux では、digの代わりに nslookup を使用して、DKIM セレクター CNAME ターゲットを確認します。

macOS/Linux (dig):

dig CNAME selector1._domainkey.contoso.com +short
dig CNAME selector2._domainkey.contoso.com +short

注:

DNS プロバイダーと TTL の設定によっては、DNS 伝達に数分から 48 時間かかることがあります。 レコードがすぐに解決されない場合は、少し待ってから再度お試しください。

検証後も DKIM が動作しない

すべての検証手順を完了しても DKIM がまだ機能していない場合は、次の表を使用して問題を特定します。

問題 考えられる原因 解決策
48 時間経過後も、状態は CnameMissing のままです DNS レコードが正しくないか、間違ったゾーンにあります。 Get-DkimSigningConfig出力を使用して値をダブルチェックします。 レコードがドメインの正しい DNS ゾーンに存在していることを確認します。
DKIM はパスしますが、DMARC はまだ失敗します DKIM ドメインアラインメントの問題: DKIM 署名の d= ドメインが From アドレス ドメインと一致しません。 DKIM が From アドレス (サブドメインを含む) で使用される正確なドメインに対して構成されていることを確認します。
メッセージ転送後に DKIM が失敗する メッセージ本文またはヘッダーが中間によって変更されました。 中継局を 信頼できる ARC シーラーとして構成します。
DKIM トグルはすぐに無効に戻ります CNAME レコードは検出されますが、キーを生成できません (まれ)。 Microsoft サポートに、Get-DkimSigningConfig -Identity contoso.com の出力結果を添えてお問い合わせください。
DKIM は 1 つのドメインに対して機能しますが、別のドメインでは機能しません 2 番目のドメインには独自の DNS ゾーンがあり、独自の CNAME レコードが必要です。 電子メールを送信する各ドメインまたはサブドメインには、独自の DKIM CNAME レコードのペアが必要です。

DNS プロバイダー固有の CNAME の例

次の例では、一般的な DNS プロバイダーで DKIM CNAME レコードを作成する方法を示します。 すべての例では、カスタム ドメインが contoso.com され、初期ドメインが contoso.onmicrosoft.com されます。

重要

次の例の CNAME ターゲット値は、 例のみです。 実際の値には、Microsoft によって割り当てられた動的パーティション文字が含まれます。 常に次の値から正確な値を取得します。

  • Defender ポータルの DKIM ページ>ドメインの詳細>CNAME の発行 セクション。
  • Powershell: Get-DkimSigningConfig -Identity contoso.com | Format-List Selector1CNAME, Selector2CNAME

GoDaddy CNAME の例

GoDaddy で DKIM CNAME レコードを作成するには、次の手順に従います。

  1. GoDaddy DNS Management にサインインします。
  2. ドメイン (contoso.com) を選択します。
  3. [ Add Record ] を選択します。
フィールド レコード 1 レコード 2
Type CNAME CNAME
名前 selector1._domainkey selector2._domainkey
Value selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft selector2-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft
TTL 1 時間 1 時間

注:

GoDaddy は、ドメイン ゾーンを [名前 ] フィールドに自動的に追加します。 名前に .contoso.com を含めないでください。 selector1._domainkeyのみを入力します。

Cloudflare CNAME の例

Cloudflare で DKIM CNAME レコードを作成するには、次の手順に従います。

注意

DKIM CNAME レコードの Cloudflare プロキシ (オレンジ色のクラウド) を無効にします。 DKIM CNAME レコードは、Microsoft DKIM インフラストラクチャに直接解決する必要があります。 プロキシが有効になっている場合、DNS 参照は CNAME ターゲットではなく Cloudflare の IP アドレスを返し、DKIM 検証は失敗します。 プロキシの状態を DNS のみに 設定します (灰色のクラウド アイコン)。

  1. Cloudflare ダッシュボードにサインインします。
  2. ドメイン (contoso.com) >DNS>Records を選択します
  3. [ レコードの追加] を選択します
フィールド レコード 1 レコード 2
Type CNAME CNAME
名前 selector1._domainkey selector2._domainkey
Target selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft selector2-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft
プロキシの状態 DNS のみ (灰色のクラウド、プロキシオフ) DNS のみ (灰色のクラウド、プロキシオフ)
TTL 自動 (または 1 時間) 自動 (または 1 時間)

注意

DKIM CNAME レコードの Cloudflare プロキシ (オレンジ色のクラウド) を無効にします。 DKIM CNAME レコードは、Microsoft DKIM インフラストラクチャに直接解決する必要があります。 プロキシが有効になっている場合、DNS 参照は CNAME ターゲットではなく Cloudflare の IP アドレスを返し、DKIM 検証は失敗します。 プロキシの状態を DNS のみに 設定します (灰色のクラウド アイコン)。

Amazon Route 53 CNAME の例

Amazon Route 53 で DKIM CNAME レコードを作成するには、次の手順に従います。

注:

ルート 53 では、完全修飾ドメイン名を示すために、CNAME ターゲット値の末尾に末尾のドット (.) が必要です。 末尾のドットを省略すると、Route 53 によってホストゾーン名がターゲットに追加され、正しくない値が作成されます。 次の表の値の例には、必要な末尾のドットが含まれています。

  1. AWS Management Console にサインインします。
  2. [Hosted zones]\(ホストゾーン\) に移動>[contoso.com] を選択します。
  3. [ レコードの作成] を選択します
フィールド レコード 1 レコード 2
レコード名 selector1._domainkey selector2._domainkey
レコードの種類 CNAME CNAME
Value selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft. selector2-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft.
TTL 3600 3600
ルーティング ポリシー 簡単なルーティング 簡単なルーティング

注:

ルート 53 では、完全修飾ドメイン名を示すために、CNAME ターゲット値の末尾に末尾のドット (.) が必要です。 末尾のドットを省略すると、Route 53 によってホストゾーン名がターゲットに追加され、正しくない値が作成されます。

Azure DNS CNAME の例

Azure DNSに DKIM CNAME レコードを作成するには、次の手順に従います。

  1. Azure portal にサインインし
  2. [DNS ゾーン] に移動>[contoso.com] を選択します。
  3. + レコードセット を選択します。
フィールド レコード 1 レコード 2
名前 selector1._domainkey selector2._domainkey
Type CNAME CNAME
Alias selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft selector2-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft
TTL 1 時間 1 時間
TTL ユニット 時間 時間

注:

Azure DNS では、CNAME ターゲットに末尾のドットは必要ありません。 ポータルでは、FQDN の書式設定が自動的に処理されます。 Azure portalに末尾のドットを追加しないでください。

CLI を使用した Azure DNS

Azure ポータルの代わりに、Azure CLIを使用して、Azure DNSでの DKIM セレクター CNAME レコードの作成を自動化できます。 次のコマンドは、両方のセレクター CNAME レコードを作成し、カスタム ドメインの TTL を 3600 秒に設定します。

# Create selector1 CNAME
az network dns record-set cname set-record \
  --resource-group MyDNSResourceGroup \
  --zone-name contoso.com \
  --record-set-name "selector1._domainkey" \
  --cname "selector1-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft"

# Create selector2 CNAME
az network dns record-set cname set-record \
  --resource-group MyDNSResourceGroup \
  --zone-name contoso.com \
  --record-set-name "selector2._domainkey" \
  --cname "selector2-contoso-com._domainkey.contoso.n-v1.dkim.mail.microsoft"

# Set TTL to 3600 seconds
az network dns record-set cname update \
  --resource-group MyDNSResourceGroup \
  --zone-name contoso.com \
  --name "selector1._domainkey" \
  --set ttl=3600

az network dns record-set cname update \
  --resource-group MyDNSResourceGroup \
  --zone-name contoso.com \
  --name "selector2._domainkey" \
  --set ttl=3600

DNS プロバイダー要件の概要

プロバイダー 末尾のドットが必要ですか? ドメインを自動追加しますか? プロキシ/CDN ノート
Go Daddy 不要 はい(ゾーンを自動追加) 該当なし
Cloudflare 不要 はい(ゾーンを自動追加) プロキシを無効にする必要があります (DNS のみ/灰色のクラウド)
ルート 53 はい (必須) 不要 該当なし
AZURE DNS いいえ (ポータルで処理されます) はい(ゾーンを自動追加) 該当なし
Namecheap 不要 はい(ゾーンを自動追加) 該当なし
Google ドメイン/クラウド DNS 不要 はい(ゾーンを自動追加) 該当なし

次の手順

「SPF、DKIM、DMARC が連携してメール メッセージの送信者を認証する方法」で説明されているように、DKIM だけでは Microsoft 365 ドメインのなりすましを防ぐには不十分です。 また、可能な限り保護を最大限に高めるために SPF と DMARC を構成する必要もあります。 手順については、以下を参照してください。

Microsoft 365 に届くメールの場合、organizationへの配信前に転送中のメッセージを変更するサービスを使用する場合は、信頼できる ARC シーラーを構成する必要がある場合もあります。 詳細については、「 信頼できる ARC シーラーを構成する」を参照してください。

電子メール認証エラーを診断して修正するには、「 Microsoft 365 での電子メール認証のトラブルシューティング」を参照してください。

ヒント

Exchange 2016 と Exchange 2019 は、それらを流れるメッセージを変更することが知られており、DKIM に影響を与える可能性があります。