Amazon SES(Simple Email Service) が東京リージョンで利用できるようになりました。
Amazon SES での E メールのセットアップ を読みながら設定を行ったのでメモを共有。全部で 3 回くらいを予定しています。初回は、From メールアドレスに使うドメインの検証と、サンドボックスでもメールを送れるように送信先のメールアドレスの検証、サンドボックスの解除について解説をします。
目次
ドメインの検証を行う
Amazon SES でメールを送信するには、「From」アドレスを所有していることを証明する必要があります。証明する方法は Amazon SES の ID の検証 にあるように、証明したいメールアドレスでメールを受信するか、メールアドレスに使うドメインに確認用のレコードを設定することで証明することができます。今回は Amazon SES でのドメインの検証 で ID の検証を行います。
SES を開き、リージョンを確認する
AWS マネジメントコンソールから SES(Simple Email Service) を開きます。右上をみて、Asia Pacific (Tokyo) リージョンが選択されていることを確認しておきましょう。
Verify a New Domain
左メニューから「Domains」をクリックし、「Verify a New Domain」ボタンをクリックします。「Domain」にメール送信に使いたいドメインを入力し、「Generate DKIM Settings」にチェックをいれます。入力ができたら、「Verify This Domain」ボタンをクリックします。
DKIM とは、メールに暗号化キーで署名をすることができる規格です。メールプロバイダーはこの署名を使ってメールが改ざんされていないことを確認します。SES では簡単に設定ができるので設定をします。
DNS レコードの表示
画面が切り替わると、ドメインの所有者であることを証明するための DNS レコードが表示されます。ご自身が管理している DNS サーバに表示されたレコードを設定します。もし DNS に Route 53 を利用している場合は「Use Route 53」ボタンをクリックすると、次の画面で簡単にレコードを設定することができます。
Route 53 にレコードを自動登録
Route 53 へのレコード登録の確認画面が表示されます。SES でメールを送信するだけならデフォルトのままで大丈夫です。「Create Record Sets」ボタンをクリックします。
ドメイン所有者の検証
ステータスが「pending verification」となります。少し待ちます。Route 53 に登録されたレコードを確認していても良いでしょう。
1 分くらい待つと、ステータスが「verified」になりました。これでドメインの検証は完了です。
DNS レコードは残しておく
DNS レコードは DKIM の設定を維持するために必要なので残しておきます。レコードを削除すると数日後に DKIM が無効になります。
テストメールを送信する
ドメインのメニューの上に「Send a Test Email」というボタンがあります。ここからテストメールが送信できるので、さっそく検証されたドメインからメールを送ってみましょう。
サンドボックスの制限によるエラー
メール送信に必要な情報を入力して「Send Test Email」ボタンを押すと、以下の画像のようにエラーがでてきました。
Email address is not verified. The following identities failed the check in region AP-NORTHEAST-1: xxxx@gmail.com (Request ID: fa4366ec-5ceb-46f0-ac07-27c7bd5bf388)
というエラーが出ています。SES は最初はサンドボックス状態になっていて、送信ができるメールアドレスに制限がかかっています。サンドボックス状態でメールを送信するためには、次の章で解説する手順でメールアドレスを確認する必要があります。
サンドボックスとは砂場という意味ですが、IT 用語としては、他のシステムに影響を与えないように制限された環境のことを意味します。
メールアドレスの確認
Amazon SES での E メールのセットアップ を参考に、サンドボックス状態でもメールを送信することができるように、メールアドレスの確認を行います。
メールアドレス確認のリクエスト
左メニューから「Email Addresses」をクリックし、「Verify a New Email Address」ボタンをクリックします。「Email Address」に SES からメールを送りたいアドレスを入力し、「Verify This Email Address」ボタンをクリックします。
メールアドレスのステータスが「pending verification」になります。
本人確認
入力したメールアドレスに SES からメールが届きます。メールの中に本人確認のためのリンクがあるので、クリックをします。確認に成功すると、メールアドレスのスタータスが「verified」になります。
テストメールをメールを再送信
ここまでくればあと少しです。もう一度「Domains」のメニューで検証済みのドメインに移動し、「Send a Test Email」からメールを送信してみましょう。今度は成功して、メールが届くはずです。
Dkim-Signature
メールボックスに届いたメールのメールヘッダを確認すると「Dkim-Signature」のヘッダがあり、メールに署名がされていることが確認できます。
サンドボックスの解除は必要に応じて
初期状態では SES はサンドボックスの状態で、制限された環境になっています。具体的には、メールは先ほどエラーがでてきたように検証済みのメールアドレスにしか送信ができなかったり、24 時間あたりに送信できるメールの件数が 200 件と少なかったりします。
必要に応じてサンドボックスの状態の解除を申請することができます。詳しくは Amazon SES サンドボックス外への移動 を参照してください。私は、個人の用途ではサンドボックスの状態でも問題がなかったので、解除せずに利用をしています。
SMTP インターフェースを利用したメール送信
メールアドレスのセットアップが終わり、SES からメールが送信できるようになりました。次回は SMTP インターフェースを利用してメールの送信を行えるようにします。
-
Amazon SESのSMTPインターフェースでメール送信する
前回は Amazon SES で ID の検証を行い、E メールのセットアップを行いました。 今回は SES の SMT ...
続きを見る