DKIMは、電子メールの安全性や正当性を判定するドメイン認証方法の1つで、電子署名と公開鍵を利用して認証を行います。
今回は、DKIMによる送信認証の仕組みやSPF・DMARCとの違い、DKIMを活用するメリットを詳しく解説します。DKIMレコードの書き方や設定方法についても紹介するので、ぜひ最後までチェックしてください。
Cloud Mail SECURITYSUITEのサービス資料を受け取る
DKIMとは?
DKIM(DomainKeys Identified Mail)とは、電子メールの送信元が正当なドメインであることを証明するための認証システムです。送信元がメールのヘッダー部分に電子署名を記述し、受信側が公開鍵で署名を検証する仕組みによって、メールの正当性を判定します。
DKIM認証では、送信されたメールが第三者によって書き換え・改ざんされていないかをチェックできます。近年は電子メールをきっかけとしたフィッシング詐欺やマルウェア感染が増加しており、DKIMをはじめとしたシステムによる送信認証が重要視されています。
DKIMの仕組み
DKIMでは、送信サーバがメールヘッダーや本文の情報をハッシュ化し、秘密鍵による電子署名を付与します。この署名はメールヘッダーに埋め込まれて受信者に送信され、受信サーバは送信元のDNSサーバに問い合わせを行い、署名を照合するための公開鍵を取得します。
メールヘッダーの電子署名と公開鍵で署名を検証し、一致すれば、そのメールが改ざんされずに正規の送信者から送られたことを確認できます。
第三者によるなりすましメールや送信途中で内容を改ざんされたメールは、DKIM認証時に不一致となり、認証に失敗します。このシステムによって、不正メールのフィルタリングが行われています。
【DKIM認証の流れ】
- 1.送信元の送信サーバがメールヘッダーに電子署名を付与する
- 2.受信元の受信サーバが送信元のDNSサーバに問い合わせを行う
- 3.送信元のDNSサーバが電子署名を照合するための公開鍵を提供する
- 4.公開鍵を利用して受信したメールの電子署名の正当性を判定する
SPFとの違い
SPF認証は送信元のIPアドレスが正当かどうかを検証する仕組みで、送信元が登録しているDNS情報を元に判定を行います。
SPF認証では、メールに記載された送信元のメールアドレスと実際にメールを送信したメールアドレスが一致するかどうか、送信元のメールアドレスが偽装されていないかどうかを確認するのに有効です。
SPF認証はメールの送信元の正当性を判定するのに対し、DKIM認証はこれに加えてメールの内容が書き換えられていないかを判定するという違いがあります。
DKIMとDMARCとの関係
DMARC(Domain-based Message Authentication, Reporting and Conformance)は、SPF認証やDKIM認証の結果に基づいて、受信側がメールをどう扱うかのポリシーを定義するシステムです。こちらのシステムは、おもにSPF・DKIMどちらかの認証が失敗したときに活用されます。
DMARC認証では、SPF認証・DKIM認証に失敗したメールに対し「拒否する」「隔離する」などの動作をあらかじめ定義します。DMARC認証を設定することで、認証失敗後のメールの扱いを明確化できます。
PPAP対策やメールセキュリティ強化サービス
資料ダウンロードDKIMを活用するメリット
DKIMを導入することで、送信者が正当なドメインを利用していることを証明でき、メールの信頼性が大きく向上します。なりすましメールやフィッシング詐欺のリスクが低減するほか、スパム対策やスパム誤認の防止にもつながります。
特に、1日に膨大な量のメールを送受信する企業のビジネスメールでは、DKIMによるドメイン認証の設定が必要不可欠です。
PPAP対策やメールセキュリティ強化サービス
資料ダウンロードDKIMレコードの書き方
ここからは、DKIMレコードの正しい記述方法を解説します。DKIMレコードをDNSサーバに正常に登録するためには、レコードは正確に記述する必要があります。
なお、DKIMレコードは自身で作成するほかに、無料で自動生成してくれるサービスを利用するという方法もあります。
DKIMレコードとは?
DKIMレコードは、送信ドメイン認証に必要な公開鍵の情報をDNSサーバに登録するためのテキストレコードです。DKIM認証の公開鍵は、受信サーバがメールの署名を検証する際に使用され、認証の可否を左右する重要な要素となります。
DKIMレコードは、ホスト名・レコードタイプ・TTL・値の4つの要素で構成されています。それぞれ記述方法にルールがあるため、認証エラーを防止するためにも、正確に記述する必要があります。
ホスト名
ホスト名には、DKIM署名の「セレクター」とドメイン名を組み合わせた形式を用います。例えば「selector._domainkey.example.com」のように記述しましょう。
受信サーバは、このホストアドレスを元にDNSへ問い合わせて公開鍵を取得します。セレクターは自由に設定できますが、複数の送信システムを管理する場合は複数の鍵が必要になるため、識別しやすいセレクタを使用することをおすすめします。
レコードタイプ
DKIMレコードのレコードタイプは「TXT(テキストファイル形式)」を使用します。設定したDKIMレコードは、DNSサーバにTXT形式で格納されます。
TTL
TTL(Time To Live)は、設定したDKIMレコードがキャッシュに保存される期間を定める値です。期間は秒数で指定する形式になっており、一般的には3600秒(1時間)で設定されます。
レコードの値
DKIMレコードの値には、署名に使用する公開鍵に必要な詳細情報を記述します。値の記述には複数のタグを利用し、一般的には「v=DKIM1; k=rsa; p=〇〇」といった形式で長い文字列が並びます。
この値を正しくDNSサーバに登録することで、受信側が送信されたメールの署名を公開鍵で検証できます。不完全な記述や改行ミスがあると認証エラーにつながるため、設定時は何度か見直すことをおすすめします。
PPAP対策やメールセキュリティ強化サービス
資料ダウンロードDKIMレコードの設定方法
DKIMレコードは、ユーザが使用しているDNSの管理方法に応じて適切に設定する必要があります。ここからは、DNSの管理方法ごとの設定方法や設定したDKIMレコードの確認方法を紹介します。
DNSサーバを自社運用している場合
自社でDNSサーバを運用している場合は、DNSサーバにアクセスし、ゾーンファイルに直接DKIM用のTXTレコードを追加する必要があります。
DKIMレコードを追加したら、ゾーンファイルのシリアル番号を更新し、DNSサーバのリロード・再起動を行いましょう。DKIMレコードの反映には、設定完了から1時間程度かかります。
共用のDNSサービスを利用している場合
共用のDNSサーバサービスを利用している場合は、DNSサービスの管理画面やマイページから設定を行います。設定するドメインを指定し、生成したDKIMレコードを追加して保存しましょう。設定したDKIMレコードは、数分程度ですぐに反映されます。
設定したDKIMレコードの確認方法
DKIMレコードを新規で設定したら、検証ツールやテストメールの送信を行い、DKIM認証が正しく機能しているかどうかを確認しましょう。
自分のアドレス宛にテストメールを送信する場合、受信したメールヘッダーの「DKIM=pass」が表示されていれば認証が成功しています。また、外部のDKIMチェックツールを利用することで、DNS設定の反映状況や公開鍵の正当性を正確に検証できます。
PPAP対策やメールセキュリティ強化サービス
資料ダウンロードDKIMレコード記述のよくある失敗例
DKIMレコードの設定では、ホスト名の入力誤りや値の記述ミスが頻発します。特に改行やスペースの混入、セミコロンの抜け落ちなどが発生すると、認証エラーの原因になります。
また、DNSサーバ側の反映遅延やTXTレコードの長さがDNSサーバの制限を超える場合にも、認証の失敗が起こりえます。レコードを正しく記述することが第一ですが、設定後に正しく運用できているか確認することも大切です。
PPAP対策やメールセキュリティ強化サービス
資料ダウンロードメールツール上でDKIM署名を行う2種類の方法
DKIM署名は、メール送信時にツール上で行えます。署名方法は作成者署名と第三者署名の2つの方法があり、それぞれ署名の仕組みが異なります。
作成者署名
作成者署名とは、メールを送信するドメインの所有者が直接署名する方法です。多くのメール配信システムやSMTPサーバでは、この方法が標準形式として採用されています。
送信ドメインの管理者が秘密鍵を保有し、各メールに署名を付加することで、受信側はDNS上に登録された公開鍵と照合し、改ざんの有無を検証できます。署名の信頼性が高く、より強固な認証を行えるのが特徴です。
第三者署名
第三者署名は、送信ドメインとは別の外部サービス事業者などが、代理でDKIM署名を行う方式です。メール配信を委託している場合や、クラウド型メール配信サービスを利用している場合に用いられます。
この方法では、第三者が保有する秘密鍵で署名を付与し、その公開鍵を該当ドメインに登録する必要があります。一般的に、作成者署名よりも信頼性が低いとされています。
PPAP対策やメールセキュリティ強化サービス
資料ダウンロードまとめ
DKIMによるドメイン認証は、送信したメールの正当性を証明するためのシステムです。特に、現在は1日に5,000件以上のメールを送信するドメイン所有者に対してメール送信時のドメイン認証が義務付けられており、企業での対策が必要不可欠です。
サイバーソリューションズの「Cloud Mail SECURITYSUITEのサービス」は、メールに関するあらゆるセキュリティサービスを低コストで提供しています。社内メールのウイルス対策を検討している人は、ぜひ以下より資料をチェックしてください。