外部インターネット・ドメインに送信されるメッセージの DKIM 署名の構成

Domino では、ドメインキー識別メール (DKIM) を使用して、内部ユーザーから外部インターネットドメインに送信されたメッセージに署名できます。

外部 SMTP MTA は、DKIM 署名付きメッセージを受信すると、DKIM 署名を使用して、DKIM 署名以降、メッセージの特定のコンテンツとヘッダーが変更されていないことを確認します。DKIM 署名は、Domino ルーターが SMTP ホップでメッセージの前に付加する DKIM-Signature ヘッダーの形式になります。DKIM-Signature ヘッダーには、外部 MTA が署名データと DNS で取得した公開鍵を使用してメッセージの内容を検証するために使用できる情報が含まれています。DKIM 署名の詳細については、 RFC6376 を参照してください。

DKIM を使用してメッセージに署名するには、keymgmt コマンドを使用して作成した鍵ペアが使用されます。このコマンドは、インターネット・ドメインとセレクター項目を含む文書を資格情報ストアに作成します。これらの項目を使用すると、Domino ルーターは DKIM 署名の生成に使用する適切な秘密鍵を見つけることができます。

DKIM を使用してインターネットに配信されるメッセージに署名するには、SMTP を使用してインターネットにメールを転送する Domino 環境のエッジにある Domino サーバーに DKIM を設定します。

DKIM 署名の要件は次のとおりです。
  • Domino V12.0.1 SMTP サーバー (Linux 64 または Windows 64 上)
  • DKIM 署名を使用する各 Domino SMTP に DKIM 鍵を保存するための資格情報ストア。資格情報ストアをまだ使用していない場合の資格情報ストアの作成については、『資格情報ストアを使用して資格情報を保存する』を参照してください。
  • DKIM に対して有効にする内部インターネット・ドメインごとの DNS TXT レコード。この手順で説明するように、keymgmt コマンドを使用して、資格情報ストアの鍵を使用してこの DNS TXT レコードを作成します。DNS プロバイダーは、このレコードを DNS ドメイン設定に追加する手順を提供しています。
DKIM 署名を構成するステップは次のとおりです。
  1. 資格情報ストアに DKIM 署名鍵を作成します。
  2. 鍵を含む DNS TXT レコードを作成し、それを DNS ドメイン設定に追加します。
  3. サーバーで (notes.ini を使用して) DKIM 署名に使用する鍵を指定します。
  4. サーバーで (notes.ini を使用して) DKIM 署名を有効にします。

DKIM 署名鍵を作成する

DKIM 署名に使用する 1 つ以上の鍵ペアを資格情報ストアに作成します。資格情報ストア内の文書に DKIM 署名鍵ペアを作成するには、資格情報ストアを持つ Domino サーバーのコンソールから次のコマンドを実行します。
keymgmt create DKIM <domain> <selector> RSA [<keySize>]
各部の意味は以下のとおりです。
  • <domain> は、Domino インターネット・ドメインの名前です (例: renovations.com または sales.renovations.com)。
  • <selector> は、DKIM セレクターに選択した名前です。セレクターは DKIM-Signature ヘッダーで指定され、DKIM 鍵ペアの公開鍵部分が DNS 内のどこに存在するかを示します。
  • <keySize> は、DKIM 鍵に指定されたサイズです。サイズは 1024、2048、4096 にすることができます。
例:
keymgmt create DKIM renovations.com 12345 RSA 2048
次のようなコンソール・メッセージは、コマンドが成功したことを示します。
 > keymgmt create DKIM renovations.com 12345 RSA 2048 [4F24:0007-2F28] Created DKIM key 12345._domainkey.renovations.com
注: サーバーの notes.ini 設定でドメインとセレクターを指定すると、DKIM 鍵が有効になります。notes.ini 設定で許可される最大文字数は 255 文字で、ドメインとセレクターのサイズに実質的な制限があります。

.txt ファイルに DNS TXT レコードを作成する

資格情報ストアに DKIM 署名鍵を作成した後、次のコマンドを実行して、鍵を持つ DNS TXT レコードを含む .txt ファイルを Domino データ・ディレクトリーに作成します。
keymgmt export DKIM DNS <domain> <selector> <dkimdnsfile>
各部の意味は以下のとおりです。
  • <domain> は、鍵に指定した Domino インターネット・ドメインの名前です。
  • <selector> は、鍵に指定した DKIM セレクターです。
  • <dkimdnsfile> は、DNS TXT レコードを含む Domino データ・ディレクトリーに作成する .txt ファイルの名前です。
例:
keymgmt export DKIM DNS renovations.com 12345 dkimdns.txt

このコマンドは、 ファイル dkimdns.txt を作成し、12345._domainkey.renovations.com の DNS TXT レコードの内容を追加します。このファイルの情報を使用して、TXT レコードを DNS ドメイン設定に追加します。

DKIM 署名に使用する鍵を指定する

DKIM 署名に使用する鍵の DNS TXT レコードを DNS ドメイン設定に追加した後、Domino SMTP サーバーの notes.ini 設定 DKIM_KEY を使用して、ドメインを DKIM 署名に使用する鍵にマップします。次の表では、この設定のさまざまなオプションについて説明します。ルーターが実行中の場合は、ルーターを再起動して変更を有効にします。
設定例 説明
DKIM_KEY_<domain>=<selector> ユーザーが指定されたドメインまたはサブドメインからメッセージを送信する場合、サーバーは、指定されたセレクターに対応する鍵を使用してメッセージに署名します。 DKIM_KEY_renovations.com=09262021
DKIM_KEY_<subdomain>=<selector> ユーザーが指定されたサブドメインからメッセージを送信する場合、サーバーは、指定されたセレクターに対応する鍵を使用してメッセージに署名します。 DKIM_KEY_sales.renovations.com=sales4321
DKIM_KEY_<domain>=<selector>,<selector> ユーザーが指定されたドメインからメッセージを送信する場合、サーバーは、2 つのセレクターによって指定された両方の鍵でメッセージに署名します。
このシナリオは、以下の場合に役立ちます。
  • 新しい鍵が DNS に伝達する間、鍵のロールオーバーの移行中に新旧両方の鍵による署名を許可する。
  • 複数の署名アルゴリズムを使用する。
DKIM_KEY_renovations.com=09262021,10042021
DKIM_KEY_<aliasdomain>=<domain>;<selector> ユーザーが別名ドメイン (1 次ドメインではないドメイン) からメッセージを送信する場合、メッセージは 1 次ドメインのセレクターに対応する鍵を使用して署名されます。 DKIM_KEY_aliasrenovations.com=renovations.com;09262021

DKIM 署名を有効にする

DKIM_KEY 設定でドメインを鍵にマップするように構成した後、以下の追加設定を指定して DKIM 署名を有効にします。ルーターの実行中に DKIM 署名を有効または無効にでき、ルーターを再起動する必要はありません。
RouterDKIMSigning=<value>
ここで、<value> は以下のいずれかの値です。
  • 1 このオプションは、送信者ドメインに署名鍵が指定されている場合、メッセージに署名するために最善を尽くします。署名エラーが発生した場合、エラーはログに記録されますが、メッセージは署名なしで送信されます。
  • 2 このオプションは、DKIM 署名を強制します。送信者ドメインに署名鍵が指定され、署名エラーが発生した場合は、エラーがログに記録され、メッセージは送信されません。送信ユーザーは送信エラー・レポートを受信します。