DKIM

メールサーバー | IT用語集

DKIMとは

DKIM(DomainKeys Identified Mail)は、公開鍵暗号方式を使用してメールにデジタル署名を付与し、送信元とメール内容の完全性を検証する技術です。メールが改ざんされていないことを保証します。

DKIMの仕組み

  1. 送信サーバーが秘密鍵でメールに署名
  2. 署名をメールヘッダーに追加
  3. 公開鍵をDNSに登録
  4. 受信サーバーがDNSから公開鍵を取得
  5. 公開鍵で署名を検証

DKIM署名の例

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
  d=example.com; s=default;
  h=from:to:subject:date;
  bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=;
  b=AuUoFEfDxTDkHlLXSZEpZj79LICEps6eda7W3deTVFOk4yAUoqOB...

DKIM署名の主要な要素

  • v=1: DKIMバージョン
  • a=rsa-sha256: 署名アルゴリズム
  • d=example.com: 署名ドメイン
  • s=default: セレクター(鍵の識別子)
  • b=...: デジタル署名

DKIM鍵の生成と設定

# DKIM鍵ペアの生成
opendkim-genkey -t -s default -d example.com

# 公開鍵をDNSに登録
default._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG..."

自社メールサーバー運用への応用

OpenDKIMの実装

自社メールサーバーでDKIMを実装する際は、OpenDKIMを使用します。Postfixとの統合も容易です。

# OpenDKIMの基本設定
Domain example.com
KeyFile /etc/opendkim/keys/default.private
Selector default
Socket inet:8891@localhost

DKIM運用のポイント

  • 鍵のローテーション: 定期的に鍵を更新(推奨:年1回)
  • 鍵長: 2048ビット以上を推奨
  • セレクター管理: 複数の鍵を管理する場合はセレクターを使い分け
  • 秘密鍵の保護: 適切なファイルパーミッション設定

SPF、DKIM、DMARCの連携

DKIMはSPFDMARCと組み合わせることで、最強のメール認証を実現します:

  • SPF: 送信元IPアドレスの認証
  • DKIM: デジタル署名による認証
  • DMARC: 両者の結果に基づくポリシー制御

関連ブログ記事

まとめ

DKIMは、メールの送信元と内容の完全性を保証する重要な認証技術です。自社メールサーバーでは、OpenDKIMを使用して実装し、SPF、DMARCと組み合わせることで、強固なメールセキュリティを実現できます。

この用語についてもっと詳しく

DKIMに関するご質問や、メールサーバー構築のご相談など、お気軽にお問い合わせください。