AWS SESを構築しよう
AWSサービスである、SESを使用するとEメールを送信することができます。 マネージドなのでメンテナンスする必要もないし簡単に設定できるためオススメです。 今回はSES構築するに伴い実施することを記載していきます。
作業内容
SESを構築し各種メール設定を施すもの
・SES構築
・WebサーバのIAMロールにSESのポリシー付与
・DKIM設定
・SPFレコード作成
作業手順
以下、マネジメントコンソールにて操作する
1. ドメイン認証、DKIM設定
1-1. SESの画面から「Domain」を選択し、「Verify a New Domain」ボタンを押下する。
本番、開発各々に対して設定するため、以下をドメイン名として設定し、「Generate DKIM Settings」にチェックを入れた状態で、「Verify This Domain」ボタンを押下する。
- 本番ドメイン名:www.sample.jp
1-2.「View Details」画面から「Verification」エリアを開き、ドメイン用のDNSレコード(TXTレコード)を作成する
1-3.「View Details」画面から「DKIM」エリアを開き、ドメイン用のDNSレコード(CNAME)を作成する
1-4. 1-2,1-3で作成したレコードが登録されていることをRoute53の画面から確認する、SESのドメインの画面の「Verification」および「DKIM」のStatusが「verified」となることを確認する。
2. SPFの設定
登録するメールアドレスのドメインのDNSに開発・本番ともに下記のTXTレコードを登録する。
Route53の画面を開き、以下を登録
▼レコード名
開発レコード名:stg.sample.jp 本番レコード名:www.sample.jp
▼内容部分
"v=spf1 include:amazonses.com ~all"
3. EC2のIAMロール
対象のWebサーバに付与されているIAMロールに対して送信のみ許可する、以下ポリシーを作成してアタッチする。 ポリシー名:ses-policy
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*" } ] }
これで作業は終了ですが、SESは構築タイミングではサンドボックスにあるので解除申請が必要になります。 ということで番外編:SES制限解除申請!
< 番外編:SES制限解除申請手順 >
以下の内容をお客さんに確認します。
■確認したい項目 ・申請理由の説明 ・メールの種別 ・送信クォータ・・・24時間当たりに送信できるEメールの最大数 ・最大送信レート・・・Amazon SES が 1 秒あたりにアカウントから受け付けるEメールの最大数
そうするとこんな回答が来るかと思います。
■想定解答例 ・申請理由の説明 配信専用のメールとして利用。限定された関係者のアドレスへのみ送信し、関連のない不特定のアドレスへは配信しない。 ・メールの種別 システム情報の通知。添付ファイルなしの平文テキストでの送付。 ・送信クォータ 24時間あたり、300件程を最大数として想定している。 ・最大送信レート 1秒あたり、30件程を最大数として想定している。
必要情報が揃ったらサポートケースを開いてAWSに申請しましょう。
申請結果はメールが来るので見落とさないように気をつけること。不備があると落とされますので注意です。
以上