A DKIM キーなしの診断は通常、検証者が署名に必要な検証キーを見つけられなかったことを意味します。有用な出発点はメッセージの実際の内容です セレクタ そして署名ドメイン。一般的なセレクターを推測したり、表示されている From ドメインをクエリしたりすると、間違ったDNS質問に対する完全に正確な答えが得られる可能性があります。
元の受信メッセージとその信頼できる認証結果を保存します。キーは納品後に変更されている可能性があるため、観察時間を記録してください。次に、結果で指定された正確な署名を調査します。メッセージには、異なる検索名と結果を持つ複数の署名が含まれる場合があります。
正確なDNS質問を導き出す
から s と d を読み取ります DKIM-Signature。 s=campaign7およびd=mailer.example,ルックアップはcampaign7._domainkey.mailer.exampleです。セレクターはユニバーサルプロバイダー名ではないため、署名ドメインは表示される From ドメインと同じである必要はありません。 RFC 6376 §3.1, RFC 6376 §3.5 そして RFC 6376 §3.6.2.1 これらの要素を定義します。
サポートされている構成で予期される名前とレコード タイプを照会します。下 RFC 1034 §3.6.2、サービスが CNAME、それを検証データまで追跡し、中間ターゲットを捕捉します。サフィックスが 2 回追加されているなど、DNS エディターの間違いをチェックします。 記録 間違ったゾーンで公開されているか、別のテナントからコピーされたセレクターです。
不在と不在を区別する
対応するキーが確立されない否定応答は、タイムアウトするクエリとは異なります。 RFC 6376 §6.1.2 キーが存在しない場合は PERMFAIL が必要で、キー クエリが応答しない場合は TEMPFAIL が許可されます。これらは検証者の処理結果です。診断製品に表示される正確なラベルは異なる場合があります。
赤いインジケーターだけでなく、 DNS応答コードと応答をキャプチャします。証拠が入手可能な場合は、信頼できる回答を失敗した受信者に関連する再帰的ビューと比較します。後でラップトップからの検索が成功しても、元の評価時にキーに到達できたことは証明されません。
3 分岐の診断ツリーを使用する
まず、メッセージにDKIM-Signatureが含まれていない場合は、セレクターの検索ではなく署名構成を調査します。取得するメッセージ固有の s と d のペアはありません。次に、署名が存在してもそのキーが存在しない場合は、公開、移行、および廃止の履歴を検査します。 3 番目に、キーは利用可能だが、 ボディハッシュ または署名が失敗した場合は、コンテンツに移動し、キー照合または暗号化チェックを行います。
例示的なケース: メッセージにはセレクター old7 という名前が付けられていますが、 DNSには new8 のみが含まれています。 new8 を正しく公開しても、old7 の署名を検証できません。 old7 が意図的に廃止された場合、遅延メールまたはアーカイブされたメールでエラーが発生することが予想されます。 old7 が誤って削除され、そのキーがまだ信頼できる場合は、正しい検証データの復元が適切に承認された修復となる可能性があります。これらは診断シナリオであり、実行されたテナント テストではありません。
取得後にキーの有効性を確認する
TXT答えを見つけても検証は完了しません。 RFC 6376 §3.6.1 そして RFC 6376 §6.1.2 キーの構文と検証を定義します。不正な形式のキー、失効を示す空の p 値、または互換性のないキー素材は、使用可能な検証キーではありません。下 RFC 4592 §3.3.3、ワイルドカード TXTレコード DKIMとは無関係な回答が生成されることもあります。使用できないすべての回答を欠落セレクターとして再ラベル付けしないでください。
プロバイダーの正確な現在のレコード値、または既知の承認された構成バックアップを使用します。ルックアップを満たすためにランダムな公開キーを生成しないでください。署名を作成した秘密キーと一致しません。他の送信者や遅延メッセージを確認せずに、共有検索でレコードを置換することは避けてください。
新しい証拠で修正を検証する
正規の修復後、 DNSを検査し、影響を受けるルートを介して新しい制御メールを送信します。受信した結果、署名のアイデンティティ、および アライメント 評価。元のサンプルが検証された場合は、その履歴の受信結果を書き換えるのではなく、後の再チェックとしてそれを記録します。
不足している名前、原因、復元された依存関係、および予防策を指定してインシデントを閉じます。セレクター インベントリと廃棄チェックリストは、チェッカーが赤を報告するたびにレコードを繰り返し追加するよりも効果的に再発を減らします。
限定された結論を維持する
old7 と new8 の場合、現在のセレクターをインシデント レコードにコピーするのではなく、古い署名のルックアップを保存します。 old7 キーの不在、タイムアウト、および empty-p の取り消しは、別の観察結果です。後で成功した再チェックでは、後の時間を維持する必要があります。教育シナリオに対して修復や署名の検証は実行されませんでした。