CORESERVER (コアサーバー) V2 で DKIMを有効にして DMARC、ADSPも設定してみた

CORESERVER(コアサーバー)のV2 CORE-Xプランのメールアカウント設定画面にDKIMを有効にするボタンがあったので試してみた。V1にはない。
DKIM(DomainKeys Identified Mail)とはメール送信時にサーバでメールに電子署名をつけ、受信側でそれを検証する仕組みのこと。メールのなりすまし防止、迷惑メールではないことを示すことができます。特にビジネスで使う場合にはかなり重要

送信側サーバで対応していないと使えず、メールサーバ内に秘密鍵、DNSに公開鍵を登録する必要がある。DNSに設定しただけでは意味無し。

あわせて、DMARCとADSPの設定もしてみます。これはDNSだけで対応できる。DMARCとはSPF, DKIMでの検証失敗時にどのような挙動をするかのポリシー設定になります。

このDKIMについて公式説明はありませんし、機能一覧などで対応をうたっているわけではないので、いつまで使えるかは保証ありません。ご注意ください。

設定手順

1.DKIMを有効化する

メールアカウント設定の画面に有効化ボタンがあるので有効にする

コンパネDKIM設定
コントロールパネルのDKIM有効化ボタン

2.公開鍵をDNSに設定する

自動では行かないのでひとてま必要です。
DKIMのセレクターが “x” 固定のようなので、以下のようにしてTXTレコードの“x._domainkey”を指定して公開鍵を確認する。

dig txt x._domainkey.example.com.  @xxxx.coreserver.jp

ポイントは “@” で契約サーバを指定すること。すでにAやAAAAを指定済みであれば対象のドメイン名でも良い。またはサーバにログインして、@localhost でも良い。

正しく実行できれば、以下のような内容が得られるはずで、これと同じTXTレコードを自ドメインのDNSに設定すれば良い。

x._domainkey.example.com. 3600 IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtCOp+qd57/vOAlUGY7igWcV86TUsWsPEIlv6LcABJkT9OY89R6WTAesxrsuJeZo2RNYgiwfyMz3OG6X9mF80Kj+" "IoQJnL1EdN83gZU4twRG6Q5gP8H7otZU8KfDExrmpsRSuRzE/7/7pdKQRM0IUc1+1v442VHxHr+FG81h7TrEcvn8gi/J5qLqZMa8DeEoGQq4zKNR3jlQ8krTcNP63NjhqpcUuliBysTsaXeN2vtCXO" "gg+8eESJ4Na9pFq/NGaeQyn1Ej6pOhukVHw/+G/2lkP6pHWfWNZLEKi8IKl64cHUs/Rc3qYqwScxCFr0vx/Iu0b7DVQkqRzy5irJpYwTQIDAQAB"

【注意】
ダブルクオーテーションで囲まれ、3つのパートに別れているように見えますが、DNSの登録ルール(?)で長い文字列は適当に分割することになっているので、実際に登録するときにはダブルクオーテーションをぬいて、p=から後ろはスペースなしで最後まで続けた文字列になります。

そして長い文字列をDNSに登録できるかどうか、また、登録する方法はDNSの管理会社によって異なります。VALUE-DOMAINの場合には気にせずに長い文字列をそのまま1行で記載しますので、以下のようになります。管理画面によっては最初と最後のダブルクオーテーションは必要だったりといろいろなようだ。

txt x._domainkey v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtCOp+qd57/vOAlUGY7igWcV86TUsWsPEIlv6LcABJkT9OY89R6WTAesxrsuJeZo2RNYgiwfyMz3OG6X9mF80Kj+IoQJnL1EdN83gZU4twRG6Q5gP8H7otZU8KfDExrmpsRSuRzE/7/7pdKQRM0IUc1+1v442VHxHr+FG81h7TrEcvn8gi/J5qLqZMa8DeEoGQq4zKNR3jlQ8krTcNP63NjhqpcUuliBysTsaXeN2vtCXOgg+8eESJ4Na9pFq/NGaeQyn1Ej6pOhukVHw/+G/2lkP6pHWfWNZLEKi8IKl64cHUs/Rc3qYqwScxCFr0vx/Iu0b7DVQkqRzy5irJpYwTQIDAQAB

3.DMARC、ADSPをDNSに設定する

ついでにDMARCの設定をする。詳細は色々細かいので参考にGoogle Workspaceのヘルプのリンクを貼っておく。ADSPは各自調べて。

最小構成だと以下の感じになります。レポートが欲しい場合にはメールアドレス等を指定する。

TXT _dmarc v=DMARC1; p=none
TXT _adsp._domainkey dkim=unknown

確認

正しくDNSに反映されていれば以下で表示されるはず。

dig txt x._domainkey.example.com

問題なければ設定したドメインのメールアドレスを使って、契約サーバからメール送信して、受信側でメールヘッダーを確認する。以下のようにDKIM-Signatureがついていれば成功。Gmailで受信すると検証結果がわかりやすく表示される。

DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=ドメイン; s=x; h=Content-Transfer-Encoding:Content-Type:Message-ID:Subject:To:From:Date :MIME-Version:Sender:Reply-To:Cc:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Id:List-Help:List-Unsubscribe:List-Subscribe:List-Post: List-Owner:List-Archive; bh=XXXXXXXXXXXX; b=XXXXXXXXXX;

Gmailでの検証

GmailでToの横のプルダウンで確認
メッセージのソース確認
Gmailでメッセージのソースを確認から開いた画面での様子

mail-tester で確認

以下のサイトにアクセスして、ランダムに発行される指定されたメールアドレスにメールを送信すると検証結果を確認できる。本来はニュースレターの品質確認のサイト。

https://www.mail-tester.com/

Newsletters_spam_test
Newsletters spam testのトップ画面
Spam_Test_Result
検査結果画面

スコアは満点でしたが、改良の余地ありで色がついているところはニュースレターからの解除のヘッダー(List-Unsubscribe)がないよとの指摘でした。

最後に、DKIMの有効、無効を切り替えると鍵がかわるので注意してください。公開鍵の再設定が必要になります。

以上です。お疲れさまでした。

 

 

 

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください