code up

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Amazon SESで簡単DKIM

Amazon SESで簡単DKIM(Easy DKIM)のサポートが始まった。

これまでDKIMを行うには自前で署名を行う必要があった。ちょうど送信しているメールにDKIMの署名を加えようとPHPのライブラリを調べていた矢先の朗報だった。

明示されてはいないけど、追加のコストはかからないみたい。

その前に簡単にDKIMの紹介。

DKIMとは、迷惑メール対策の一環として、あるメールの送信者が正しいかどうかを確認する方法のひとつである。正しい送信者であることを確認する方法としては他にはSPFSender IDがある。

使用する技術要素としては、DKIMは電子署名、SPFやSender IDはIPアドレスを使って送信者を検証する。

Amazon SESではこれら3つの技術を開発者ガイドで紹介している。SPFやSender IDはDNSレコードを追加するだけで対応できていたのだが、DKIMについては送信者が自前で対応する必要があった。

現在はSPFに対応していれば迷惑メールに間違われることも少ないだろう。では、具体的にDKIMに対応しないとどうなるか?例えばGmailでは次のような表示が出てきてしまう。

amazonses.com 経由

頻繁にメールのやりとりをしていれば勝手に消えるらしいが、上記のリンク先にもある通り、

メールを送信するときに受信者に「経由」リンクが表示されないようにする

Gmail では、メールが正しく認証されているかどうかの確認を行います。一括メール送信ベンダーやサードパーティ アフィリエイトを使ってメールを送信する場合は、そのベンダーやアフィリエイトの IP を記述した SPF レコードを公開して、ドメインに関連付けられた DKIM1 署名を使ってメールに署名してください。

Gmailの場合はSPFに加えてDKIMにて署名を行わないと即時消えてはくれないようだ。ヘッダーを見ればSES経由だって分かるけどできればここには表示して欲しくない。

この度、簡単DKIMが登場することでこれが簡単にできるようになった。しかもDNSの設定だけで済むというエコ設計。

メールに書かれていた手順。

To use this feature:

  1. Go to the Amazon SES tab of your AWS Management Console , and click on Verified Senders .
  2. Select the verified email address or domain for which you wish to configure Easy DKIM, and in the bottom section of the Verified Senders pane, click the DKIM tab. Alternatively, you can start the process of verifying a new domain.
  3. Update your domain’s DNS settings with the CNAME record information that is displayed. Or, if you host your domain on Amazon Route 53, select the Use Route 53 button and select the domains and subdomains you wish to DKIM-sign.
  4. Confirm that your DKIM Verification Status is a success. Once Amazon SES detects your DNS records (which can take up to 72 hours), you will receive an email, and you can see the DKIM verification status in your AWS Management Console.
  5. Enable DKIM for your verified sender (email address or domain) on the DKIM tab for your desired sender in the AWS Management Console, and you can send DKIM-signed email through Amazon SES!

下は説明を見ながら行った手順。

  1. SESのVerified Sendersを表示
  2. 既存のメールアドレス、またはドメインを選択。または新しいメールアドレスやドメインを作成。DKIMのタブがある
  3. Generate DKIM Settingsのボタンを押すとCNAMEレコードが生成されるので控えてDNSの設定に加える
  4. Route 53を使っていたので、そのままUse Route 53ボタンを押すとレコードセットを追加してくれる
  5. DKIMタブのverificationがsuccessになるのを待つ。最大72時間かかるけど、完了したらメールが届く。待ちきれない場合はnslookupで調べてみよう。結果が返ってきたらあと一息だ
    > nslookup -type=cname xxx._domainkey.[ドメイン名]
    
    xxx._domainkey.[ドメイン]    canonical name = xxx.dkim.amazonses.com
    
  6. 今回は2時間ほどでメール"Amazon SES DKIM setup SUCCESS for [ドメイン名]"が届いた(別のドメインで試したら今度は20分くらいで届いた)。さっそく確認してみるとsuccessとなっていたのでenableのリンクを押す。DKIM: enabledとなって、これで完了

無事amazonses.com経由が消えて、ヘッダーにもDKIM-Signatureがついた。画面の操作だけでここまで出来て本当に簡単DKIMだった。

関連記事
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。