【AWS】Route53 に「お名前.com」取得の独自ドメインを登録して Amazon SES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

今回は「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録して Amazon SES(Simple Email Service)で SMTP プロトコルでメールを送信する手順を解説します。

最終的には Linux マシンよりコマンドラインでメールを送信できるように設定します。

 

過去には SES を利用してメールを受信する手順を解説しました。

 

【AWS】Route53に「お名前.com」取得の独自ドメインを登録してSES(Simple Email Service)で無料でメールを受信する手順

 

 

 

 

「お名前.com」で取得した独自ドメインを Route 53 に登録する

「お名前.com」で取得した独自ドメインを「Route 53」に登録します。

手順は、以前お名前.com で取得した独自ドメインを Amazon Route 53に登録する手順を解説した記事を作成したので、こちらを参考にしてドメインを登録します。

 

【AWS】お名前.com で取得した独自ドメインを Amazon Route 53 で名前解決して EC2 インスタンスの Web サーバーにアクセスさせる手順]

 

 

AWS 管理コンソールにログインし「サービス」より「ネットワーキング&コンテンツ配-「Route 53」をクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

「DNS management」「Get started now」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

左側ペインより「Hosted zones」をクリックし「Create Hosted Zone」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

「Created Hosted Zone」ボタンをクリックして下図のように「You have no hosted zones」のメッセージが表示されたら再度「Create Hosted Zone」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

Create Hosted Zone の画面が表示されたら以下のように設定します。

設定が完了したら「Create」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

 

登録が完了すると、下図のように AWS のネームサーバーが4つ表示されます。

この4つのネームサーバーを以下の手順で「お名前.com」に登録します。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

 

 

「お名前.com」のネームサーバーに登録する手順

「お名前.com」のドメイン Navi にログインします。

 

ログインしたら下図のように「ドメイン一覧」タブをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

下図のようにドメイン一覧が表示されるので、対象のドメインの「ネームサーバー」「変更する」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

 

下図のように「ご登録情報に変更・相違はありませんか?」の確認画面が表示されるので「登録情報は正しいので、手続きを進める」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

「他のネームサーバーを利用」タブをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

下図のように Route 53 で指定された 4つのネームサーバー情報を入力します。

入力したら「確認画面に進む」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

 

「設定する」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

下図のように「ネームサーバーの設定 完了」画面が表示されることを確認します。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

Amazon SES(Simple Email Service)での設定手順

ここから Amazon SES(Simple Email Service) の設定をします。

 

Amazon SES(Simple Email Service) とは

Amazon SES は、メール送信メール受信の両方が可能です。

 

過去に SES を利用してメールを受信する手順を解説しました。

今回は SES を利用してメールを送信する手順を解説しています。

 

【AWS】Route53に「お名前.com」取得の独自ドメインを登録してSES(Simple Email Service)で無料でメールを受信する手順

 

■料金

SES の料金ですがスパムメール並みにメール送信をしなければ低価格に抑えることができます。

 

 

■メール送信形式

SMTP エンドポイントを利用する場合です。

 

HTTP REST API を利用する場合です。

 

 

Amazon SES(Simple Email Service)での設定手順

AWS の管理コンソールにログインし「サービス」より「カスタマーエンゲージメント」-「Simple Email Service」をクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

2018年11月現在、東京リージョンでは「Amazon SES(Simple Email Service)」は提供していないので、今回は「米国東部(バージニア北部)」を選択します。

SES 利用可能リージョン(2018年11月現在)

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

SMTP 認証アカウントを作成します。

SES のホーム画面より左側ペインの「SMTP Settings」をクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

「Create My SMTP Credntials」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

IAM ユーザー名(下図はデフォルトのユーザー名です)を確認し「作成」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

「認証情報のダウンロード」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

認証情報が記載されている CSV ファイルをダウンロードすると以下のような形式で「SMTP ユーザー名」「SMTP パスワード」が記載されています。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

 

ドメイン認証をする

次に「ドメイン認証」をします。

認証には以下の2種類があります。

今回は新規ドメイン(xxxxxxxx.com)を Route 53 に登録している状態なので簡単に認証手続きができる「ドメイン認証」を行います。

ただし後ほど特定のメールアドレスにメール送信するため、メール認証をします。

 

SES(Simple Email Service)のホーム画面より左ペインの「Dmains」をクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

「Verify a New Domain」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

 

「Verify a New Domain」画面で以下の情報を入力します。

「Verify This Domain」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

DKIM(Domain Keys Identified Mail)とは

DKIM とは

①正当ドメイン保持者からメール送信されたことをチェックする

②改ざんされていないメールかどうかをチェックする

デジタル署名方式の送信元ドメイン認証技術のことを言います。

 

送信元と受信側で以下の役割を持っています。

 

 

 

以下のように「DKIM Record Set」が生成されることを確認します。

続けて、このドメインを「Route 53」に登録します。

「Use Route 53」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

設定直後は以下のように「pending」になっています。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

ドメイン認証の確認

24時間程度待ち、以下のようなステータスになっていることを確認します。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

受信メールアドレスの登録

AWS に利用申請しない場合はサンドボックス(Sandbox)環境でしか利用できません。

(つまり、AWS に登録したメールアドレスだけしかメールを受信できません)

後程 AWS に利用申請を出しますが、ここではサンドボックス用の受信メールアドレスを登録します。

ここで登録するのは送信メールアドレスではありません。

今回の場合は送信メールの認証ではなく「ドメイン認証」をしています。

 

SES のホーム画面より左側ペインの「Email Address」をクリックし「Verify a New Email Address」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

