OpenDKIM

簡単に言えば、メールの送信ドメインの正当性を認証する仕組みです。実は、メールクライアントの差出人表示は簡単になりすましが可能なことがメールの仕様になっています。

ならどうやって、メール送信ドメインの正当性を担保するのか?

 

そこでDKIMやSPFなどが効果的!

SPFやDKIMはメルマガなどメールで広いユーザに配信したいケースで設定することをおすすめします。有名なメールサービスを提供しているサーバは、スパム判定による制御が厳しいのが理由です。DKIMやSPFを設定することで、到着率を向上させることが出来ます。

 

また、SPFはDNSレコードを設定するだけのお手軽ですが、DKIM認証はサーバ側にミドルウェアを入れた上で、DNSレコードにも設定が必要なので少し手間がかかります。とっつき辛いDKIM認証をメインでこの記事では御紹介致します。

 

Sender Policy Framework(センダー・ポリシー・フレームワーク)
とは、電子メールにおける送信ドメイン認証のひとつ。
差出人のメールアドレスが他のドメイン名になりすまししていないか検出する技術である。
SPF もしくは SPF認証 とも呼ばれる。

@see Wikipedia

ドメインキー・アイデンティファイド・メール(DKIM: DomainKeys Identified Mail)とは、
電子メールの認証技術である。DKIMは、署名するMail transfer agent(MTA)から検証するMTAまで、ほぼエンド・ツー・エンドの完全性を提供する。
多くの場合、署名するMTAが発信者に代わりDKIM-Signatureヘッダを追加し、また検証するMTAがDNSを通じて発信者の公開鍵を検索する事で、受信者に代わり署名の正当性を立証する。

@see Wikipedia

 

 

では設定しちゃいましょう!

 

OpenDKIMの導入

 

OpenDKIMをインストールしようね

 

鍵を設置するディレクトリを作るよ

 

鍵を作成しようか

-dにはドメイン、-sはセレクタ名を入れるよ。
セレクタ名は日付とか、自分が分かりやすいものを設定しようね。

 

所有権の設定をしましょう

 

確認しよう!

大丈夫だね、opendkimになっているよ。

 

 

セレクターは20180529だから下記のようにしていけばいいよ。

 

 

 

受けつけるメールアドレスアカウントの設定

今回は『*』を使い、ワイルドカードで動的に対応できるように設定しました。

 

 

 

設定ファイルの複製でバックアップだ!

 

 

下記のように編集します。

 

 

受け付けるネットワークを設定しようね

自身でメール送信するから、今回は127.0.0.1を設定したよ。

 

 

鍵の自動生成を抑制するよ。

 

 

 

反映させよう。

 

 

Postfixの設定を変更しよう

 

反映させよう

 

 

DKIMの公開鍵を確認しよう

2行になっている鍵の行は、環境によってくっつけてね。

 

 

バリュードメイン設定

 

  • SPF
    txt @ v=spf1 a:yexample.net ~all
  • DKIM
    txt 20180529._domainkey p=MIIBgkqh(^ワ^略)q+3QAB; v=DKIM1; k=rsa;

 

 

サーバからGmailにテストメールを送信しよう

 

Gmailのアカウントにメールを送付して、受信メールのソースを確認して下さい。

 

  • dkim=pass
  • spf=pass

それぞれ、passとなっていればちゃんと設定がうまくいっているよ。

安心してね。

 

お疲れ様です。

 

金広 優 (エンジニア)
この記事を書いた人:金広 優 (エンジニア)

システムガーディアン爆弾処理班。アクセス負荷対策やNginxへの移行案件が多いこの頃。IBM Cloud、AWSなどを扱ったクラウド、オフィスや商業施設のネットワーク構築案件が多くなっています。