Edited at

AWSのSESのDNS設定を、ValueDomainにて行った記録


AWSのSESを、Value-DomainでDNS設定

AWS(Amazon Web Service)のSES(Simple Email Service)は非常にスケーラブルで便利なメール発信サービスですが、

Value-DomainにてDNS設定した際、設定に難航したので、同様の方に向けてメモを残します。

特にDKIMやSPF,MAIL FROM設定でハマったので、その記録です。

SES公式マニュアルがあるので、基本的な進行はこちらでの確認をお勧めします。

https://docs.aws.amazon.com/ja_jp/ses/latest/DeveloperGuide/Welcome.html


最初にサンドボックス外へ出られるようリクエスト

これは、Value-domainの話ではないのですが、

最初に「サンドボックス」から出られるよう申請する必要がありました。

以下の手順通りに進めば問題ないはずですが、私は読み飛ばしました(汗

https://docs.aws.amazon.com/ja_jp/ses/latest/DeveloperGuide/quick-start.html

サンドボックスから出ないと、任意のアドレスに送信できません。

しばし私ははまりましたので、念のため。

DNS設定の他、いろいろ手間がかかりましたが、そこは他にたくさん良記事があるので割愛します。


成功した記載法(DNS設定)

まずは、結果的に全てverifiedになったValue-DomainでのSES設定を記載します。

txt _amazonses.example.com hogefugafoobaa=

cname cname1txt._domainkey cname1txt.dkim.amazonses.com.
cname cname2txt._domainkey cname2txt.dkim.amazonses.com.
cname cname3txt._domainkey cname3txt.dkim.amazonses.com.
mx feedback-smtp.us-west-2.amazonses.com. 10 ses
txt ses v=spf1 include:amazonses.com ~all

この中で特に、私はcnameの設定と、mxレコードの設定ではまりました。

以下の部分はほぼそのままなのですんなりいけました。

txt _amazonses.example.com hogefugafoobaa=

これ以外の部分を以下、記載してゆきます。


Value-DomainにおけるSESのDKIM,cname設定

3つのcnameを設定する必要がありました。

(設定は、左ペインの「Domains>domain-name」の下の「DKIM」にあります)

cnameの記述方法は、

cname cname1txt._domainkey cname1txt.dkim.amazonses.com. ("cname1txt"は上記ページに記載されている値)

というものでした。

cnameの後に、_domainkeyまで書き、その後に自ドメイン名の記載は必要なしでした。

その次は、DKIMの設定欄に書かれている通りの「cname1txt.dkim.amazonses.com.」といったものを記載し、

最後に「.(ピリオド)」を打つのが必要でした。

これを、3つ分記載してverifiedに。


Value-DomainにおけるSESのmxレコード設定

mxレコード設定も私はverifiedが出るまで試行錯誤してしまいました。

最終的に以下のような形にして、verifiedとなりました。

mx feedback-smtp.us-west-2.amazonses.com. 10 ses 

mxの後に、「feedback-smtp.us-west-2.amazonses.com.」を、最後にピリオド付きで。

(リージョンによって、ここのアドレスは異なるはずです)

半角を開けて、優先順位の数字を記載し、

また半角を開けて、利用するサブドメイン名を記載(ここでは「ses」)。

これで通りました。

以下のページにヒントがありました。

http://perl.no-tubo.net/2011/01/31/dnsのmxレコードでハマる%E3%80%82valuedomain編/


SPF設定

SPFの設定は、以下のように記載しました。(これはほぼそのままでした)

txt ses v=spf1 include:amazonses.com ~all

(ただ、試しに送信したメールのヘッダーソースを見ると、

sender-id=softfail

とあり微妙ですが、まだ私は改善方法をわかっていません。)


最後に、Email AddressesでMAIL FROM Domainを設定

上記までの設定をDomainに対して行うと、私のSES管理画面では、すべてverifiedとなりました。

(verifiedにたどり着くまで、結構苦労しました)

そして最後に、SES管理画面左ペインのDomainsの下の、Email Addressesの画面に行き、

「MAIL FROM Domain」設定欄で、先にDomain設定にて設定したサブドメインを入力して、無事そこもverifiedとなりました。


終わりに

DNS設定は、これまで曖昧に記載していたところがあったので、

これを機会にいろいろ勉強し、理解が深まりました。

この記事もどなたかの参考になれば幸いです。