「Verify a New Email Address」画面で、受信するメールアドレスを入力します。

※受信するメールアドレスは GMAIL でもプロバイダメールでも問題ありません。

入力したら「Verify This Email Address」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

「Verification Email Sent」画面を確認し「Close」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

登録直後は下図のように「pending verification(resend)」の状態になっています。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

AWS より以下の確認用のメールが届いているか確認し、リンクをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

リンクをクリックすると以下のメッセージが出力されます。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

メール確認用の URL をクリック後に再度メールのステータスを確認し「verified」に変わっていることを確認します。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

mailx コマンドでのメール送信手順

SES 側の設定が完了したので、最後に mailx コマンドでメール送信確認をします。

mailx コマンドがインストールされた Linux サーバにログインします。

[root@ip-172-31-38-38 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.5 (Maipo) ← RedHat Linux の 7.5 です。
[root@ip-172-31-38-38 ~]# rpm -qa | grep mail
mailx-12.5-19.el7.x86_64 ← mailx コマンドがインストールされています。
[root@ip-172-31-38-38 ~]#

 

もし mailx コマンドがインストールされていない場合は以下のコマンドで mailx コマンドをインストールします。

[root@ip-172-31-38-38 ~]# yum install mailx

 

 

以下のように mail(mailx)コマンドを実行するアカウントのホームディレクトリに「.mailrc」ファイルを作成します。

[root@ip-172-31-38-38 ~]# pwd 
/root 
[root@ip-172-31-38-38 ~]# ls -la 
total 44 

 

~ 省略 ~

-rw-r--r--.  1 root root  288 Nov  7 14:23 .mailrc 

 

~ 省略 ~

 
[root@ip-172-31-38-38 ~]# cat .mailrc 
set smtp-use-starttls 
set smtp=smtp://email-smtp.us-east-1.amazonaws.com:587 
set smtp-auth=login 
set smtp-auth-user=AXXXXXXXXXXXXXXXXXA 
set smtp-auth-password=AXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXu 
set ssl-verify=ignore 
set nss-config-dir=/etc/pki/nssdb/ 
set from=test@xxxxxxx.com ← 登録したドメインでのメールアドレス(test@xxxxxxx.com) 
[root@ip-172-31-38-38 ~]#

 

 

 

 

以下のように mailx コマンドを実行します。

[root@ip-172-31-38-38 ~]# echo "メール本文です。最後にピリオドを追加します。." | mail -v -s "タイトルを入力します。" xxxx@gmail.com
Resolving host email-smtp.us-east-1.amazonaws.com . . . done.
Connecting to 23.21.231.227:587 . . . connected.
220 email-smtp.amazonaws.com ESMTP SimpleEmailService-3891618935 S3F8HvgcRYLx5FmFBH7y
>>> EHLO ip-172-31-38-38.ap-northeast-1.compute.internal
250-email-smtp.amazonaws.com
250-8BITMIME
250-SIZE 10485760
250-STARTTLS
250-AUTH PLAIN LOGIN
250 Ok
>>> STARTTLS
220 Ready to start TLS
Error in certificate: Peer's certificate issuer is not recognized.
Comparing DNS name: "email-smtp.us-east-1.amazonaws.com"
SSL parameters: cipher=AES-256-GCM, keysize=256, secretkeysize=256,
issuer=CN=Amazon,OU=Server CA 1B,O=Amazon,C=US
subject=CN=email-smtp.us-east-1.amazonaws.com
>>> EHLO ip-172-31-38-38.ap-northeast-1.compute.internal
250-email-smtp.amazonaws.com
250-8BITMIME
250-SIZE 10485760
250-STARTTLS
250-AUTH PLAIN LOGIN
250 Ok
>>> AUTH LOGIN
334 VXNlcm5hbWU6
>>> QUtJQUlJUkc1MzRRQUVPSDRLQUE=
334 UGFzc3dvcmQ6
>>> QWdpOXBla1Z2N3FqTlJvcC9Dem9lU1NLMTlBNUY2dHlFbi9EQUU5dVhKU3U=
235 Authentication successful.
>>> MAIL FROM:<test@xxxxxxx.com>
250 Ok
>>> RCPT TO:<xxxxxxxx@gmail.com>
250 Ok
>>> DATA
354 End data with <CR><LF>.<CR><LF>
>>> .
250 Ok 01000166fbfee631-a5108f5f-b03e-401b-bc8c-44fe38be278d-000000
>>> QUIT
221 Bye
[root@ip-172-31-38-38 ~]#

 

 

 

メールが送信されていることを確認します。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

 

 

Amazon SES のメール送信数制限を解除して本運用する場合の手順

今までサンドボックス(Sandbox)環境での設定について説明ましたが、メール送信について制限がありました。

以下より Amazon SES のメール送信数制限を解除して本運用する手順を解説します。

 

サンドボックス環境では以下のようにメール送信に関して制限されています。

※社内のチーム環境やグループ内ならこれでも十分なレベルです

メールの送信解除を依頼する場合は SES のホームページより左側ペインの「Sending Statistics」をクリックし「Request a Sending Limit Increase」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

以下のように「ケースの作成」画面が表示されるので解除してほしい制限と具体的な制限値を入力します。

また「申請理由の説明」に理由を記述します。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

 

 

設定が完了したら一番下の「送信」ボタンをクリックします。

【AWS】「お名前.com」で取得した独自ドメインを Amazon Route 53 に登録してSES(Simple Email Service)で SMTP プロトコルでメールを送信する手順

 

リクエストを送信したら AWS サポートからの回答を待ちます。

 

 

 

Posted by 100%レンタルサーバーを使いこなすサイト管理人