メールサーバーを立てることなくメールの送受信をする方法はないものだろうか。
AWSのサービスの一つであるSimple Email Service(SES)を使えばその要望をかなえることができます。
テスト用途などで少しの期間だけ使いたいという場合にも、使った分だけの請求となるSESは便利に使えます。
ただ、普通のメールサーバーと違って受信にちょっとしたコツがいるんですよね。
この記事を読めばSESを使ってメールを受信することができるようになります。
送信についてはこちらの記事をぜひご覧ください。
SESを使ったメールの受信について解説します。
前提条件
- AWSアカウントを持っていること
- サーバー運用に関する知識があること
- DNSレコードの設定ができること
- SESでドメインの認証を終えていること
注意点
SESでメールを受信する場合、いくつか注意点があります。
受信に対応しているSESのリージョンは限られている
現状(2021年7月11日時点)では下記の3リージョンのみが対応しています。
Region Name | Region | Receiving Endpoint |
---|---|---|
US East (N. Virginia) | us-east-1 | inbound-smtp.us-east-1.amazonaws.com |
US West (Oregon) | us-west-2 | inbound-smtp.us-west-2.amazonaws.com |
Europe (Ireland) | eu-west-1 | inbound-smtp.eu-west-1.amazonaws.com |
受信に対応していないリージョン(例えば東京リージョン)でSESのセットアップを行った場合でもMXレコードに設定すべきReceiving Endpointは上記3リージョンのものが表示されるようです。
そうすると送信用の設定は東京リージョンで行い、受信用の設定は上記3リージョンのいずれかで行うことになり二度手間になってしまいます。
送信だけではなく、受信も想定している場合は上記3リージョンでSESのセットアップを行うことをオススメします。
通常のメールクライアントでは受信できない
SESはPOPサーバーやIMAPサーバーとしての機能を提供していません。
そのためOutlookなどのメールクライアントを使って受信することができません。
当記事では受信メールをAmazon S3バケットに配信して、そこから取得することで内容の確認を行う手順を説明しています。
SESの設定手順
「カスタマーエンゲージメント」に分類されています。
このボタンが存在しない場合、この手順は無視してください。
尚、「Rule Sets」がグレーアウトしていてクリックできない場合は右上にあるリージョンが前述の受信に対応しているリージョンになっているか確認してください。
尚、何も入力しない場合は認証済みのドメイン宛のメールが全て受信されます。
尚、S3バケットについては既存のものを選択するか、新規に作成するかを選ぶことができます。
「Object key prefix」を入力するとS3バケットの中にその名前のディレクトリが作られてそこにメールが保存されます。
入力後「Next Step」をクリックします。
問題がなかったら「Create Rule」をクリックします。
受信したメールの確認手順
前述の通り、通常のメールクライアントでは受信できないのでAWSマネジメントコンソールからS3バケットにアクセスして確認します。
当該バケット内に受信したメールが入っています。
選択後「ダウンロード」をクリックします。
もしくは、Chromeを起動してファイルメニューから当該ファイルを開くと中身を確認することができます。
まとめ
受信した後のメールの扱いに若干クセはありますが、メールサーバーを立てることなくメールの受信ができるのは便利だと思います。
公式ドキュメントにもいろいろと情報が載っていますので参考にしてください。
コメント